scrabble-solver 2.18.1 → 2.18.2

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 (342) hide show
  1. package/.nx/workspace-data/d/server-process.json +2 -2
  2. package/.nx/workspace-data/file-map.json +1717 -1473
  3. package/.nx/workspace-data/lockfile-dependencies.hash +1 -1
  4. package/.nx/workspace-data/lockfile-nodes.hash +1 -1
  5. package/.nx/workspace-data/nx_files.nxt +0 -0
  6. package/.nx/workspace-data/parsed-lock-file.dependencies.json +184 -209
  7. package/.nx/workspace-data/parsed-lock-file.nodes.json +374 -419
  8. package/.nx/workspace-data/project-graph.json +608 -652
  9. package/.nx/workspace-data/source-maps.json +64 -0
  10. package/CLAUDE.md +12 -10
  11. package/README.md +2 -2
  12. package/bun.lock +115 -130
  13. package/e2e/bugs/398-digraphs-in-created-words.spec.ts +2 -2
  14. package/e2e/bugs/445-tile-text-selection.spec.ts +38 -0
  15. package/e2e/bugs/451-results-list-gap-hover.spec.ts +35 -0
  16. package/e2e/bugs/452-stale-translations-cache.spec.ts +32 -0
  17. package/e2e/features/427-highlight-created-words.spec.ts +86 -0
  18. package/e2e/features/430-highlight-unreachable-cells-results.spec.ts +75 -0
  19. package/e2e/features/91-hover-remaining-tile-highlights.spec.ts +22 -0
  20. package/e2e/features/result-candidate-picker.spec.ts +21 -0
  21. package/e2e/features/results-interactions.spec.ts +170 -0
  22. package/e2e/features/words-dictionary-search.spec.ts +36 -0
  23. package/e2e/features/words-empty-state.spec.ts +42 -0
  24. package/e2e/features/words-interactions.spec.ts +179 -0
  25. package/e2e/features/words-preview.spec.ts +140 -0
  26. package/e2e/features/words-table-filtering.spec.ts +22 -0
  27. package/e2e/features/words-table-sorting.spec.ts +33 -0
  28. package/e2e/lib/actions.ts +76 -6
  29. package/e2e/lib/selectors.ts +40 -3
  30. package/lerna.json +1 -1
  31. package/package.json +8 -9
  32. package/packages/configs/package.json +3 -3
  33. package/packages/constants/package.json +1 -1
  34. package/packages/dictionaries/package.json +4 -4
  35. package/packages/logger/package.json +1 -1
  36. package/packages/scrabble-solver/.next/BUILD_ID +1 -1
  37. package/packages/scrabble-solver/.next/build-manifest.json +14 -14
  38. package/packages/scrabble-solver/.next/cache/.previewinfo +1 -1
  39. package/packages/scrabble-solver/.next/cache/.rscinfo +1 -1
  40. package/packages/scrabble-solver/.next/cache/.tsbuildinfo +1 -1
  41. package/packages/scrabble-solver/.next/cache/webpack/client-production/0.pack +0 -0
  42. package/packages/scrabble-solver/.next/cache/webpack/client-production/index.pack +0 -0
  43. package/packages/scrabble-solver/.next/cache/webpack/client-production/index.pack.old +0 -0
  44. package/packages/scrabble-solver/.next/cache/webpack/edge-server-production/index.pack +0 -0
  45. package/packages/scrabble-solver/.next/cache/webpack/edge-server-production/index.pack.old +0 -0
  46. package/packages/scrabble-solver/.next/cache/webpack/server-production/0.pack +0 -0
  47. package/packages/scrabble-solver/.next/cache/webpack/server-production/index.pack +0 -0
  48. package/packages/scrabble-solver/.next/cache/webpack/server-production/index.pack.old +0 -0
  49. package/packages/scrabble-solver/.next/diagnostics/framework.json +1 -1
  50. package/packages/scrabble-solver/.next/dynamic-css-manifest.json +2 -2
  51. package/packages/scrabble-solver/.next/prerender-manifest.json +4 -4
  52. package/packages/scrabble-solver/.next/react-loadable-manifest.json +37 -37
  53. package/packages/scrabble-solver/.next/routes-manifest.json +1 -1
  54. package/packages/scrabble-solver/.next/server/chunks/309.js +1 -1
  55. package/packages/scrabble-solver/.next/server/chunks/344.js +1 -1
  56. package/packages/scrabble-solver/.next/server/chunks/371.js +1 -1
  57. package/packages/scrabble-solver/.next/server/chunks/392.js +1 -1
  58. package/packages/scrabble-solver/.next/server/chunks/465.js +1 -1
  59. package/packages/scrabble-solver/.next/server/chunks/546.js +1 -1
  60. package/packages/scrabble-solver/.next/server/chunks/641.js +1 -1
  61. package/packages/scrabble-solver/.next/server/chunks/67.js +1 -0
  62. package/packages/scrabble-solver/.next/server/chunks/712.js +1 -1
  63. package/packages/scrabble-solver/.next/server/chunks/846.js +1 -1
  64. package/packages/scrabble-solver/.next/server/chunks/886.js +1 -1
  65. package/packages/scrabble-solver/.next/server/chunks/942.js +1 -0
  66. package/packages/scrabble-solver/.next/server/chunks/953.js +1 -1
  67. package/packages/scrabble-solver/.next/server/chunks/961.js +1 -1
  68. package/packages/scrabble-solver/.next/server/dynamic-css-manifest.js +1 -1
  69. package/packages/scrabble-solver/.next/server/middleware-build-manifest.js +1 -1
  70. package/packages/scrabble-solver/.next/server/middleware-react-loadable-manifest.js +1 -1
  71. package/packages/scrabble-solver/.next/server/pages/404.html +2 -2
  72. package/packages/scrabble-solver/.next/server/pages/500.html +2 -2
  73. package/packages/scrabble-solver/.next/server/pages/_app.js +1 -1
  74. package/packages/scrabble-solver/.next/server/pages/_app.js.nft.json +1 -1
  75. package/packages/scrabble-solver/.next/server/pages/_document.js +2 -2
  76. package/packages/scrabble-solver/.next/server/pages/_document.js.nft.json +1 -1
  77. package/packages/scrabble-solver/.next/server/pages/_error.js +1 -1
  78. package/packages/scrabble-solver/.next/server/pages/_error.js.nft.json +1 -1
  79. package/packages/scrabble-solver/.next/server/pages/api/dictionary/[locale]/[word].js +1 -1
  80. package/packages/scrabble-solver/.next/server/pages/api/dictionary/[locale]/[word].js.nft.json +1 -1
  81. package/packages/scrabble-solver/.next/server/pages/api/dictionary/[locale].js +1 -1
  82. package/packages/scrabble-solver/.next/server/pages/api/dictionary/[locale].js.nft.json +1 -1
  83. package/packages/scrabble-solver/.next/server/pages/api/solve.js +1 -1
  84. package/packages/scrabble-solver/.next/server/pages/api/solve.js.nft.json +1 -1
  85. package/packages/scrabble-solver/.next/server/pages/api/verify.js +1 -1
  86. package/packages/scrabble-solver/.next/server/pages/api/verify.js.nft.json +1 -1
  87. package/packages/scrabble-solver/.next/server/pages/index.html +2 -2
  88. package/packages/scrabble-solver/.next/server/pages/index.js +4 -4
  89. package/packages/scrabble-solver/.next/server/pages/index.js.nft.json +1 -1
  90. package/packages/scrabble-solver/.next/server/pages/index.json +1 -1
  91. package/packages/scrabble-solver/.next/server/pages/not-found.html +2 -2
  92. package/packages/scrabble-solver/.next/server/pages/not-found.js.nft.json +1 -1
  93. package/packages/scrabble-solver/.next/server/pages-manifest.json +1 -1
  94. package/packages/scrabble-solver/.next/static/chunks/100.305bdf9c75b1758f.js +1 -0
  95. package/packages/scrabble-solver/.next/static/chunks/256.66ff9fb6d7db9ec7.js +1 -0
  96. package/packages/scrabble-solver/.next/static/chunks/{307.67f52f13e3d60d4e.js → 307.89e6100f58443679.js} +1 -1
  97. package/packages/scrabble-solver/.next/static/chunks/{363.01eed3233f92b6a4.js → 363.cec65b1f9668a75e.js} +1 -1
  98. package/packages/scrabble-solver/.next/static/chunks/{422.1559ae6756912ca5.js → 422.3e55b4c94e328701.js} +1 -1
  99. package/packages/scrabble-solver/.next/static/chunks/{663.d2c9ca36b26695b8.js → 663.bd2c45413fbca518.js} +1 -1
  100. package/packages/scrabble-solver/.next/static/chunks/693.677c88e0eb1340b5.js +1 -0
  101. package/packages/scrabble-solver/.next/static/chunks/{820.97b82f751ca49579.js → 820.823e9e885ebb66af.js} +1 -1
  102. package/packages/scrabble-solver/.next/static/chunks/827.c81b92b383a748c9.js +1 -0
  103. package/packages/scrabble-solver/.next/static/chunks/{865.a9b563a45848a83c.js → 865.59baba8296c9b116.js} +1 -1
  104. package/packages/scrabble-solver/.next/static/chunks/912.077603e4f0bc6cca.js +1 -0
  105. package/packages/scrabble-solver/.next/static/chunks/{939.19b33a3d3c351d73.js → 939.2ad86b50405c7897.js} +1 -1
  106. package/packages/scrabble-solver/.next/static/chunks/980.7ce17464fc56648a.js +1 -0
  107. package/packages/scrabble-solver/.next/static/chunks/{main-b92e08f3fc96dd8d.js → main-7e52da35a4beea0b.js} +1 -1
  108. package/packages/scrabble-solver/.next/static/chunks/pages/_app-f9ec81278ffa7b1a.js +1 -0
  109. package/packages/scrabble-solver/.next/static/chunks/pages/index-b5bf018100015277.js +1 -0
  110. package/packages/scrabble-solver/.next/static/chunks/webpack-9f5c9d275348829b.js +1 -0
  111. package/packages/scrabble-solver/.next/static/css/65bcc9440e067113.css +1 -0
  112. package/packages/scrabble-solver/.next/static/css/{4dbcacc1122ac6b9.css → 92f85ce358a0a468.css} +1 -1
  113. package/packages/scrabble-solver/.next/static/css/a691348b788f8bc0.css +1 -0
  114. package/packages/scrabble-solver/.next/static/css/cd4d7f2458487399.css +1 -0
  115. package/packages/scrabble-solver/.next/static/{5KOWzYqfY1Z2rjrzptr8D → nvGZh1gPuX98L07YmxlYD}/_buildManifest.js +1 -1
  116. package/packages/scrabble-solver/.next/trace +21 -21
  117. package/packages/scrabble-solver/.next/trace-build +1 -1
  118. package/packages/scrabble-solver/AGENTS.md +9 -0
  119. package/packages/scrabble-solver/CLAUDE.md +1 -0
  120. package/packages/scrabble-solver/package.json +13 -11
  121. package/packages/scrabble-solver/public/service-worker.js +1 -1
  122. package/packages/scrabble-solver/src/components/Board/Board.tsx +3 -1
  123. package/packages/scrabble-solver/src/components/Board/BoardPure.tsx +26 -20
  124. package/packages/scrabble-solver/src/components/Board/components/Cell/Cell.tsx +4 -4
  125. package/packages/scrabble-solver/src/components/Board/lib.test.ts +106 -0
  126. package/packages/scrabble-solver/src/components/Board/lib.ts +34 -3
  127. package/packages/scrabble-solver/src/components/Board/selectors.ts +17 -5
  128. package/packages/scrabble-solver/src/components/Button/Button.module.scss +1 -1
  129. package/packages/scrabble-solver/src/components/Modal/Modal.module.scss +0 -4
  130. package/packages/scrabble-solver/src/components/Results/Header.tsx +30 -5
  131. package/packages/scrabble-solver/src/components/Results/Result.tsx +45 -55
  132. package/packages/scrabble-solver/src/components/Results/Results.module.scss +0 -126
  133. package/packages/scrabble-solver/src/components/Results/Results.module.scss.d.ts +0 -10
  134. package/packages/scrabble-solver/src/components/Results/Results.tsx +25 -5
  135. package/packages/scrabble-solver/src/components/Solver/Solver.module.scss +4 -4
  136. package/packages/scrabble-solver/src/components/Solver/Solver.tsx +5 -3
  137. package/packages/scrabble-solver/src/components/Solver/components/ResultCandidatePicker/ResultCandidatePicker.module.scss +5 -1
  138. package/packages/scrabble-solver/src/components/Solver/components/ResultCandidatePicker/ResultCandidatePicker.module.scss.d.ts +1 -0
  139. package/packages/scrabble-solver/src/components/Solver/components/ResultCandidatePicker/ResultCandidatePicker.tsx +5 -2
  140. package/packages/scrabble-solver/src/components/Table/Cell.tsx +42 -0
  141. package/packages/scrabble-solver/src/components/Table/Header.tsx +11 -0
  142. package/packages/scrabble-solver/src/components/{Results → Table}/HeaderButton.tsx +22 -14
  143. package/packages/scrabble-solver/src/components/Table/Row.tsx +59 -0
  144. package/packages/scrabble-solver/src/components/{ResultsInput/ResultsInput.tsx → Table/Search.tsx} +9 -11
  145. package/packages/scrabble-solver/src/components/Table/Table.module.scss +147 -0
  146. package/packages/scrabble-solver/src/components/Table/Table.module.scss.d.ts +19 -0
  147. package/packages/scrabble-solver/src/components/Table/index.ts +5 -0
  148. package/packages/scrabble-solver/src/components/Tile/Tile.module.scss +2 -1
  149. package/packages/scrabble-solver/src/hooks/useColumns.ts +7 -5
  150. package/packages/scrabble-solver/src/hooks/useIsCompactLayout.ts +14 -0
  151. package/packages/scrabble-solver/src/i18n/languages/english.json +6 -1
  152. package/packages/scrabble-solver/src/i18n/languages/french.json +6 -1
  153. package/packages/scrabble-solver/src/i18n/languages/german.json +6 -1
  154. package/packages/scrabble-solver/src/i18n/languages/persian.json +6 -1
  155. package/packages/scrabble-solver/src/i18n/languages/polish.json +6 -1
  156. package/packages/scrabble-solver/src/i18n/languages/romanian.json +6 -1
  157. package/packages/scrabble-solver/src/i18n/languages/spanish.json +6 -1
  158. package/packages/scrabble-solver/src/i18n/languages/turkish.json +6 -1
  159. package/packages/scrabble-solver/src/icons/QuestionSquare.svg +5 -0
  160. package/packages/scrabble-solver/src/lib/createCoordinatesComparator.ts +23 -0
  161. package/packages/scrabble-solver/src/lib/createKeyComparator.ts +1 -4
  162. package/packages/scrabble-solver/src/lib/createSortComparator.ts +22 -0
  163. package/packages/scrabble-solver/src/lib/getCoordinates.test.ts +21 -0
  164. package/packages/scrabble-solver/src/lib/getCoordinates.ts +16 -0
  165. package/packages/scrabble-solver/src/lib/getNextSort.ts +12 -0
  166. package/packages/scrabble-solver/src/modals/RemainingTilesModal/RemainingTilesModal.tsx +3 -1
  167. package/packages/scrabble-solver/src/modals/RemainingTilesModal/components/Character/Character.tsx +8 -9
  168. package/packages/scrabble-solver/src/modals/ResultsModal/ResultsModal.tsx +14 -10
  169. package/packages/scrabble-solver/src/modals/WordsModal/WordsModal.module.scss +16 -27
  170. package/packages/scrabble-solver/src/modals/WordsModal/WordsModal.module.scss.d.ts +3 -6
  171. package/packages/scrabble-solver/src/modals/WordsModal/WordsModal.tsx +56 -42
  172. package/packages/scrabble-solver/src/modals/WordsModal/components/WordsTable/WordRow.tsx +92 -0
  173. package/packages/scrabble-solver/src/modals/WordsModal/components/WordsTable/WordsTable.module.scss +69 -0
  174. package/packages/scrabble-solver/src/modals/WordsModal/components/WordsTable/WordsTable.module.scss.d.ts +16 -0
  175. package/packages/scrabble-solver/src/modals/WordsModal/components/WordsTable/WordsTable.tsx +137 -0
  176. package/packages/scrabble-solver/src/modals/WordsModal/components/WordsTable/index.ts +1 -0
  177. package/packages/scrabble-solver/src/modals/WordsModal/components/index.ts +1 -0
  178. package/packages/scrabble-solver/src/pages/api/verify.ts +7 -6
  179. package/packages/scrabble-solver/src/pages/index.tsx +28 -3
  180. package/packages/scrabble-solver/src/parameters/index.ts +2 -0
  181. package/packages/scrabble-solver/src/sdk/verify.ts +3 -2
  182. package/packages/scrabble-solver/src/solver-worker/client.test.ts +10 -3
  183. package/packages/scrabble-solver/src/solver-worker/index.worker.ts +7 -7
  184. package/packages/scrabble-solver/src/solver-worker/messages.ts +3 -3
  185. package/packages/scrabble-solver/src/state/hoveredWord/index.ts +4 -0
  186. package/packages/scrabble-solver/src/state/hoveredWord/initialState.ts +5 -0
  187. package/packages/scrabble-solver/src/state/hoveredWord/selectors.ts +5 -0
  188. package/packages/scrabble-solver/src/state/hoveredWord/slice.ts +18 -0
  189. package/packages/scrabble-solver/src/state/hoveredWord/types.ts +5 -0
  190. package/packages/scrabble-solver/src/state/index.ts +1 -0
  191. package/packages/scrabble-solver/src/state/localStorage.ts +13 -2
  192. package/packages/scrabble-solver/src/state/results/lib.ts +9 -26
  193. package/packages/scrabble-solver/src/state/results/selectors.ts +9 -1
  194. package/packages/scrabble-solver/src/state/results/slice.ts +4 -16
  195. package/packages/scrabble-solver/src/state/sagas.ts +26 -1
  196. package/packages/scrabble-solver/src/state/selectors.ts +18 -1
  197. package/packages/scrabble-solver/src/state/store.ts +2 -0
  198. package/packages/scrabble-solver/src/state/types.ts +2 -0
  199. package/packages/scrabble-solver/src/state/verify/initialState.ts +7 -0
  200. package/packages/scrabble-solver/src/state/verify/lib.test.ts +55 -0
  201. package/packages/scrabble-solver/src/state/verify/lib.ts +49 -0
  202. package/packages/scrabble-solver/src/state/verify/selectors.ts +37 -0
  203. package/packages/scrabble-solver/src/state/verify/slice.ts +13 -2
  204. package/packages/scrabble-solver/src/state/verify/types.ts +6 -2
  205. package/packages/scrabble-solver/src/styles/_tokens.scss +2 -0
  206. package/packages/scrabble-solver/src/styles/mixins.scss +5 -0
  207. package/packages/scrabble-solver/src/styles/variables.module.scss +1 -0
  208. package/packages/scrabble-solver/src/styles/variables.module.scss.d.ts +1 -0
  209. package/packages/scrabble-solver/src/styles/variables.scss +1 -1
  210. package/packages/scrabble-solver/src/types/index.ts +24 -11
  211. package/packages/scrabble-solver/tsconfig.tsbuildinfo +1 -1
  212. package/packages/solver/package.json +5 -5
  213. package/packages/types/build/Bingo.d.ts +0 -3
  214. package/packages/types/build/Bingo.js +0 -14
  215. package/packages/types/build/Board.d.ts +3 -1
  216. package/packages/types/build/Board.js +5 -40
  217. package/packages/types/build/BoardJson.d.ts +0 -1
  218. package/packages/types/build/BoardJson.js +0 -19
  219. package/packages/types/build/BoardWord.d.ts +7 -0
  220. package/packages/types/build/BoardWord.js +2 -0
  221. package/packages/types/build/CellJson.d.ts +0 -1
  222. package/packages/types/build/CellJson.js +0 -11
  223. package/packages/types/build/Game.d.ts +0 -1
  224. package/packages/types/build/Game.js +1 -4
  225. package/packages/types/build/Locale.d.ts +0 -1
  226. package/packages/types/build/Locale.js +1 -4
  227. package/packages/types/build/Result.js +3 -3
  228. package/packages/types/build/TileJson.d.ts +0 -1
  229. package/packages/types/build/TileJson.js +0 -6
  230. package/packages/types/build/index.d.ts +9 -8
  231. package/packages/types/build/index.js +14 -17
  232. package/packages/types/build/lib/getBoardWords.d.ts +3 -0
  233. package/packages/types/build/lib/getBoardWords.js +10 -0
  234. package/packages/types/build/lib/getCells.d.ts +4 -0
  235. package/packages/types/build/lib/getCells.js +27 -0
  236. package/packages/types/build/lib/getCollidingWords.d.ts +3 -0
  237. package/packages/types/build/lib/getCollidingWords.js +19 -0
  238. package/packages/types/build/lib/getCollision.d.ts +3 -0
  239. package/packages/types/build/lib/getCollision.js +31 -0
  240. package/packages/types/build/lib/getCollisions.d.ts +3 -0
  241. package/packages/types/build/lib/getCollisions.js +17 -0
  242. package/packages/types/build/lib/getPlacedCell.d.ts +3 -0
  243. package/packages/types/build/lib/getPlacedCell.js +10 -0
  244. package/packages/types/build/lib/getWordThrough.d.ts +4 -0
  245. package/packages/types/build/lib/getWordThrough.js +23 -0
  246. package/packages/types/build/lib/getWordsInRows.d.ts +8 -0
  247. package/packages/types/build/lib/getWordsInRows.js +29 -0
  248. package/packages/types/build/lib/index.d.ts +5 -0
  249. package/packages/types/build/lib/index.js +21 -0
  250. package/packages/types/build/lib/isSameBoardWord.d.ts +2 -0
  251. package/packages/types/build/lib/isSameBoardWord.js +6 -0
  252. package/packages/types/build/lib/toBoardWord.d.ts +4 -0
  253. package/packages/types/build/lib/toBoardWord.js +11 -0
  254. package/packages/types/build/lib/transpose.d.ts +1 -0
  255. package/packages/types/build/lib/transpose.js +16 -0
  256. package/packages/types/build/type-guards/index.d.ts +10 -0
  257. package/packages/types/build/type-guards/index.js +23 -0
  258. package/packages/types/build/type-guards/isBingo.d.ts +2 -0
  259. package/packages/types/build/type-guards/isBingo.js +9 -0
  260. package/packages/types/build/type-guards/isBoardJson.d.ts +2 -0
  261. package/packages/types/build/type-guards/isBoardJson.js +21 -0
  262. package/packages/types/build/type-guards/isCellJson.d.ts +2 -0
  263. package/packages/types/build/type-guards/isCellJson.js +13 -0
  264. package/packages/types/build/type-guards/isGame.d.ts +2 -0
  265. package/packages/types/build/type-guards/isGame.js +7 -0
  266. package/packages/types/build/type-guards/isLocale.d.ts +2 -0
  267. package/packages/types/build/type-guards/isLocale.js +7 -0
  268. package/packages/types/build/type-guards/isMultiplierBingo.d.ts +2 -0
  269. package/packages/types/build/type-guards/isMultiplierBingo.js +8 -0
  270. package/packages/types/build/type-guards/isScoreBingo.d.ts +2 -0
  271. package/packages/types/build/type-guards/isScoreBingo.js +8 -0
  272. package/packages/types/build/type-guards/isTileJson.d.ts +2 -0
  273. package/packages/types/build/type-guards/isTileJson.js +8 -0
  274. package/packages/types/package.json +2 -2
  275. package/packages/types/src/Bingo.ts +0 -14
  276. package/packages/types/src/Board.test.ts +85 -0
  277. package/packages/types/src/Board.ts +8 -49
  278. package/packages/types/src/BoardJson.ts +1 -21
  279. package/packages/types/src/BoardWord.ts +8 -0
  280. package/packages/types/src/CellJson.ts +1 -12
  281. package/packages/types/src/Game.ts +0 -4
  282. package/packages/types/src/Locale.ts +0 -4
  283. package/packages/types/src/Result.ts +3 -3
  284. package/packages/types/src/TileJson.ts +0 -6
  285. package/packages/types/src/index.ts +20 -8
  286. package/packages/types/src/lib/getBoardWords.ts +11 -0
  287. package/packages/types/src/lib/getCells.test.ts +127 -0
  288. package/packages/types/src/lib/getCells.ts +31 -0
  289. package/packages/types/src/lib/getCollidingWords.ts +25 -0
  290. package/packages/types/src/lib/getCollision.ts +38 -0
  291. package/packages/types/src/lib/getCollisions.test.ts +82 -0
  292. package/packages/types/src/lib/getCollisions.ts +22 -0
  293. package/packages/types/src/lib/getPlacedCell.ts +9 -0
  294. package/packages/types/src/lib/getWordThrough.ts +30 -0
  295. package/packages/types/src/lib/getWordsInRows.ts +34 -0
  296. package/packages/types/src/lib/index.ts +5 -0
  297. package/packages/types/src/lib/isSameBoardWord.ts +5 -0
  298. package/packages/types/src/lib/toBoardWord.ts +12 -0
  299. package/packages/types/src/lib/transpose.ts +15 -0
  300. package/packages/types/src/type-guards/index.ts +10 -0
  301. package/packages/types/src/type-guards/isBingo.ts +8 -0
  302. package/packages/types/src/type-guards/isBoardJson.test.ts +33 -0
  303. package/packages/types/src/type-guards/isBoardJson.ts +23 -0
  304. package/packages/types/src/type-guards/isCellJson.ts +14 -0
  305. package/packages/types/src/type-guards/isGame.ts +5 -0
  306. package/packages/types/src/type-guards/isLocale.ts +5 -0
  307. package/packages/types/src/type-guards/isMultiplierBingo.ts +7 -0
  308. package/packages/types/src/type-guards/isScoreBingo.ts +7 -0
  309. package/packages/types/src/type-guards/isTileJson.ts +7 -0
  310. package/packages/word-definitions/package.json +2 -2
  311. package/packages/word-lists/package.json +2 -2
  312. package/playwright-report/index.html +1 -1
  313. package/screencast.gif +0 -0
  314. package/packages/scrabble-solver/.next/server/chunks/316.js +0 -1
  315. package/packages/scrabble-solver/.next/server/chunks/916.js +0 -1
  316. package/packages/scrabble-solver/.next/static/chunks/106.e414e88694add27f.js +0 -1
  317. package/packages/scrabble-solver/.next/static/chunks/127.125d896a19061d71.js +0 -1
  318. package/packages/scrabble-solver/.next/static/chunks/18.8b91e137d239e15c.js +0 -1
  319. package/packages/scrabble-solver/.next/static/chunks/583.7a46807be14c377e.js +0 -1
  320. package/packages/scrabble-solver/.next/static/chunks/711.ba7b8f900dfd40d0.js +0 -1
  321. package/packages/scrabble-solver/.next/static/chunks/912.ff8037ba9d4db5c8.js +0 -1
  322. package/packages/scrabble-solver/.next/static/chunks/pages/_app-2e607dcd4135f340.js +0 -1
  323. package/packages/scrabble-solver/.next/static/chunks/pages/index-e0087247c995328d.js +0 -1
  324. package/packages/scrabble-solver/.next/static/chunks/webpack-cfb34d175e081981.js +0 -1
  325. package/packages/scrabble-solver/.next/static/css/b74cd7de82dabcdd.css +0 -1
  326. package/packages/scrabble-solver/.next/static/css/c403ce739a9c0d83.css +0 -1
  327. package/packages/scrabble-solver/.next/static/css/fbfdce70731d0d2b.css +0 -1
  328. package/packages/scrabble-solver/src/components/Results/Cell.tsx +0 -32
  329. package/packages/scrabble-solver/src/components/ResultsInput/ResultsInput.module.scss +0 -12
  330. package/packages/scrabble-solver/src/components/ResultsInput/ResultsInput.module.scss.d.ts +0 -7
  331. package/packages/scrabble-solver/src/components/ResultsInput/index.ts +0 -1
  332. package/packages/types/build/readResultCells.d.ts +0 -5
  333. package/packages/types/build/readResultCells.js +0 -75
  334. package/packages/types/src/readResultCells.test.ts +0 -140
  335. package/packages/types/src/readResultCells.ts +0 -90
  336. /package/packages/scrabble-solver/.next/static/{5KOWzYqfY1Z2rjrzptr8D → nvGZh1gPuX98L07YmxlYD}/_ssgManifest.js +0 -0
  337. /package/packages/types/build/{isError.d.ts → type-guards/isError.d.ts} +0 -0
  338. /package/packages/types/build/{isError.js → type-guards/isError.js} +0 -0
  339. /package/packages/types/build/{isObject.d.ts → type-guards/isObject.d.ts} +0 -0
  340. /package/packages/types/build/{isObject.js → type-guards/isObject.js} +0 -0
  341. /package/packages/types/src/{isError.ts → type-guards/isError.ts} +0 -0
  342. /package/packages/types/src/{isObject.ts → type-guards/isObject.ts} +0 -0
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[332],{95:e=>{e.exports={resultCandidatePicker:"ResultCandidatePicker_resultCandidatePicker__S_aFf",buttons:"ResultCandidatePicker_buttons__dT8pq",bothEnabled:"ResultCandidatePicker_bothEnabled__yX7kU",button:"ResultCandidatePicker_button__ipqiD",resultCandidate:"ResultCandidatePicker_resultCandidate__TffXx",content:"ResultCandidatePicker_content__1i_5T",points:"ResultCandidatePicker_points__86QEQ",word:"ResultCandidatePicker_word___Wi29",iconContainer:"ResultCandidatePicker_iconContainer__iiYkC",spinnerContainer:"ResultCandidatePicker_spinnerContainer__3nvoz",loading:"ResultCandidatePicker_loading__0iXU_",icon:"ResultCandidatePicker_icon__AyoQE",insert:"ResultCandidatePicker_insert__KAM26"}},542:e=>{e.exports={tile:"Cell_tile__SiBOA",first3:"Cell_first3__7uV8I",last3:"Cell_last3__30aLE",sharpTopLeft:"Cell_sharpTopLeft__7Frqr",sharpTopRight:"Cell_sharpTopRight__eYNVC",sharpBottomLeft:"Cell_sharpBottomLeft__KhIPs",sharpBottomRight:"Cell_sharpBottomRight__R2ZNq",unreachable:"Cell_unreachable__bH4mB"}},820:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});var n,r=a(5729);function l(){return(l=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)({}).hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e}).apply(null,arguments)}let s=e=>r.createElement("svg",l({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16"},e),n||(n=r.createElement("path",{fill:"currentColor",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-.872zM8 10.93a2.929 2.929 0 1 1 0-5.86 2.929 2.929 0 0 1 0 5.858z"})))},973:(e,t,a)=>{"use strict";a.d(t,{U:()=>n});let n=(e,t)=>e-t},1076:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});var n,r=a(5729);function l(){return(l=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)({}).hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e}).apply(null,arguments)}let s=e=>r.createElement("svg",l({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16"},e),n||(n=r.createElement("path",{fill:"currentColor",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-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z"})))},1088:(e,t,a)=>{"use strict";a.d(t,{m:()=>_});var n=a(6029),r=a(5729),l=a(7445);let s=(0,r.createContext)(null),o=()=>{let e=(0,r.useContext)(s);if(null===e)throw Error("Tooltip components must be wrapped in <Tooltip />");return e};var i=a(7226),c=a(5227),u=a(7746),d=a.n(u);let h=(0,r.forwardRef)((e,t)=>{let a=o(),{context:r}=a,{isInstantPhase:l,currentId:s}=(0,i.ck)(r,{id:r.floatingId}),u=(0,i.SV)([a.refs.setFloating,t]),h={open:0,close:s===r.floatingId?c.T7:0},{isMounted:p,styles:m}=(0,i.DL)(r,{duration:l?h:c.T7,initial:{opacity:0}});return p?(0,n.jsx)(i.XF,{children:(0,n.jsxs)("div",{className:d().tooltip,ref:u,style:{...a.floatingStyles,...e.style,...m},...a.getFloatingProps(e),children:[(0,n.jsx)("div",{children:e.children}),(0,n.jsx)(i.ie,{className:d().arrow,context:r,ref:a.arrowRef})]})}):null});var p=a(9604);let m=(0,r.forwardRef)((e,t)=>{let{children:a,...n}=e,l=o(),s=(0,i.SV)([l.refs.setReference,t,a.props.ref]);if(!(0,r.isValidElement)(a))throw Error("TooltipTrigger's children are not a valid element");return(0,r.cloneElement)(a,l.getReferenceProps({ref:s,...n,...(0,p.isObject)(a.props)?a.props:{},"data-state":l.open?"open":"closed"}))});var v=a(1775),g=a(2309);let f=function(){let{placement:e="top"}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},[t,a]=(0,r.useState)(!1),n=(0,r.useRef)(null),l=(0,i.we)({placement:e,strategy:"fixed",open:t,onOpenChange:a,whileElementsMounted:v.ll,middleware:[(0,g.UU)(),(0,g.BN)({padding:10}),(0,g.cY)(10),(0,g.UE)({element:n})]}),{context:s}=l,{delay:o}=(0,i.ck)(s),c=(0,i.Mk)(s,{move:!1,delay:o}),u=(0,i.iQ)(s),d=(0,i.s9)(s,{ancestorScroll:!0}),h=(0,i.It)(s,{role:"tooltip"}),p=(0,i.bv)([c,u,d,h]);return(0,r.useMemo)(()=>({arrowRef:n,open:t,setOpen:a,...p,...l}),[n,t,a,p,l])},_=e=>{let{children:t,placement:a,tooltip:s}=e,o=(()=>{let[e,t]=(0,r.useState)(!1);return(0,r.useEffect)(()=>{let e=window.setTimeout(()=>t(!0),0);return()=>window.clearTimeout(e)},[]),e})(),i=(0,l.J)();return s&&o&&!i?(0,n.jsx)(w,{placement:a,tooltip:s,children:t}):t},w=e=>{let{children:t,placement:a,tooltip:r}=e,l=f({placement:a});return(0,n.jsxs)(s.Provider,{value:l,children:[(0,n.jsx)(m,{children:t}),(0,n.jsx)(h,{children:r})]})}},1090:e=>{e.exports={rack:"Rack_rack__0GhLs",tile:"Rack_tile__jnU1W",hidden:"Rack_hidden__3UrpD",sharpLeft:"Rack_sharpLeft__Zlx5l",sharpRight:"Rack_sharpRight__s2zNJ"}},1248:e=>{e.exports={actions:"Actions_actions__JclIc",action:"Actions_action__zkQOb"}},1274:e=>{e.exports={alert:"Alert_alert__cFBJC",iconContainer:"Alert_iconContainer__rIJ4B",error:"Alert_error__sMv5d",info:"Alert_info__5QGDB",success:"Alert_success__vQBXB",warning:"Alert_warning__6DDhO",icon:"Alert_icon__jUrPr",content:"Alert_content__QyQ78"}},1372:(e,t,a)=>{"use strict";a.d(t,{l:()=>n});let n=()=>void 0},1566:e=>{e.exports={board:"Board_board__Xnuco",floating:"Board_floating__6BuCt",show:"Board_show__qgRUu",focus:"Board_focus__1plN1",hidden:"Board_hidden__HUigM",hide:"Board_hide__3Xn0K",iconContainer:"Board_iconContainer__YELP8",iconBackground:"Board_iconBackground__u0tVi",icon:"Board_icon__0J1Ig",coordinate:"Board_coordinate__LaKUI",rotate:"Board_rotate__dvty2",wave:"Board_wave__YvFwO"}},1751:(e,t,a)=>{"use strict";a.d(t,{c:()=>n});let n=()=>!!globalThis.navigator&&(globalThis.navigator.platform.startsWith("Mac")||globalThis.navigator.platform.startsWith("iPhone"))},1758:e=>{e.exports={iconButton:"IconButton_iconButton__cz_iA",content:"IconButton_content__9uHMt",icon:"IconButton_icon__WVF0q"}},2164:e=>{e.exports={tile:"Tile_tile__Ix_p2",points1:"Tile_points1__Ubc_x",points2:"Tile_points2__d_3CH",points3:"Tile_points3__Q5XVD",points4:"Tile_points4__hu5jg",points5:"Tile_points5__4JVlF",raised:"Tile_raised__ObpSU",blank:"Tile_blank__WIuHs",empty:"Tile_empty__GU8RF",invalid:"Tile_invalid__vYgf3",highlighted:"Tile_highlighted__Xw3Fw",points:"Tile_points__3CAVI",input:"Tile_input__AO_aO",alert:"Tile_alert__0l1_m"}},2237:e=>{e.exports={nav:"index_nav__oayCy",navContent:"index_navContent__puCTa",navLogo:"index_navLogo__iI_za",logoContainer:"index_logoContainer__YyxQp",logo:"index_logo__jZUto",solver:"index_solver__wz8VS"}},2846:e=>{e.exports={results:"Results_results__RAvy9",emptyState:"Results_emptyState__HkpYj",content:"Results_content__eBfb2",listContainer:"Results_listContainer__y4jAK",list:"Results_list__ep2TB",outdated:"Results_outdated__xbp6D",header:"Results_header__f0CUM",headerButton:"Results_headerButton__Cl1_U",headerButtonLabel:"Results_headerButtonLabel__OxgLh",headerButtonIcon:"Results_headerButtonIcon__FL84f",result:"Results_result__S0y54",highlighted:"Results_highlighted__LM8tL",resultContent:"Results_resultContent__QZg6c",word:"Results_word__vw_0W",cell:"Results_cell__OQlhc",stat:"Results_stat__zl_Bp",points:"Results_points__vyk3z",coordinates:"Results_coordinates__1Ph_Z",solveButton:"Results_solveButton__V3YrS",sortIcon:"Results_sortIcon__W8p9d",input:"Results_input__4Te0e",highlight:"Results_highlight__RIiBE"}},2968:(e,t,a)=>{"use strict";a.d(t,{Q:()=>r});var n=a(5729);let r=function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],a=(0,n.useCallback)(t=>{let a=s(e);return a.addEventListener("change",t),()=>{a.removeEventListener("change",t)}},[e]),r=(0,n.useCallback)(()=>s(e).matches,[e]),l=(0,n.useCallback)(()=>t,[t]);return(0,n.useSyncExternalStore)(a,r,l)},l=new Map;function s(e){let t=l.get(e);return t||(t=window.matchMedia(e),l.set(e,t)),t}},2970:(e,t,a)=>{"use strict";a.d(t,{R:()=>m});var n=a(6029),r=a(2988),l=a.n(r),s=a(5729),o=a(1734),i=a(7809),c=a(5526),u=a(8390),d=a(7786),h=a(4454),p=a.n(h);let m=e=>{let{className:t,wave:a=!0}=e,r=(0,i.W)(),h=(0,c.N)(u.JV),{direction:m}=o.x[h],v=r("common.loading"),g="ltr"===m?v:v.split("").reverse().join(""),f=(0,s.useMemo)(()=>[g.toLocaleUpperCase().split(" ")],[g]);return(0,n.jsxs)("div",{"aria-label":v,className:l()(p().loading,t),"data-testid":"loading",role:"status",children:[(0,n.jsx)("div",{className:p().dim}),(0,n.jsx)("div",{className:p().text,children:(0,n.jsx)(d.m,{className:l()(p().tiles),content:f,dropShadow:!0,wave:a})})]})}},3117:(e,t,a)=>{"use strict";a.d(t,{$:()=>c});var n=a(6029),r=a(2988),l=a.n(r),s=a(1088),o=a(4580),i=a.n(o);let c=Object.assign(e=>{let{children:t,className:a,Icon:r,iconClassName:o,tooltip:c,variant:u="default",wide:d,...h}=e;return(0,n.jsx)(s.m,{tooltip:c,children:(0,n.jsx)("button",{className:l()(i().button,a,{[i().default]:"default"===u,[i().primary]:"primary"===u,[i().wide]:d}),type:"button",...h,children:(0,n.jsxs)("span",{className:i().content,children:[r&&(0,n.jsx)(r,{"aria-hidden":"true",className:l()(i().icon,o),role:"img"}),t&&(0,n.jsx)("span",{className:i().label,children:t})]})})})},{Link:e=>{let{children:t,className:a,Icon:r,iconClassName:o,tooltip:c,variant:u="default",wide:d,...h}=e;return(0,n.jsx)(s.m,{tooltip:c,children:(0,n.jsx)("a",{className:l()(i().button,a,{[i().default]:"default"===u,[i().primary]:"primary"===u,[i().wide]:d}),...h,children:(0,n.jsxs)("span",{className:i().content,children:[r&&(0,n.jsx)(r,{className:l()(i().icon,o)}),t&&(0,n.jsx)("span",{className:i().label,children:t})]})})})}})},3434:(e,t,a)=>{"use strict";a.d(t,{H:()=>r});let n="ABCDEFGHIJKLMNOPQRSTUVWXYZ",r=(e,t)=>{if("number"===t)return String(e+1);let a="",r=e;for(;r>=0;)a=n[r%n.length]+a,r=Math.floor(r/n.length)-1;return a}},3644:(e,t,a)=>{"use strict";a.d(t,{R:()=>n});let n=e=>e.hoveredTile.character},3656:e=>{e.exports={emptyState:"EmptyState_emptyState__N2idu",tiles:"EmptyState_tiles__FYVO9"}},3812:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});var n,r=a(5729);function l(){return(l=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)({}).hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e}).apply(null,arguments)}let s=e=>r.createElement("svg",l({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16"},e),n||(n=r.createElement("path",{fill:"currentColor",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-.27s1.36.09 2 .27c1.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.01 8.01 0 0 0 16 8c0-4.42-3.58-8-8-8"})))},4056:(e,t,a)=>{"use strict";a.d(t,{b:()=>p});var n=a(6029),r=a(2988),l=a.n(r),s=a(7809),o=a(5526),i=a(5035),c=a(7852),u=a(2970),d=a(8504),h=a.n(d);let p=e=>{let{className:t}=e,a=(0,s.W)(),r=(0,o.N)(i.Fe),d=(0,o.N)(i.dp),p=(0,o.N)(i.nD);return(0,n.jsxs)("div",{className:l()(h().dictionary,t),children:[(0,n.jsxs)("div",{className:h().content,children:[void 0!==p&&!d&&(0,n.jsx)(c.p,{variant:"error",children:p.message}),void 0===p&&!d&&0===r.length&&(0,n.jsx)(c.p,{variant:"info",children:a("dictionary.empty-state.uninitialized")}),r.map(e=>{let{definitions:t,exists:r,isAllowed:s,word:o}=e;return(0,n.jsx)("div",{className:l()(h().result,{[h().isAllowed]:!0===s,[h().isNotAllowed]:!1===s}),children:(0,n.jsxs)("div",{className:h().resultContent,children:[o&&(0,n.jsx)("h2",{className:h().word,children:o}),!1===s&&(0,n.jsx)("div",{children:a("dictionary.empty-state.not-allowed")}),!0===s&&0===t.length&&(0,n.jsx)(n.Fragment,{children:(0,n.jsx)("div",{children:r?a("dictionary.empty-state.no-definitions"):a("dictionary.empty-state.no-results")})}),!0===s&&t.length>0&&(0,n.jsx)("ul",{className:h().definitions,children:t.map((e,t)=>(0,n.jsx)("li",{className:h().definition,children:e},t))}),!d&&null===s&&(0,n.jsx)("div",{children:a("dictionary.empty-state.no-results")})]})},o)})]}),d&&(0,n.jsx)(u.R,{})]})}},4093:(e,t,a)=>{"use strict";a.d(t,{F:()=>g});var n,r=a(6029),l=a(7226),s=a(900),o=a(5729),i=a(1372),c=a(2988),u=a.n(c);function d(){return(d=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)({}).hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e}).apply(null,arguments)}let h=e=>o.createElement("svg",d({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16"},e),n||(n=o.createElement("path",{fill:"currentColor",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-2zm6 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 4m.002 6a1 1 0 1 1 0 2 1 1 0 0 1 0-2"})));var p=a(2164),m=a.n(p);let v=(0,o.memo)(e=>{let{"aria-label":t,autoFocus:a,canShowPoints:n,character:l,className:s,disabled:o,highlighted:i,inputRef:c,isBlank:d,isValid:p,placeholder:v,points:g,pointsFormatted:f,raised:_,tabIndex:w,onChange:b,onFocus:x,onKeyDown:C,onMouseDown:y,onTouchStart:N}=e;return(0,r.jsxs)("div",{className:u()(m().tile,s,{[m().blank]:d,[m().empty]:!l,[m().invalid]:!p,[m().highlighted]:i,[m().points1]:1===g,[m().points2]:2===g,[m().points3]:3===g,[m().points4]:4===g,[m().points5]:"number"==typeof g&&g>=5,[m().raised]:_}),role:i?"mark":void 0,children:[l||v,!o&&(0,r.jsx)("input",{"aria-label":t,autoCapitalize:"none",autoComplete:"off",autoCorrect:"off",autoFocus:a,className:m().input,disabled:o,ref:c,spellCheck:!1,tabIndex:w,value:l||"",onChange:b,onFocus:x,onKeyDown:C,onMouseDown:y,onTouchStart:N}),n&&(0,r.jsx)("span",{className:m().points,children:f}),!p&&(0,r.jsx)(h,{"aria-hidden":"true",className:m().alert,role:"img"})]})}),g=e=>{let{"aria-label":t,autoFocus:a,className:n,character:c="",disabled:u,highlighted:d,inputRef:h,isBlank:p,isValid:m,locale:g,placeholder:f,points:_,raised:w,tabIndex:b,onChange:x,onFocus:C=i.l,onKeyDown:y=i.l,onMouseDown:N=i.l,onTouchStart:j=i.l}=e,k=(0,o.useRef)(null),M=(0,l.SV)(h?[k,h]:[k]),B=(!(!c||c===s.EMPTY_CELL)||p)&&void 0!==_,E="number"==typeof _?_.toLocaleString(g):"",L=(0,o.useCallback)(e=>{k.current?.select(),y(e)},[y]);return(0,r.jsx)(v,{"aria-label":t,autoFocus:a,canShowPoints:B,character:c,className:n,disabled:u,highlighted:d,inputRef:M,isBlank:p,isValid:m,placeholder:f,points:_,pointsFormatted:E,raised:w,tabIndex:b,onChange:x,onFocus:C,onKeyDown:L,onMouseDown:N,onTouchStart:j})}},4312:e=>{e.exports={button:"ToggleDirectionButton_button__8P075",icon:"ToggleDirectionButton_icon__ZZ78d",right:"ToggleDirectionButton_right__b0_LR"}},4454:e=>{e.exports={loading:"Loading_loading__zKVig",dim:"Loading_dim__sBo77",text:"Loading_text__AUS3o",tiles:"Loading_tiles__5IEHk"}},4580:e=>{e.exports={button:"Button_button__8B4nB",primary:"Button_primary__KcWsb",default:"Button_default__nKr4u",icon:"Button_icon__V37WX",content:"Button_content__gu4us",label:"Button_label__YUlJz",wide:"Button_wide__xwJam"}},4696:e=>{e.exports={navButtons:"NavButtons_navButtons__Ar_TQ",button:"NavButtons_button__UKQU0",separator:"NavButtons_separator__lPmge",group:"NavButtons_group__OiFOK",error:"NavButtons_error__kbe3P",fullNav:"NavButtons_fullNav__ssFBL",shortNav:"NavButtons_shortNav__kzmRS",keyMapButton:"NavButtons_keyMapButton__W6Z_3"}},4735:(e,t,a)=>{"use strict";a.d(t,{J:()=>m,u:()=>v});var n=a(1644),r=a(5481),l=a(973),s=a(1855),o=a(900),i=a(5759),c=a(5044),u=a(8390),d=a(8744);let h=(0,n.Mz)([d.eC,s.p],(e,t)=>!e.board.equals(t)),p=(0,n.Mz)([d.eC,c.x,u.JV],(e,t,a)=>!((e,t,a)=>{let n;if(e.length!==t.length)return!1;let s=(n=(0,r.U)(a),(e,t)=>"string"==typeof e&&"string"==typeof t?n(e,t):"number"==typeof e&&"number"==typeof t?(0,l.U)(e,t):0),o=[...e].sort(s),i=[...t].sort(s);return o.every((e,t)=>e===i[t])})(e.characters,t,a)),m=(0,n.Mz)([h,p],(e,t)=>e||t),v=(0,n.Mz)([u.zg,s.p,c.x,u.JV],(e,t,a,n)=>{let r=t.rows.flat().filter(e=>!e.isEmpty),l=r.filter(e=>!e.tile.isBlank),s=Object.fromEntries(e.tiles.map(e=>[e.character,{...e,usedCount:0}])),c={character:o.BLANK,count:e.blanksCount,score:e.blankScore,usedCount:r.filter(e=>e.tile.isBlank).length+a.filter(e=>e===o.BLANK).length},u=[...l.map(e=>e.tile.character),...a.filter(e=>e!==o.BLANK)];for(let e of u.filter(e=>void 0===s[e]))s[e]={character:e,count:0,score:0,usedCount:0};for(let e of u)++s[e].usedCount;let d=(0,i.s)("character",n);return[...Object.values(s).sort(d),c]})},5109:(e,t,a)=>{"use strict";a.d(t,{VZ:()=>j,To:()=>N,jt:()=>g,Sb:()=>b,i1:()=>x,Xm:()=>k,fI:()=>f,Zu:()=>w});var n=a(1644);let r=e=>{if(0===e.trim().length)return/.*/;try{return RegExp(e,"gi")}catch{return/.*/}};var l=a(4264),s=a(8390),o=a(5759),i=a(5481),c=a(3434),u=a(8502);let d=(e,t)=>{let a=e.cells[0],n=(0,c.H)(a.x,"original"===t?"letter":"number"),r=(0,c.H)(a.y,"original"===t?"number":"letter");return e.isHorizontal()?`${r}${n}`:`${n}${r}`},h=(e,t)=>{let a=t.filter(e=>"exclude"===e.type).every(t=>{let{x:a,y:n}=t;return e.cells.every(e=>e.x!==a||e.y!==n)});if(!a)return!1;let n=t.filter(e=>"include"===e.type).every(t=>{let{x:a,y:n}=t;return e.cells.some(e=>e.x===a&&e.y===n)});return a&&n},p={[u.N.BlanksCount]:e=>(0,o.s)("blanksCount",e),[u.N.ConsonantsCount]:e=>(0,o.s)("consonantsCount",e),[u.N.Coordinates]:(e,t)=>(a,n)=>(0,i.U)(e)(d(a,t),d(n,t)),[u.N.Points]:e=>(0,o.s)("points",e),[u.N.TilesCount]:e=>(0,o.s)("tilesCount",e),[u.N.VowelsCount]:e=>(0,o.s)("vowelsCount",e),[u.N.Word]:e=>(0,o.s)("word",e),[u.N.WordsCount]:e=>(0,o.s)("wordsCount",e)},m=(e,t)=>t,v=e=>e.results,g=(0,n.Mz)([v],e=>e.candidate),f=(0,n.Mz)([v],e=>e.query),_=(0,n.Mz)([v],e=>e.results),w=(0,n.Mz)([v],e=>e.sort),b=(0,n.Mz)([g],e=>e?.cells??[]),x=(0,n.Mz)([g],e=>e?.tiles??[]),C=(0,n.Mz)([_,w,s.JV,s.hN],(e,t,a,n)=>{if(void 0===e)return;let r=(0,p[t.column])(a,n);return[...e].sort(t.direction===u.U.Descending?(e,t)=>-r(e,t):r)}),y=(0,n.Mz)([C,f,l.o],(e,t,a)=>{if(void 0===e)return;let n=r(t),{matching:l,other:s}=e.reduce((e,t)=>(h(t,a)&&t.word.match(n)?e.matching.push(t):e.other.push(t),e),{matching:[],other:[]});return{matching:l,other:s}}),N=(0,n.Mz)([y],e=>e?[...e.matching,...e.other]:void 0),j=(0,n.Mz)([N,f,l.o,m],(e,t,a,n)=>{if(!e)return!1;let l=e[n];return!!r(t).test(l.word)&&h(l,a)}),k=(0,n.Mz)([N,s.hN,m],(e,t,a)=>e?d(e[a],t):"")},5214:e=>{e.exports={dictionaryInput:"DictionaryInput_dictionaryInput__ko75b",input:"DictionaryInput_input__dfsFg"}},5481:(e,t,a)=>{"use strict";a.d(t,{U:()=>n});let n=e=>(t,a)=>t.localeCompare(a,e)},5526:(e,t,a)=>{"use strict";a.d(t,{N:()=>n});let n=a(9276).d4},5674:e=>{e.exports={solver:"Solver_solver__HgdJ5",container:"Solver_container__ajXif",content:"Solver_content__HOara",boardContainer:"Solver_boardContainer__4GPRC",board:"Solver_board__GI25F",submitInput:"Solver_submitInput__Q3pw9",column:"Solver_column__stLpp",results:"Solver_results__YjM_q",dictionaryContainer:"Solver_dictionaryContainer__v6K0v",dictionary:"Solver_dictionary__R2P0a",dictionaryInput:"Solver_dictionaryInput__kSVRV",bottomContainer:"Solver_bottomContainer___pVNW",bottomContent:"Solver_bottomContent__b8KyY",controls:"Solver_controls__4fjwP",emptyState:"Solver_emptyState__6TEU_"}},5759:(e,t,a)=>{"use strict";a.d(t,{s:()=>l});var n=a(5481),r=a(973);let l=(e,t)=>{let a=(0,n.U)(t);return(t,n)=>{let l=t[e],s=n[e];return"string"==typeof l&&"string"==typeof s?a(l,s):"number"==typeof l&&"number"==typeof s?(0,r.U)(l,s):0}}},5812:e=>{e.exports={inputPrompt:"InputPrompt_inputPrompt__1_ygJ",toggleDirection:"InputPrompt_toggleDirection__mx8tU",input:"InputPrompt_input__Qdlf_",insert:"InputPrompt_insert__FLC5l",insertIcon:"InputPrompt_insertIcon__aL5tM"}},5902:e=>{e.exports={wave:"PlainTiles_wave__bE4zX",tile:"PlainTiles_tile___NJSM",dropShadow:"PlainTiles_dropShadow__K0PlA",hide:"PlainTiles_hide__A1qMM",show:"PlainTiles_show__tFNGv",rotate:"PlainTiles_rotate__7Jm2X"}},5903:e=>{e.exports={insertButton:"InsertButton_insertButton__t2Y1w",icon:"InsertButton_icon__w3D9r"}},6014:(e,t,a)=>{"use strict";a.r(t),a.d(t,{__N_SSG:()=>t3,default:()=>t9});var n,r,l,s,o,i,c,u,d,h,p,m,v,g,f=a(6029),_=a(1790),w=a(1024),b=a.n(w),x=a(5729),C=a(9276),y=a(8588),N=a.n(y),j=a(5227);let k=(0,x.forwardRef)((e,t)=>(0,f.jsx)(N(),{...e,alt:"Scrabble Solver 2",height:j._Q,priority:!0,ref:t,src:j.dX,width:j.pw}));var M=a(2988),B=a.n(M),E=a(8655),L=a(820);function A(){return(A=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)({}).hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e}).apply(null,arguments)}let P=e=>x.createElement("svg",A({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16"},e),n||(n=x.createElement("path",{fill:"currentColor",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.828zm.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-.293z"})));var T=a(3812);function S(){return(S=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)({}).hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e}).apply(null,arguments)}let z=e=>x.createElement("svg",S({xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",viewBox:"0 0 16 16"},e),r||(r=x.createElement("path",{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-2zm13 .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.25M2.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 8zM4 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.25M6.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 8zM8 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.25M13.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-.25zm0 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-.25zm-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-.25zm.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.25M11.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-.25zM9 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.25M7.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 6zM5 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.25M2.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 6zM2 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.25M4.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-.25z"})));function R(){return(R=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)({}).hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e}).apply(null,arguments)}let O=e=>x.createElement("svg",R({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16"},e),l||(l=x.createElement("path",{fill:"currentColor",d:"M2.5 12a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5m0-4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5m0-4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5"})));var I=a(9115),D=a(7809),V=a(5526),$=a(8390),W=a(8298),F=a(4696),K=a.n(F),H=a(1644),U=a(7474),J=a(4735);let Z=(0,H.Mz)([U.X7],e=>e.length>0),Q=(0,H.Mz)([J.u],e=>e.some(e=>{let{count:t=0,usedCount:a}=e;return a>t})),Y=(0,x.memo)(e=>{let{onClear:t,onShowKeyMap:a,onShowMenu:n,onShowRemainingTiles:r,onShowSettings:l,onShowWords:s}=e,o=(0,D.W)(),i=(0,V.N)($.zg),c=(0,V.N)(Z),u=(0,V.N)(Q);return(0,f.jsxs)("div",{className:K().navButtons,children:[(0,f.jsx)("div",{className:K().group,children:(0,f.jsx)(W.K,{"aria-label":o("common.clear"),className:K().button,Icon:P,tooltip:o("common.clear"),onClick:t})}),(0,f.jsx)("div",{className:K().separator}),(0,f.jsxs)("div",{className:B()(K().group,K().fullNav),children:[i.supportsRemainingTiles&&(0,f.jsx)(W.K,{"aria-label":o("remaining-tiles"),className:B()(K().button,{[K().error]:u}),Icon:I.A,tooltip:o("remaining-tiles"),onClick:r}),(0,f.jsx)(W.K,{"aria-label":o("words"),className:B()(K().button,{[K().error]:c}),Icon:E.A,tooltip:o("words"),onClick:s})]}),(0,f.jsx)("div",{className:B()(K().separator,K().fullNav)}),(0,f.jsx)("div",{className:B()(K().group,K().fullNav),children:(0,f.jsx)(W.K.Link,{"aria-label":o("github"),className:K().button,href:j.g,Icon:T.A,rel:"noopener noreferrer",target:"_blank",tooltip:o("github")})}),(0,f.jsx)("div",{className:B()(K().separator,K().fullNav)}),(0,f.jsxs)("div",{className:B()(K().group,K().fullNav),children:[(0,f.jsx)(W.K,{"aria-label":o("keyMap"),className:B()(K().button,K().keyMapButton),Icon:z,tooltip:o("keyMap"),onClick:a}),(0,f.jsx)(W.K,{"aria-label":o("settings"),"data-testid":"settings-button",className:K().button,Icon:L.A,tooltip:o("settings"),onClick:l})]}),(0,f.jsx)("div",{className:B()(K().group,K().shortNav),children:(0,f.jsx)(W.K,{"aria-label":o("menu"),className:K().button,Icon:O,tooltip:o("menu"),onClick:n})})]})});var G=a(7445),X=a(7668),q=a(8744),ee=a(5109);let et=()=>(0,C.Pj)();var ea=a(3203),en=a(3876),er=a(6205);function el(){return(el=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)({}).hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e}).apply(null,arguments)}function es(){return(es=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)({}).hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e}).apply(null,arguments)}function eo(){return(eo=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)({}).hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e}).apply(null,arguments)}var ei=a(1274),ec=a.n(ei);let eu={error:e=>x.createElement("svg",el({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16"},e),s||(s=x.createElement("path",{fill:"currentColor",d:"M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M5.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.293z"}))),info:e=>x.createElement("svg",eo({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16"},e),i||(i=x.createElement("path",{fill:"currentColor",d:"M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16m.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 2"}))),success:er.A,warning:e=>x.createElement("svg",es({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16"},e),o||(o=x.createElement("path",{fill:"currentColor",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.767zM8 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 5m.002 6a1 1 0 1 1 0 2 1 1 0 0 1 0-2"})))},ed=e=>{let{children:t,className:a,variant:n,...r}=e,l=eu[n];return(0,f.jsxs)("div",{className:B()(ec().alert,a,{[ec().error]:"error"===n,[ec().info]:"info"===n,[ec().success]:"success"===n,[ec().warning]:"warning"===n}),...r,children:[(0,f.jsx)("div",{className:ec().iconContainer,children:(0,f.jsx)(l,{"aria-hidden":"true",className:ec().icon,role:"img"})}),(0,f.jsx)("div",{className:ec().content,children:t})]})};var eh=a(7226),ep=a(900),em=a(9484),ev=a(1734),eg=a(4264),ef=a(3644),e_=a(6303),ew=a(443),eb=a(1566),ex=a.n(eb);function eC(){return(eC=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)({}).hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e}).apply(null,arguments)}let ey=e=>x.createElement("svg",eC({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16"},e),c||(c=x.createElement("path",{fill:"currentColor",d:"M15 8a6.97 6.97 0 0 0-1.71-4.584l-9.874 9.875A7 7 0 0 0 15 8M2.71 12.584l9.874-9.875a7 7 0 0 0-9.874 9.874ZM16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0"})));function eN(){return(eN=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)({}).hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e}).apply(null,arguments)}let ej=e=>x.createElement("svg",eN({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16"},e),u||(u=x.createElement("path",{fill:"currentColor",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 12 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.477A20 20 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-.477a20 20 0 0 0 1.349-.476l.019-.007.004-.002h.001"})));var ek=a(3434),eM=a(4093),eB=a(542),eE=a.n(eB);let eL=(0,x.memo)(e=>{let{cell:t,cellBottom:a,cellLeft:n,cellRight:r,cellTop:l,className:s,config:o,inputRef:i,isHoverMatch:c,isReachable:u=!0,locale:d,showCoordinates:h,translate:p,onChange:m,onFocus:v}=e,{tile:g,x:_,y:w}=t,b=et(),C=g.character===ep.EMPTY_CELL,y=o.getTilePoints(g),N=!t.hasTile()||o.tiles.some(e=>{let{character:t}=e;return t===g.character}),j=(0,x.useCallback)(e=>{"touchscreen"===(0,$.QN)(b.getState())&&(e.preventDefault(),e.target.blur()),v(_,w)},[b,v,_,w]),k=(0,x.useCallback)(e=>{"touchscreen"===(0,$.QN)(b.getState())&&e.preventDefault(),v(_,w)},[b,v,_,w]),M=(0,x.useCallback)(e=>{"touchscreen"===(0,$.QN)(b.getState())&&e.preventDefault(),v(_,w)},[b,v,_,w]);return(0,f.jsx)(eM.F,{"aria-label":p("cell.tile.location",{coordinates:"alternative"===h?`${(0,ek.H)(_,"number")}${(0,ek.H)(w,"letter")}`:`${(0,ek.H)(_,"letter")}${(0,ek.H)(w,"number")}`}),className:B()(eE().tile,s,{[eE().first3]:_<3,[eE().last3]:o.boardWidth-_-1<3,[eE().sharpTopLeft]:l?.hasTile()||n?.hasTile(),[eE().sharpTopRight]:l?.hasTile()||r?.hasTile(),[eE().sharpBottomLeft]:a?.hasTile()||n?.hasTile(),[eE().sharpBottomRight]:a?.hasTile()||r?.hasTile(),[eE().unreachable]:!u}),character:C?void 0:g.character,highlighted:t.isCandidate()||c,inputRef:i,isBlank:g.isBlank,isValid:N,locale:d,points:y,raised:!C,tabIndex:0===t.x&&0===t.y?void 0:-1,onChange:m,onFocus:j,onMouseDown:k,onTouchStart:M})}),eA=(0,x.forwardRef)((e,t)=>{let{className:a,config:n,direction:r,cellFilters:l,hoveredCharacter:s,inputRefs:o,locale:i,reachableCells:c,rows:u,showCoordinates:d,style:h,translate:p,onBlur:m,onChange:v,onFocus:g,onKeyDown:_,onPaste:w}=e;return(0,f.jsxs)("div",{className:B()(ex().board,a),"data-testid":"board",ref:t,style:h,onBlur:m,onKeyDown:_,onPaste:w,children:[(0,f.jsx)("div",{}),u[0].map((e,t)=>(0,f.jsx)("div",{className:ex().coordinate,children:(0,ek.H)(t,"original"===d?"letter":"number")},t)),l.map(e=>{let{x:t,y:a,type:n}=e;return(0,f.jsxs)("div",{className:ex().iconContainer,style:{height:"var(--cell-size)",width:"var(--cell-size)",left:"ltr"===r?eT(t):void 0,right:"rtl"===r?eT(t):void 0,top:eT(a)},children:[(0,f.jsx)("div",{className:ex().iconBackground}),(0,f.jsx)("exclude"===n?ey:ej,{"aria-hidden":"true",className:ex().icon,role:"img"})]},[t,a].join("-"))}),u.map((e,t)=>(0,f.jsxs)(x.Fragment,{children:[(0,f.jsx)("div",{className:ex().coordinate,children:(0,ek.H)(t,"original"===d?"number":"letter")}),e.map((e,a)=>{var r,l;return(0,f.jsx)(eL,{cell:e,cellBottom:t<u.length-1?u[t+1][a]:void 0,cellLeft:a>0?u[t][a-1]:void 0,cellRight:a<u[t].length-1?u[t][a+1]:void 0,cellTop:t>0?u[t-1][a]:void 0,config:n,inputRef:o[t][a],isHoverMatch:(r=e,l=s,r.tile.character!==ep.EMPTY_CELL&&null!==l&&(l===ep.BLANK?r.tile.isBlank:!r.tile.isBlank&&r.tile.character===l)),isReachable:!c||c[t][a],locale:i,showCoordinates:d,translate:p,onChange:v,onFocus:g},a)})]},t))]})}),eP=(0,x.memo)(eA);function eT(e){return`calc(var(--coordinate-size) + var(--border--width) + ${e} * (var(--cell-size) + var(--border--width)))`}function eS(){return(eS=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)({}).hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e}).apply(null,arguments)}let ez=e=>x.createElement("svg",eS({xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",viewBox:"0 0 16 16"},e),d||(d=x.createElement("path",{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-1zM2 4a2 2 0 0 0-2 2v5a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2z"})),h||(h=x.createElement("path",{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-.25zm0-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-.25zm-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.75zm2 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-.25zm1 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-.25zm-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.75zm-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.75zm-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.75zm11-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-.25zm-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-.25zm-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.75zm-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.75zm-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.75zm-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.75zm0 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-.25zm2 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-.25z"})));var eR=a(1076);function eO(){return(eO=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)({}).hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e}).apply(null,arguments)}let eI=e=>x.createElement("svg",eO({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16"},e),p||(p=x.createElement("path",{fill:"currentColor",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-2z"}))),eD=(e,t,a)=>e.find(e=>e.x===t&&e.y===a);var eV=a(1751),e$=a(3117),eW=a(8974),eF=a(4312),eK=a.n(eF);let eH=e=>{let{className:t,direction:a,...n}=e,r=(0,D.W)(),l=(0,G.J)();return(0,f.jsx)(e$.$,{"aria-label":r("cell.toggle-direction"),className:B()(eK().button,t),"data-direction":a,"data-testid":"toggle-direction-button",Icon:eW.A,iconClassName:B()(eK().icon,{[eK().right]:"horizontal"===a}),tooltip:(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)("span",{children:r("cell.toggle-direction")}),!l&&(0,f.jsxs)("span",{children:[" (",r("common.arrows"),")"]})]}),...n})};var eU=a(1248),eJ=a.n(eU);let eZ=(0,x.forwardRef)((e,t)=>{let{cell:a,className:n,direction:r,onDirectionToggle:l,onEnterWord:s,onToggleBlank:o,onToggleFilterCell:i,...c}=e,u=(0,D.W)(),d=(0,G.J)(),h=(0,V.N)($.QN),p=(0,V.N)(e=>(0,eg.f)(e,a)),m=(0,V.N)(ee.Sb),v=a.tile.isBlank,g=a.tile.character===ep.EMPTY_CELL||!!eD(m,a.x,a.y),{Icon:_,labelTranslationKey:w}=p?.type==="exclude"?{Icon:P,labelTranslationKey:"common.clear"}:p?.type==="include"?{Icon:ey,labelTranslationKey:"cell.filter-cell.exclude"}:{Icon:ej,labelTranslationKey:"cell.filter-cell.include"},b=e=>e.preventDefault();return(0,f.jsxs)("div",{className:B()(eJ().actions,n),ref:t,...c,children:["touchscreen"===h&&(0,f.jsx)(e$.$,{"aria-label":u("cell.enter-word"),className:eJ().action,Icon:ez,tooltip:u("cell.enter-word"),onClick:s,onMouseDown:b}),"keyboard"===h&&(0,f.jsx)(eH,{className:eJ().action,direction:r,onClick:l,onMouseDown:b}),g&&(0,f.jsx)(e$.$,{"aria-label":u(w),className:B()(eJ().action),Icon:_,tooltip:(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)("span",{children:u(w)}),!d&&(0,f.jsxs)("span",{children:[" (",(0,eV.c)()?"⌘":"Ctrl"," + G)"]})]}),onClick:i,onMouseDown:b}),!g&&(0,f.jsx)(e$.$,{"aria-label":u(v?"cell.set-not-blank":"cell.set-blank"),className:eJ().action,Icon:v?eI:eR.A,tooltip:(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)("span",{children:u(v?"cell.set-not-blank":"cell.set-blank")}),!d&&(0,f.jsxs)("span",{children:[" (",u("common.space"),")"]})]}),onClick:o,onMouseDown:b})]})});var eQ=a(5812),eY=a.n(eQ);let eG=(0,x.forwardRef)((e,t)=>{let{className:a,direction:n,initialValue:r,onDirectionToggle:l,onSubmit:s,...o}=e,i=(0,D.W)(),[c,u]=(0,x.useState)(null),[d,h]=(0,x.useState)(r.trim()),p=e=>e.preventDefault();return(0,x.useEffect)(()=>{c&&(c.focus(),c.select(),c.scrollIntoView({block:"start",inline:"center"}))},[c]),(0,f.jsxs)("form",{className:B()(eY().inputPrompt,a),ref:t,onSubmit:e=>{e.preventDefault(),e.stopPropagation(),s(d)},...o,children:[(0,f.jsx)(eH,{className:eY().toggleDirection,direction:n,onClick:l,onMouseDown:p}),(0,f.jsx)("div",{children:(0,f.jsx)("input",{autoCapitalize:"none",autoComplete:"off",autoCorrect:"off",className:eY().input,placeholder:i("rack.placeholder"),spellCheck:!1,ref:u,value:d,onChange:e=>h(e.target.value)})}),(0,f.jsx)(e$.$,{"aria-label":i("results.insert"),className:eY().insert,Icon:er.A,iconClassName:eY().insertIcon,tooltip:i("results.insert"),type:"submit",variant:"primary",onMouseDown:p})]})});var eX=a(9604),eq=a(9311),e0=a(1372);let e5=e=>{let{onArrowDown:t=e0.l,onArrowLeft:a=e0.l,onArrowRight:n=e0.l,onArrowUp:r=e0.l,onBackspace:l=e0.l,onDelete:s=e0.l,onEnter:o=e0.l,onKeyDown:i=e0.l,onSpace:c=e0.l}=e,u={ArrowUp:r,ArrowDown:t,ArrowLeft:a,ArrowRight:n,Backspace:l,Delete:s,Enter:o," ":c};return e=>{(u[e.key]||e0.l)(e),i(e)}},e1=/[̀-ͯ]/g,e2={Æ:"AE",Œ:"OE",æ:"ae",œ:"oe"},e7={[eX.Locale.DE_DE]:e=>e,[eX.Locale.EN_GB]:e=>e,[eX.Locale.EN_US]:e=>e,[eX.Locale.ES_ES]:e=>e8(e,["\xf1","\xd1"]),[eX.Locale.FA_IR]:e=>e,[eX.Locale.FR_FR]:e=>e8(e),[eX.Locale.PL_PL]:e=>e,[eX.Locale.RO_RO]:e=>e8(e),[eX.Locale.TR_TR]:e=>e};function e8(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return Array.from(e).map(e=>t.includes(e)?e:e2[e]??e.normalize("NFD").replace(e1,"")).join("")}let e4=(e,t,a)=>{var n;let r=0,l=[],s=(n=e.locale,e7[n](t));for(;r<s.length;){let t=s[r],n=t.toLocaleLowerCase(e.locale),o=s[r+1],i=`${t}${o}`,c=i.toLocaleLowerCase(e.locale);(a?.upperCaseDigraphsOnly?e.twoCharacterTiles.includes(c)&&e6(e.locale,i):e.twoCharacterTiles.includes(c))?(l.push(c),r+=c.length):((e.hasCharacter(n)||n===ep.BLANK)&&l.push(n),++r)}return l},e6=(e,t)=>t===t.toLocaleUpperCase(e),e3=e=>{let t=e.value.toLocaleLowerCase();if(null===e.selectionStart||null===e.selectionEnd)return t;let a=Math.min(e.selectionStart,e.selectionEnd);return a>0?t.substring(a-1,a):t},e9=(e,t,a)=>Array.from({length:t}).map((t,n)=>Array.from({length:e}).map((e,t)=>a(t,n))),te=e=>"vertical"===e?"horizontal":"vertical",tt=new WeakMap;function ta(e){return`<text dominant-baseline="central" fill="white" font-family="system-ui, sans-serif" font-size="28.799999999999997" font-weight="bold" text-anchor="middle" x="40" y="40">\xd7${e}</text>`}function tn(e,t){return`<line stroke="${j.m4}" stroke-width="1" vector-effect="non-scaling-stroke" x1="0" x2="${t}" y1="${e}" y2="${e}"/>`}function tr(e,t){return`<line stroke="${j.m4}" stroke-width="1" vector-effect="non-scaling-stroke" x1="${e}" x2="${e}" y1="0" y2="${t}"/>`}var tl=a(2309),ts=a(1775),to=a(1855),ti=a(5044);let tc=(0,H.Mz)([to.p,ee.Sb],(e,t)=>e.rows.map((e,a)=>e.map((e,n)=>eD(t,n,a)||e))),tu=(0,H.Mz)([$.zg,to.p,ti.x,$.u_],(e,t,a,n)=>n&&0!==a.length?((e,t,a)=>{let{boardHeight:n,boardWidth:r}=e,l=e9(r,n,()=>!1);if(0===a)return l;let s=t.isEmpty(),o=t.center,i=(e,a,l)=>{if(s)return e===o.x&&a===o.y;if("horizontal"===l){let r=a>0&&!t.rows[a-1][e].isEmpty,l=a<n-1&&!t.rows[a+1][e].isEmpty;return r||l}let i=e>0&&!t.rows[a][e-1].isEmpty,c=e<r-1&&!t.rows[a][e+1].isEmpty;return i||c},c=(e,l,s)=>{let o="horizontal"===s,c=o?r:n,u=o?e:l,d=a=>o?t.rows[l][a]:t.rows[a][e];if(i(e,l,s))return!0;for(let e of[-1,1]){let t=1;for(let n=u+e;n>=0&&n<c;n+=e){let e=d(n);if(e.hasTile()){if(t<=a)return!0;break}if((t+=1)>a)break;if(i(e.x,e.y,s))return!0}}return!1};for(let e=0;e<n;++e)for(let a=0;a<r;++a){if(t.rows[e][a].hasTile()){l[e][a]=!0;continue}(c(a,e,"horizontal")||c(a,e,"vertical"))&&(l[e][a]=!0)}return l})(e,t,a.length):null),td=e=>{let{className:t}=e,a=(0,C.wA)(),n=(0,D.W)(),r=(0,V.N)($.JV),l=(0,V.N)($.zg),s=(0,V.N)(tc),o=(0,V.N)(tu),i=(0,V.N)($.QN),c=(0,V.N)(eg.o),u=(0,V.N)($.hN),d=(0,V.N)(ef.R),[{activeIndex:h,direction:p,inputRefs:m},{insertValue:v,onChange:g,onDirectionToggle:_,onFocus:w,onKeyDown:b,onPaste:y}]=(e=>{let t=e.length,a=e[0].length,n=(0,C.wA)(),r=(0,V.N)($.zg),l=(0,V.N)($.JV),s=(0,x.useMemo)(()=>e9(a,t,()=>(0,x.createRef)()),[a,t]),[o,i]=(0,x.useState)({x:0,y:0}),[c,u]=(0,x.useState)("horizontal"),d=(0,eq.F)(c),h=(0,eq.F)(e),p=(0,x.useMemo)(()=>({x:Math.min(o.x,a-1),y:Math.min(o.y,t-1)}),[o,a,t]),m=(0,x.useCallback)((e,n)=>{let r=Math.min(Math.max(p.x+e,0),a-1),l=Math.min(Math.max(p.y+n,0),t-1);i({x:r,y:l}),s[l][r].current?.focus()},[p,t,s,a]),v=(0,x.useCallback)(e=>((e,t)=>{for(let a=0;a<e.length;++a)for(let n=0;n<e[0].length;++n)if(t(e[a][n]))return{x:n,y:a}})(s,t=>t.current===e),[s]),g=(0,x.useCallback)(e=>{"horizontal"===d.current?m(e,0):m(0,e)},[m,d]),f=(0,x.useCallback)((e,l)=>{let s=l?e4(r,l).filter(e=>e!==ep.BLANK):[ep.BLANK],o=[],i=new eX.Board({rows:h.current.map(e=>e.map(e=>e.clone()))}),{x:c,y:u}=e,p=()=>{"horizontal"===d.current?++c:++u};s.forEach(e=>{if(c>=r.boardWidth||u>=r.boardHeight)return;let n=u-1>0,l=c>0,s=c+1<a,d=u+1<t;if(n){let t=i.rows[u-1][c],a=t.tile.character+e;if(!t.tile.isBlank&&r.twoCharacterTiles.includes(a)){let e=e_.h.actions.changeCellValue({x:c,y:u-1,value:a});i=e_.h.reducer(i,e),o.push(e);return}}if(d){let t=i.rows[u+1][c],a=e+t.tile.character;if(!t.tile.isBlank&&r.twoCharacterTiles.includes(a)){let t=e_.h.actions.changeCellValue({x:c,y:u,value:e}),a=e_.h.actions.changeCellValue({x:c,y:u+1,value:ep.EMPTY_CELL});i=e_.h.reducer(e_.h.reducer(i,t),a),o.push(t,a),p();return}}if(l){let t=i.rows[u][c-1],a=t.tile.character+e;if(!t.tile.isBlank&&r.twoCharacterTiles.includes(a)){let e=e_.h.actions.changeCellValue({x:c-1,y:u,value:a});i=e_.h.reducer(i,e),o.push(e);return}}if(s){let t=i.rows[u][c+1],a=e+t.tile.character;if(!t.tile.isBlank&&r.twoCharacterTiles.includes(a)){let t=e_.h.actions.changeCellValue({x:c,y:u,value:e}),a=e_.h.actions.changeCellValue({x:c+1,y:u,value:ep.EMPTY_CELL});i=e_.h.reducer(e_.h.reducer(i,t),a),o.push(t,a),p();return}}if(!d||!s){let t=i.rows[u][c],a=t.tile.character+e;if(!t.tile.isBlank&&r.twoCharacterTiles.includes(a)){let e=e_.h.actions.changeCellValue({x:c,y:u,value:a});i=e_.h.reducer(i,e),o.push(e);return}}let h=e_.h.actions.changeCellValue({x:c,y:u,value:e});i=e_.h.reducer(i,h),o.push(h),p()}),g(Math.abs(e.x-c)+Math.abs(e.y-u)),o.forEach(n)},[r,d,n,t,g,h,a]),_=(0,x.useCallback)(e=>{let t=v(e.target);if(!t)return;let a=e3(e.target);if(!a){n(e_.h.actions.changeCellValue({...t,value:ep.EMPTY_CELL})),g(-1);return}if(a===ep.EMPTY_CELL){let{x:e,y:a}=t;if(h.current[a][e].hasTile())return void n(e_.h.actions.toggleCellIsBlank(t))}f(t,a)},[n,f,g,h,v]),w=(0,x.useCallback)(()=>u(te),[]),b=(0,x.useCallback)((e,t)=>{i({x:e,y:t})},[]),y=(0,x.useMemo)(()=>e5({onArrowDown:e=>{e.preventDefault(),"horizontal"===c?w():m(0,1)},onArrowLeft:e=>{e.preventDefault(),"vertical"===c?(w(),m("ltr"===ev.x[l].direction?-1:0,0)):m("ltr"===ev.x[l].direction?-1:1,0)},onArrowRight:e=>{e.preventDefault(),"vertical"===c?(w(),m("ltr"===ev.x[l].direction?0:-1,0)):m("ltr"===ev.x[l].direction?1:-1,0)},onArrowUp:e=>{e.preventDefault(),"horizontal"===c&&w(),m(0,-1)},onBackspace:e=>{let t=v(e.target);t&&(e.preventDefault(),n(e_.h.actions.changeCellValue({...t,value:ep.EMPTY_CELL})),g(-1))},onDelete:e=>{let t=v(e.target);t&&(e.preventDefault(),n(e_.h.actions.changeCellValue({...t,value:ep.EMPTY_CELL})),g(1))},onKeyDown:e=>{let t=v(e.target);if(!t)return;let{x:a,y:l}=t,s=e.key.toLocaleLowerCase(),o=r.getTwoCharacterTileByPrefix(s);if((e.ctrlKey||e.metaKey)&&o){e.preventDefault(),n(e_.h.actions.changeCellValue({x:a,y:l,value:o})),g(1);return}let i=h.current[l][a];if((e.ctrlKey||e.metaKey)&&"g"===s){e.preventDefault(),i.hasTile()||n(ew.g.actions.toggle(t));return}let c=i.tile.character+s;if(r.twoCharacterTiles.includes(c)){e.preventDefault(),n(e_.h.actions.changeCellValue({...t,value:c})),g(1);return}e.target instanceof HTMLInputElement&&e.target.value.toLocaleLowerCase()===s&&(e.preventDefault(),g(1))},onSpace:e=>{let t=v(e.target);t&&(e.preventDefault(),n(e_.h.actions.toggleCellIsBlank(t)))}}),[m,r,c,n,v,l,g,w,h]),N=(0,x.useCallback)(e=>{if(!(e.target instanceof HTMLInputElement))return;let t=v(e.target);t&&(e.preventDefault(),f(t,e.clipboardData.getData("text/plain").toLocaleLowerCase()))},[v,f]);return[{activeIndex:p,direction:c,inputRefs:s},{insertValue:f,onChange:_,onDirectionToggle:w,onFocus:b,onKeyDown:y,onPaste:N}]})(s),N=(()=>{let e=(0,V.N)($.zg),t=(0,V.N)($.JV),{direction:a}=ev.x[t],n=function(e){let{config:t,direction:a}=e,n=tt.get(t)?.get(a);if(n)return n;let r=`data:image/svg+xml,${encodeURIComponent(function(e){var t,a;let n,{config:r,direction:l}=e,s=40+(80+j.gP)*r.boardWidth-j.gP,o=40+(80+j.gP)*r.boardHeight-j.gP,i=e=>40*("ltr"===l)+e.x*(80+j.gP),c=e=>40+e.y*(80+j.gP),u={x:Math.floor(r.boardWidth/2),y:Math.floor(r.boardHeight/2)},d={direction:l,height:o,width:s};return[`<svg height="${o}" viewBox="0 0 ${s} ${o}" width="${s}" xmlns="http://www.w3.org/2000/svg">`,(n='<rect height="64" rx="8" width="64" x="8" y="8"/>',`<defs><symbol id="b">${n}</symbol><symbol id="b2">${n}${ta(2)}</symbol><symbol id="b3">${n}${ta(3)}</symbol><symbol id="b4">${n}${ta(4)}</symbol></defs>`),function(e){let{direction:t,height:a,width:n}=e,r="ltr"===t?0:n-40+j.gP;return`<rect fill="${j.hO}" height="${a}" rx="8" width="${n}" x="0" y="0"/><rect fill="white" height="${a-40}" width="${n-40}" x="${40*("ltr"===t)}" y="40"/><rect fill="${j.hO}" height="40" rx="8" width="${n}" x="0" y="0"/><rect fill="${j.hO}" height="${a}" rx="8" width="40" x="${r}" y="0"/>`}(d),function(e,t){let{direction:a,height:n,width:r}=t,l=[];l.push(tn(40-j.gP/2,r)),l.push(tr("ltr"===a?40-j.gP/2:r-40+j.gP/2,n));for(let t=1;t<e.boardHeight;++t)l.push(tn(40+t*(80+j.gP)-j.gP/2,r));let s=40*("ltr"===a);for(let t=1;t<e.boardWidth;++t)l.push(tr(s+t*(80+j.gP)-j.gP/2,n));return l.join("")}(r,d),function(e){let{config:t,getX:a,getY:n}=e;return t.bonuses.map(e=>`<use fill="${e.type===ep.BONUS_WORD?j.Ln[e.multiplier]:e.score?j.Ip[e.score]:j.Gr[e.multiplier]}" href="#${function(e){if(e.type!==ep.BONUS_WORD)return"b";switch(e.multiplier){case 2:return"b2";case 3:return"b3";case 4:return"b4";default:return"b"}}(e)}" x="${a(e)}" y="${n(e)}"/>`).join("")}({config:r,getX:i,getY:c}),(t=i(u),a=c(u),`<rect fill="${j.Lo}" height="64" rx="8" width="64" x="${t+8}" y="${a+8}"/><svg height="32" viewBox="0 0 16 16" width="32" x="${t+24}" y="${a+24}"><path 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" fill="white"/></svg>`),"</svg>"].join("")}({config:t,direction:a}))}`,l=tt.get(t)??new Map;return l.set(a,r),tt.set(t,l),r}({config:e,direction:a});return(0,x.useMemo)(()=>({backgroundImage:`url(${n})`}),[n])})(),[k,M]=(0,x.useState)(!1),[E,L]=(0,x.useState)(!1),A=m[h.y][h.x],P=s[h.y][h.x],T=(0,eh.we)({middleware:[(0,tl.cY)(e=>{let{rects:t}=e;return{mainAxis:-j.CP,alignmentAxis:j.CP-t.floating.width}}),(0,tl.BN)()],placement:"top-end",whileElementsMounted:ts.ll}),S=(0,eh.we)({middleware:[(0,tl.cY)({mainAxis:-j.CP,alignmentAxis:j.CP}),(0,tl.BN)()],placement:"top",whileElementsMounted:ts.ll}),z=(0,eh.we)({placement:"top-start",whileElementsMounted:ts.ll}),R=(0,x.useCallback)(e=>{let t=T.refs.floating.current?.contains(e.relatedTarget),a=e.currentTarget.contains(e.relatedTarget),n=z.refs.floating.current?.contains(e.relatedTarget),r=S.refs.floating.current?.contains(e.relatedTarget);t||a||n||r||M(!1)},[T.refs.floating,z.refs.floating,S.refs.floating]),O=(0,x.useCallback)(e=>{T.refs.setReference(e),z.refs.setReference(e),S.refs.setReference(e)},[T.refs,z.refs,S.refs]),I=(0,x.useCallback)((e,t)=>{let a=m[t][e].current;O(a?.parentElement||null),w(e,t),M(!0),L(!1)},[m,w,O]),W=(0,x.useCallback)(()=>{L(!0)},[]),F=(0,x.useCallback)(e=>{0===e.trim().length?a(e_.h.actions.changeCellValue({...h,value:ep.EMPTY_CELL})):v(h,e.toLocaleLowerCase(r)),L(!1),a(en.A.actions.submit()),M(!1)},[h,a,v,r]),K=(0,x.useCallback)(()=>{"keyboard"===i&&A.current?.focus(),a(e_.h.actions.toggleCellIsBlank(P))},[P,a,i,A]),H=(0,x.useCallback)(()=>{"keyboard"===i&&A.current?.focus(),_()},[i,A,_]),U=(0,x.useCallback)(()=>{"keyboard"===i&&A.current?.focus(),a(ew.g.actions.toggle(P))},[P,a,i,A]),J=(0,em.A)(()=>M(!1),{ignoreClass:[ex().floating]});return(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)(eP,{className:t,cellFilters:c,config:l,direction:ev.x[r].direction,hoveredCharacter:d,inputRefs:m,locale:r,reachableCells:o,ref:J,rows:s,showCoordinates:u,style:N,translate:n,onBlur:R,onChange:g,onFocus:I,onKeyDown:b,onPaste:y}),(0,f.jsxs)(eh.XF,{children:[(0,f.jsx)("div",{className:B()(ex().floating,ex().focus,{[ex().hidden]:!k}),ref:z.refs.setFloating,style:{position:z.strategy,top:`calc(${z.y??0}px + var(--cell-size))`,left:z.x,display:z.isPositioned?"block":"none",opacity:+!!k,visibility:null===z.x||null===z.y?"hidden":"visible"},tabIndex:0}),k&&!E&&(0,f.jsx)(eZ,{cell:P,className:ex().floating,direction:p,ref:T.refs.setFloating,style:{position:T.strategy,top:T.y??0,left:T.x??0},onDirectionToggle:H,onEnterWord:W,onToggleBlank:K,onToggleFilterCell:U}),k&&E&&(0,f.jsx)(eG,{className:ex().floating,direction:p,initialValue:P.tile.character,ref:S.refs.setFloating,style:{position:S.strategy,top:S.y??0,left:S.x??0},onDirectionToggle:H,onSubmit:F})]})]})};var th=a(4056),tp=a(6474),tm=a(2314),tv=a(9095),tg=a.n(tv);let tf=Object.assign((0,x.forwardRef)((e,t)=>{let{className:a,style:n,value:r,onBlur:l,onChange:s,onSubmit:o,...i}=e,c=(0,C.wA)(),u=(0,D.W)(),d=(0,V.N)($.zg),[h,p]=(0,x.useState)(null),m=(0,x.useCallback)(e=>{let t;e.preventDefault();let a=(t=e4(d,r,{upperCaseDigraphsOnly:!0}),Array.from({length:d.rackSize},(e,a)=>"string"==typeof t[a]?t[a]:null));c(tm.o.actions.changeCharacters({characters:a,index:0})),o(e)},[d,c,r,o]);return(0,x.useEffect)(()=>{h&&(h.focus(),h.select(),h.scrollIntoView({block:"end",inline:"center"}))},[h]),(0,f.jsx)("form",{className:B()(tg().form,a),ref:t,style:n,onSubmit:m,...i,children:(0,f.jsx)("input",{autoCapitalize:"none",autoComplete:"off",autoCorrect:"off",className:tg().input,placeholder:u("rack.touchscreen.placeholder"),ref:p,spellCheck:!1,value:r,onBlur:l,onChange:s})})}),{styles:tg()});var t_=a(8075),tw=a.n(t_);let tb=e=>{let{activeIndexRef:t,character:a,className:n,index:r,inputRef:l,tile:s,onChange:o,onKeyDown:i,onFocus:c}=e,u=(0,C.wA)(),d=(0,D.W)(),h=(0,V.N)($.JV),p=(0,V.N)($.zg),m=(0,V.N)($.QN),v=(0,V.N)(e=>(0,$.fy)(e,a)),g=(0,V.N)(e=>(0,$.sE)(e,a)),_=(0,V.N)(ef.R),w=null!==a&&null!==_&&_===a,b=(0,x.useCallback)(e=>{"touchscreen"===m&&(e.preventDefault(),e.target.blur(),c()),t.current=r},[t,r,m,c]),y=(0,x.useCallback)(e=>{e.preventDefault(),e.stopPropagation();let t=e3(e.target),a=t?e4(p,t):[null];u(tm.o.actions.changeCharacters({characters:a,index:r})),o(e)},[p,u,r,o]),N=(0,x.useMemo)(()=>e5({onBackspace:e=>{e.preventDefault(),u(tm.o.actions.changeCharacter({character:null,index:r}))},onKeyDown:e=>{if((e.ctrlKey||e.metaKey)&&p.isTwoCharacterTilePrefix(e.key.toLocaleLowerCase())){e.preventDefault(),e.stopPropagation();let t=p.getTwoCharacterTileByPrefix(e.key.toLocaleLowerCase());t&&u(tm.o.actions.changeCharacter({character:t,index:r}))}i(e)}}),[p,u,r,i]),j=(0,x.useCallback)(e=>{"touchscreen"===m&&e.preventDefault(),c()},[m,c]),k=(0,x.useCallback)(e=>{"touchscreen"===m&&e.preventDefault(),c()},[m,c]);return(0,f.jsx)(eM.F,{"aria-label":d("rack.tile.location",{index:(r+1).toLocaleString(h)}),autoFocus:"keyboard"===m&&0===r,className:B()(tw().rackTile,n),character:null===a?void 0:a,highlighted:null!==s||w,inputRef:l,isBlank:a===ep.BLANK,isValid:g,locale:h,placeholder:d("rack.placeholder")[r],points:v,raised:!0,tabIndex:0===r?void 0:-1,onChange:y,onFocus:b,onKeyDown:N,onMouseDown:j,onTouchStart:k},r)};var tx=a(1090),tC=a.n(tx),ty=a(8085);let tN=(0,H.Mz)([ti.i,ee.i1],ty._),tj=e=>{let{className:t}=e,a=(0,C.wA)(),n=(0,V.N)($.zg),r=(0,V.N)($.JV),l=(0,V.N)(ti.i),s=(0,V.N)($.QN),o=(0,V.N)(tN),i=o.length,c=(0,x.useMemo)(()=>Array.from({length:i}).map(()=>(0,x.createRef)()),[i]),u=(0,x.useRef)(void 0),[d,h]=(0,x.useState)(!1),[p,m]=(0,x.useState)(""),{direction:v}=ev.x[r],g="touchscreen"===s&&d,_=(0,x.useRef)(null),w=(0,eh.we)({placement:"bottom-start",whileElementsMounted:ts.ll});(0,em.A)(()=>h(!1),{ignoreClass:[tf.styles.form,tf.styles.input],refs:[_]});let b=(0,x.useCallback)(e=>{let t=Math.min(Math.max((u.current||0)+e,0),i-1),a=c[t].current;a&&a.focus(),u.current=t},[u,i,c]),y=(0,x.useCallback)(e=>{let t=e3(e.target),a=t?e4(n,t):[];b(t?a.length:-1)},[b,n]),N=(0,x.useCallback)(e=>{let t=u.current;if(void 0===t)return;e.preventDefault();let r=e.clipboardData.getData("text/plain").toLocaleLowerCase(),l=r?e4(n,r):[];b(r?l.length:-1),a(tm.o.actions.changeCharacters({characters:l,index:t}))},[b,n,a]),j=(0,x.useCallback)(()=>{h(!0),w.refs.setPositionReference(_.current),m(l.filter(e=>null!==e).map(e=>e.length>1?e.toLocaleUpperCase(r):e).join(""))},[w.refs,r,l,_]),k=(0,x.useMemo)(()=>e5({onArrowLeft:e=>{e.preventDefault(),b("ltr"===v?-1:1)},onArrowRight:e=>{e.preventDefault(),b("ltr"===v?1:-1)},onBackspace:e=>{e.preventDefault(),b(-1)},onDelete:e=>{let t=u.current;void 0!==t&&(e.preventDefault(),a(tm.o.actions.changeCharacters({characters:[null],index:t})),b(1))},onKeyDown:e=>{(e.ctrlKey||e.metaKey)&&n.isTwoCharacterTilePrefix(e.key.toLocaleLowerCase())?b(1):e.currentTarget.value.toLocaleLowerCase()===e.key.toLocaleLowerCase()&&(e.preventDefault(),e.stopPropagation(),b(1))}}),[b,n,v,a]);return(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)("div",{className:B()(tC().rack,t,{[tC().hidden]:g}),"data-testid":"rack",ref:_,onPaste:N,children:o.map((e,t)=>{let{character:a,tile:n}=e;return(0,f.jsx)(tb,{activeIndexRef:u,character:a,className:B()(tC().tile,{[tC().sharpLeft]:0!==t,[tC().sharpRight]:t!==o.length-1}),index:t,inputRef:c[t],tile:n,onChange:y,onKeyDown:k,onFocus:j},t)})}),g&&(0,f.jsx)(eh.XF,{children:(0,f.jsx)(tf,{ref:w.refs.setFloating,style:{position:w.strategy,top:w.y?`calc(${w.y}px - var(--rack-tile-size))`:0,left:w.x??0},value:p,onBlur:()=>h(!1),onChange:e=>m(e.target.value),onSubmit:()=>h(!1)})})]})};var tk=a(7198);function tM(){return(tM=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)({}).hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e}).apply(null,arguments)}let tB=e=>x.createElement("svg",tM({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16"},e),m||(m=x.createElement("path",{fill:"currentColor",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-.708"})));function tE(){return(tE=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)({}).hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e}).apply(null,arguments)}let tL=e=>x.createElement("svg",tE({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16"},e),v||(v=x.createElement("path",{fill:"currentColor",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 0"})));function tA(){return(tA=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)({}).hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e}).apply(null,arguments)}let tP=e=>x.createElement("svg",tA({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16"},e),g||(g=x.createElement("path",{fill:"currentColor",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-.708"})));var tT=a(7722),tS=a.n(tT);let tz=e=>{let{className:t}=e,a=(0,D.W)()("common.loading");return(0,f.jsx)("div",{"aria-label":a,className:B()(tS().spinner,t),role:"status"})};var tR=a(5903),tO=a.n(tR);let tI=e=>{let{className:t}=e,a=(0,C.wA)(),n=(0,D.W)(),r=(0,V.N)(ee.jt),l=(0,V.N)(J.J);return(0,f.jsx)(e$.$,{"aria-label":n("results.insert"),className:B()(tO().insertButton,t),disabled:l||!r,Icon:er.A,iconClassName:tO().icon,type:"submit",variant:"primary",onClick:()=>{r&&a(ea.N.actions.applyResult(r))}})};var tD=a(95),tV=a.n(tD);let t$=e=>{let{className:t,onResultClick:a,...n}=e,r=(0,C.wA)(),l=(0,D.W)(),s=(0,V.N)($.JV),o=(0,V.N)(q.M9),i=(0,V.N)(J.J),c=(0,V.N)(ee.To),u=(0,V.N)(ee.jt),d=u&&c?c.findIndex(e=>e.id===u.id):-1,h=i||!u,p=!c||d<=0||h,m=!c||d>=c.length-1||h;return(0,f.jsxs)("div",{className:B()(tV().resultCandidatePicker,t),...n,children:[(0,f.jsxs)("div",{className:B()(tV().buttons,{[tV().bothEnabled]:!p&&!m}),children:[(0,f.jsx)(e$.$,{"aria-label":l("common.previous"),className:tV().button,disabled:p,Icon:tL,onClick:()=>{if(!p){let e=c[d-1];r(ea.N.actions.changeResultCandidate(e))}}}),(0,f.jsx)(e$.$,{"aria-label":l("common.next"),className:tV().button,disabled:m,Icon:tP,onClick:()=>{if(!m){let e=c[d+1];r(ea.N.actions.changeResultCandidate(e))}}})]}),(0,f.jsxs)("button",{"aria-label":l("results"),className:tV().resultCandidate,disabled:h,type:"button",onClick:a,children:[u&&(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)("div",{className:tV().points,children:u.points.toLocaleString(s)}),(0,f.jsx)("div",{className:tV().word,children:u.word})]}),!u&&(0,f.jsx)("div",{className:tV().word,children:" "}),(0,f.jsxs)("div",{className:tV().iconContainer,children:[o&&(0,f.jsx)(tz,{className:tV().loading}),!o&&(0,f.jsx)(tB,{"aria-hidden":"true",className:tV().icon,role:"img"})]})]}),(0,f.jsx)(tI,{className:tV().insert})]})};var tW=a(5674),tF=a.n(tW);let tK=(0,x.memo)(e=>{let{className:t,onShowResults:a}=e,n=(0,C.wA)(),r=(0,D.W)(),l=(0,G.J)(),s=(0,X.U)("<l"),o=(0,V.N)(q.ax),i=(0,V.N)(J.J),c=(0,V.N)(ee.To),u=et(),[d]=c||[],h=(0,x.useMemo)(()=>({onClick:e=>{e===(0,ee.jt)(u.getState())?n(ea.N.actions.applyResult(e)):n(ea.N.actions.changeResultCandidate(e))}}),[n,u]),p=(0,x.useMemo)(()=>({onBlur:()=>{n(ea.N.actions.changeResultCandidate(null))},onClick:e=>{n(ea.N.actions.applyResult(e))},onFocus:e=>{n(ea.N.actions.changeResultCandidate(e))},onMouseEnter:e=>{n(ea.N.actions.changeResultCandidate(e))},onMouseLeave:()=>{n(ea.N.actions.changeResultCandidate(null))}}),[n]),m=e=>{e.preventDefault(),n(en.A.actions.submit())};return(0,x.useEffect)(()=>{s&&d&&!i&&n(ea.N.actions.changeResultCandidate(d))},[d,n,s,i]),(0,f.jsxs)("div",{className:B()(tF().solver,t),children:[(0,f.jsx)("div",{className:tF().container,children:(0,f.jsxs)("div",{className:tF().content,children:[(0,f.jsxs)("form",{className:tF().boardContainer,onSubmit:m,children:[(0,f.jsx)(td,{className:tF().board}),(0,f.jsx)("input",{className:tF().submitInput,tabIndex:-1,type:"submit"})]}),(0,f.jsxs)("div",{className:tF().column,children:[(0,f.jsx)(tk.n,{callbacks:l?h:p,className:tF().results}),(0,f.jsxs)("div",{"data-testid":"dictionary",className:tF().dictionaryContainer,children:[(0,f.jsx)(th.b,{className:tF().dictionary}),(0,f.jsx)(tp.$,{className:tF().dictionaryInput})]})]})]})}),(0,f.jsx)("div",{className:tF().bottomContainer,children:(0,f.jsxs)("div",{className:tF().bottomContent,children:[(0,f.jsxs)("form",{onSubmit:m,children:[(0,f.jsx)(tj,{}),(0,f.jsx)("input",{className:tF().submitInput,tabIndex:-1,type:"submit"})]}),(0,f.jsxs)("div",{className:tF().controls,children:[(0,f.jsx)(t$,{onResultClick:a}),o&&(0,f.jsx)(ed,{className:tF().emptyState,variant:"error",children:o.message}),c&&0===c.length&&!i&&(0,f.jsx)(ed,{className:tF().emptyState,variant:"warning",children:r("results.empty-state.no-results")})]})]})})]})});var tH=a(2359),tU=a(1838);function tJ(e,t){return!e[t]&&(e[t]=!0,!0)}var tZ=a(7133);let tQ=!1,tY=async()=>{if(!globalThis.navigator||!("serviceWorker"in globalThis.navigator))return;await (0,tZ.$J)();let{Workbox:e}=await a.e(990).then(a.bind(a,8990));await new e("/service-worker.js").register()};var tG=a(6413),tX=a(2237),tq=a.n(tX);let t0=b()(()=>Promise.all([a.e(587),a.e(341),a.e(277)]).then(a.bind(a,8277)).then(e=>e.DictionaryModal),{loadableGenerated:{webpack:()=>[8277]},ssr:!1}),t5=b()(()=>Promise.all([a.e(802),a.e(587),a.e(341),a.e(912)]).then(a.bind(a,6912)).then(e=>e.KeyMapModal),{loadableGenerated:{webpack:()=>[6912]},ssr:!1}),t1=b()(()=>Promise.all([a.e(224),a.e(587),a.e(341),a.e(744),a.e(541)]).then(a.bind(a,6541)).then(e=>e.MenuModal),{loadableGenerated:{webpack:()=>[6541]},ssr:!1}),t2=b()(()=>Promise.all([a.e(432),a.e(587),a.e(341),a.e(127)]).then(a.bind(a,4127)).then(e=>e.RemainingTilesModal),{loadableGenerated:{webpack:()=>[4127]},ssr:!1}),t7=b()(()=>Promise.all([a.e(368),a.e(587),a.e(341),a.e(106)]).then(a.bind(a,9106)).then(e=>e.ResultsModal),{loadableGenerated:{webpack:()=>[9106]},ssr:!1}),t8=b()(()=>Promise.all([a.e(587),a.e(341),a.e(744),a.e(631)]).then(a.bind(a,8631)).then(e=>e.SettingsModal),{loadableGenerated:{webpack:()=>[8631]},ssr:!1}),t4=b()(()=>Promise.all([a.e(618),a.e(587),a.e(341),a.e(711)]).then(a.bind(a,7711)).then(e=>e.WordsModal),{loadableGenerated:{webpack:()=>[7711]},ssr:!1}),t6=JSON.stringify({"@context":"https://schema.org","@type":"WebApplication",name:"Scrabble Solver",alternateName:"Scrabble Solver 2",url:`${j.W6}/`,description:j.b2,applicationCategory:"GameApplication",operatingSystem:"Any",browserRequirements:"Requires JavaScript",image:`${j.W6}/og.png`,offers:{"@type":"Offer",price:"0",priceCurrency:"USD"},inLanguage:["en-US","en-GB","de-DE","es-ES","fa-IR","fr-FR","pl-PL","ro-RO","tr-TR"],featureList:["Finds the highest-scoring words for a given board and rack","Supports Scrabble, Super Scrabble, Scrabble Duel, Letter League, Crossplay, Literaki, and Kelimelik","Dictionaries and word definitions in 8 languages","Works offline once a dictionary is cached","Free, open source, no ads, no sign-up"],sameAs:[j.g,j.v0],author:{"@type":"Person",name:"Kamil Mielnik",url:"https://kamilmielnik.com"}});var t3=!0;let t9=e=>{var t,n;let r,l,s,o,i,c,{version:u}=e,d=(0,C.wA)(),h=(0,V.N)($.zg),p=(0,V.N)($.JV),m=(0,V.N)(tH.M),[v,g]=(0,x.useState)({dictionary:!1,keyMap:!1,menu:!1,remainingTiles:!1,results:!1,settings:!1,words:!1}),[w,b]=(0,x.useState)({}),y=(0,x.useCallback)(e=>{g(t=>({...t,...e})),b(t=>{let a=Object.keys(e).filter(a=>e[a]&&!t[a]);if(0===a.length)return t;let n={...t};for(let e of a)n[e]=!0;return n})},[]),N=(0,x.useCallback)(()=>d((0,tG.c)()),[d]),M=(0,x.useCallback)(()=>y({dictionary:!0}),[y]),B=(0,x.useCallback)(()=>y({keyMap:!0}),[y]),E=(0,x.useCallback)(()=>y({menu:!0}),[y]),L=(0,x.useCallback)(()=>y({remainingTiles:!0}),[y]),A=(0,x.useCallback)(()=>y({results:!0}),[y]),P=(0,x.useCallback)(()=>y({settings:!0}),[y]),T=(0,x.useCallback)(()=>y({words:!0}),[y]),S=(0,x.useCallback)(()=>y({dictionary:!1}),[y]),z=(0,x.useCallback)(()=>y({keyMap:!1}),[y]),R=(0,x.useCallback)(()=>y({menu:!1}),[y]),O=(0,x.useCallback)(()=>y({remainingTiles:!1}),[y]),I=(0,x.useCallback)(()=>y({results:!1}),[y]),D=(0,x.useCallback)(()=>y({settings:!1}),[y]),W=(0,x.useCallback)(()=>y({words:!1}),[y]);return t=ev.x[p].direction,(0,x.useEffect)(()=>{let e=document.body.parentElement;if(!e||e.dir===t)return e0.l;let a=e.dir;return e.dir=t,()=>{e.dir=a}},[t]),(0,x.useEffect)(()=>{let e=document.body.parentElement;if(!e||e.lang===p)return e0.l;let t=e.lang;return e.lang=p,()=>{e.lang=t}},[p]),r=(0,V.N)(tH.M),l=(0,V.N)(to.p),s=(0,V.N)(ti.i),o=(0,V.N)($.i0),i=(0,x.useRef)({board:!1,rack:!1,settings:!1}),(0,x.useEffect)(()=>{r&&l&&!tJ(i.current,"board")&&tU.L.setBoard(l)},[r,l]),(0,x.useEffect)(()=>{r&&s&&!tJ(i.current,"rack")&&tU.L.setRack(s)},[r,s]),(0,x.useEffect)(()=>{r&&!tJ(i.current,"settings")&&tU.L.setSettings(o)},[r,o]),(0,x.useEffect)(()=>{let e=document.documentElement;for(let{name:t,value:a,defaultValue:n}of[{name:"--board-cols",value:h.boardWidth,defaultValue:_.games.scrabble.boardWidth},{name:"--board-rows",value:h.boardHeight,defaultValue:_.games.scrabble.boardHeight},{name:"--rack-size",value:h.rackSize,defaultValue:_.games.scrabble.rackSize}])(e.style.getPropertyValue(t)||String(n))!==String(a)&&e.style.setProperty(t,String(a))},[h.boardHeight,h.boardWidth,h.rackSize]),(0,x.useEffect)(()=>{m&&document.documentElement.classList.remove(j.Ce)},[m]),n=()=>{tY(),d((0,tG.n)({version:u})),tQ||(tQ=!0,(0,tZ.cH)().then(()=>Promise.all([Promise.all([a.e(587),a.e(341),a.e(277)]).then(a.bind(a,8277)),Promise.all([a.e(802),a.e(587),a.e(341),a.e(912)]).then(a.bind(a,6912)),Promise.all([a.e(224),a.e(587),a.e(341),a.e(744),a.e(541)]).then(a.bind(a,6541)),Promise.all([a.e(432),a.e(587),a.e(341),a.e(127)]).then(a.bind(a,4127)),Promise.all([a.e(368),a.e(587),a.e(341),a.e(106)]).then(a.bind(a,9106)),Promise.all([a.e(587),a.e(341),a.e(744),a.e(631)]).then(a.bind(a,8631)),Promise.all([a.e(618),a.e(587),a.e(341),a.e(711)]).then(a.bind(a,7711))])))},c=(0,eq.F)(n),(0,x.useEffect)(()=>{c.current()},[c]),(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)("nav",{className:tq().nav,children:(0,f.jsxs)("div",{className:tq().navContent,children:[(0,f.jsx)("h1",{className:tq().navLogo,children:(0,f.jsx)("a",{className:tq().logoContainer,href:"/",title:u,children:(0,f.jsx)(k,{className:tq().logo})})}),(0,f.jsx)(Y,{onClear:N,onShowKeyMap:B,onShowMenu:E,onShowRemainingTiles:L,onShowSettings:P,onShowWords:T})]})}),(0,f.jsx)("main",{children:(0,f.jsx)(tK,{className:tq().solver,onShowResults:A})}),(0,f.jsx)("script",{dangerouslySetInnerHTML:{__html:t6},type:"application/ld+json"}),w.menu&&(0,f.jsx)(t1,{isOpen:v.menu,onClose:R,onShowDictionary:M,onShowRemainingTiles:L,onShowSettings:P,onShowWords:T}),w.settings&&(0,f.jsx)(t8,{isOpen:v.settings,onClose:D}),w.keyMap&&(0,f.jsx)(t5,{isOpen:v.keyMap,onClose:z}),w.words&&(0,f.jsx)(t4,{isOpen:v.words,onClose:W}),h.supportsRemainingTiles&&w.remainingTiles&&(0,f.jsx)(t2,{isOpen:v.remainingTiles,onClose:O}),w.results&&(0,f.jsx)(t7,{isOpen:v.results,onClose:I}),w.dictionary&&(0,f.jsx)(t0,{isOpen:v.dictionary,onClose:S})]})}},6205:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});var n,r=a(5729);function l(){return(l=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)({}).hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e}).apply(null,arguments)}let s=e=>r.createElement("svg",l({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16"},e),n||(n=r.createElement("path",{fill:"currentColor",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 0"})))},6474:(e,t,a)=>{"use strict";a.d(t,{$:()=>v});var n=a(6029),r=a(2988),l=a.n(r),s=a(9276),o=a(1734),i=a(7809),c=a(5526),u=a(8390),d=a(5035),h=a(7493),p=a(5214),m=a.n(p);let v=e=>{let{className:t}=e,a=(0,s.wA)(),r=(0,i.W)(),p=(0,c.N)(u.JV),{input:v}=(0,c.N)(d.Tx),{comma:g}=o.x[p];return(0,n.jsx)("form",{className:l()(m().dictionaryInput,t),onSubmit:e=>{e.preventDefault(),a(h.z.actions.submit())},children:(0,n.jsx)("input",{"aria-label":r("dictionary.input.title"),className:m().input,pattern:`.*[^\\s${g}].*`,placeholder:r("dictionary.input.placeholder"),required:!0,title:r("dictionary.input.title"),type:"text",value:v,onChange:e=>{a(h.z.actions.changeInput(e.target.value))}})})}},7100:e=>{e.exports={resultsInput:"ResultsInput_resultsInput__JbuXk",input:"ResultsInput_input__L_7DU"}},7198:(e,t,a)=>{"use strict";a.d(t,{n:()=>eL});var n,r,l,s,o,i,c,u,d,h,p,m,v,g,f,_,w,b=a(6029),x=a(2988),C=a.n(x),y=a(5729),N=a(2735),j=a(2626),k=a(9311),M=a(1734),B=a(5227),E=a(7809),L=a(5526),A=a(8390),P=a(5109),T=a(8744),S=a(4735),z=a(7852),R=a(2970),O=a(9276),I=a(3203),D=a(7100),V=a.n(D);let $=e=>{let{className:t}=e,a=(0,O.wA)(),n=(0,E.W)(),r=(0,L.N)(P.fI),[l,s]=(0,y.useState)(r);return(0,b.jsx)("form",{className:C()(V().resultsInput,t),onSubmit:e=>{e.preventDefault()},children:(0,b.jsx)("input",{className:V().input,placeholder:n("results.input.placeholder"),type:"text",value:l,onChange:e=>{let t=e.target.value;s(t),(e=>{try{return new RegExp(e),!0}catch{return!1}})(t)&&a(I.N.actions.changeQuery(t))}})})};var W=a(1644),F=a(8502),K=a(7668);let H=[F.N.Coordinates,F.N.Word,F.N.Points],U=[...H,F.N.BlanksCount,F.N.WordsCount],J=[...H],Z=[...H],Q=(0,W.Mz)([A.JV],e=>{let{consonants:t,vowels:a}=M.x[e],n=[F.N.Word,F.N.TilesCount,F.N.BlanksCount,F.N.WordsCount,F.N.Points,F.N.Coordinates];return a&&n.push(F.N.VowelsCount),t&&n.push(F.N.ConsonantsCount),n}),Y=()=>{let e,t,a,n=(0,L.N)(Q),{isLessThanXs:r,isLessThanS:l,isLessThanM:s,isLessThanL:o}=(e=(0,K.U)("<xs"),t=(0,K.U)("<s"),a=(0,K.U)("<m"),{isLessThanXs:e,isLessThanS:t,isLessThanM:a,isLessThanL:(0,K.U)("<l"),isLessThanXl:(0,K.U)("<xl")}),i=(0,y.useMemo)(()=>r?n.filter(e=>H.includes(e)):l?n.filter(e=>U.includes(e)):s?n.filter(e=>J.includes(e)):o?n.filter(e=>Z.includes(e)):n,[n,r,l,s,o]);return(0,y.useMemo)(()=>Object.fromEntries(i.map(e=>[e,!0])),[i])};function G(){return(G=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)({}).hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e}).apply(null,arguments)}let X=e=>y.createElement("svg",G({xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",viewBox:"0 0 16 16"},e),n||(n=y.createElement("path",{d:"M12.166 8.94c-.524 1.062-1.234 2.12-1.96 3.07A32 32 0 0 1 8 14.58a32 32 0 0 1-2.206-2.57c-.726-.95-1.436-2.008-1.96-3.07C3.304 7.867 3 6.862 3 6a5 5 0 0 1 10 0c0 .862-.305 1.867-.834 2.94M8 16s6-5.686 6-10A6 6 0 0 0 2 6c0 4.314 6 10 6 10"})),r||(r=y.createElement("path",{d:"M8 8a2 2 0 1 1 0-4 2 2 0 0 1 0 4m0 1a3 3 0 1 0 0-6 3 3 0 0 0 0 6"})));function q(){return(q=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)({}).hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e}).apply(null,arguments)}let ee=e=>y.createElement("svg",q({xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",viewBox:"0 0 16 16"},e),l||(l=y.createElement("path",{d:"M2.873 11.297V4.142H1.699L0 5.379v1.137l1.64-1.18h.06v5.961zm3.213-5.09v-.063c0-.618.44-1.169 1.196-1.169.676 0 1.174.44 1.174 1.106 0 .624-.42 1.101-.807 1.526L4.99 10.553v.744h4.78v-.99H6.643v-.069L8.41 8.252c.65-.724 1.237-1.332 1.237-2.27C9.646 4.849 8.723 4 7.308 4c-1.573 0-2.36 1.064-2.36 2.15v.057zm6.559 1.883h.786c.823 0 1.374.481 1.379 1.179.01.707-.55 1.216-1.421 1.21-.77-.005-1.326-.419-1.379-.953h-1.095c.042 1.053.938 1.918 2.464 1.918 1.478 0 2.642-.839 2.62-2.144-.02-1.143-.922-1.651-1.551-1.714v-.063c.535-.09 1.347-.66 1.326-1.678-.026-1.053-.933-1.855-2.359-1.845-1.5.005-2.317.88-2.348 1.898h1.116c.032-.498.498-.944 1.206-.944.703 0 1.206.435 1.206 1.07.005.64-.504 1.106-1.2 1.106h-.75z"})));var et=a(1076);function ea(){return(ea=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)({}).hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e}).apply(null,arguments)}let en=e=>y.createElement("svg",ea({xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",viewBox:"0 0 16 16"},e),s||(s=y.createElement("path",{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-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z"})),o||(o=y.createElement("path",{d:"m7.295 4.87-2.057 6.26h1.227l.48-1.61h2.047l.479 1.61h1.29L8.716 4.87Zm.648 1.198h.055l.75 2.532H7.193z"})));function er(){return(er=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)({}).hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e}).apply(null,arguments)}let el=e=>y.createElement("svg",er({xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",viewBox:"0 0 16 16"},e),i||(i=y.createElement("path",{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-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z"})),c||(c=y.createElement("path",{d:"M5.658 4.87v6.26H8.21c1.243 0 2.133-.646 2.133-1.765 0-.94-.63-1.453-1.365-1.527V7.78c.606-.152 1.05-.609 1.05-1.37 0-.959-.718-1.542-1.808-1.542zm1.203.93h1.075c.57 0 .896.311.896.821 0 .545-.358.854-1.17.854h-.8Zm0 2.538h1.15c.714 0 1.096.362 1.096.953 0 .597-.392.908-1.343.908H6.86Z"})));function es(){return(es=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)({}).hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e}).apply(null,arguments)}let eo=e=>y.createElement("svg",es({xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",viewBox:"0 0 16 16"},e),u||(u=y.createElement("path",{d:"M2.75 4v.75h7.75a.75.75 0 0 1 .75.75v7.75H12V5.5A1.5 1.5 0 0 0 10.5 4Z"})),d||(d=y.createElement("path",{d:"M12 14h-.75v.5a.75.75 0 0 1-.75.75h-9a.75.75 0 0 1-.75-.75v-9a.75.75 0 0 1 .75-.75H2V4h-.5A1.5 1.5 0 0 0 0 5.5v9A1.5 1.5 0 0 0 1.5 16h9a1.5 1.5 0 0 0 1.5-1.5Z"})),h||(h=y.createElement("path",{d:"M2 4.75h.75V4H2ZM12 14v-.75h-.75V14ZM4.75 2v.75h7.75a.75.75 0 0 1 .75.75v7.75H14V3.5A1.5 1.5 0 0 0 12.5 2ZM4 2.75V2h-.5A1.5 1.5 0 0 0 2 3.5V4h.75v-.5a.75.75 0 0 1 .75-.75ZM14 12h-.75v.5a.75.75 0 0 1-.75.75H12V14h.5a1.5 1.5 0 0 0 1.5-1.5ZM4 2.75h.75V2H4ZM14 12v-.75h-.75V12Z"})),p||(p=y.createElement("path",{d:"M5.5 0A1.5 1.5 0 0 0 4 1.5V2h.75v-.5A.75.75 0 0 1 5.5.75h9a.75.75 0 0 1 .75.75v9a.75.75 0 0 1-.75.75H14V12h.5a1.5 1.5 0 0 0 1.5-1.5v-9A1.5 1.5 0 0 0 14.5 0Z"})));function ei(){return(ei=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)({}).hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e}).apply(null,arguments)}let ec=e=>y.createElement("svg",ei({xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",viewBox:"0 0 16 16"},e),m||(m=y.createElement("path",{d:"M7.219.516a.516.516 0 0 1 .515.515V7.22a.516.516 0 0 1-.515.515H1.03a.516.516 0 0 1-.515-.515V1.03A.516.516 0 0 1 1.03.516ZM1.03 0A1.03 1.03 0 0 0 0 1.031V7.22A1.03 1.03 0 0 0 1.031 8.25H7.22A1.03 1.03 0 0 0 8.25 7.219V1.03A1.03 1.03 0 0 0 7.219 0Z"})),v||(v=y.createElement("path",{d:"M14.969 8.266a.516.516 0 0 1 .515.515v6.188a.516.516 0 0 1-.515.515H8.78a.516.516 0 0 1-.515-.515V8.78a.516.516 0 0 1 .515-.515ZM8.78 7.75A1.03 1.03 0 0 0 7.75 8.781v6.188A1.03 1.03 0 0 0 8.781 16h6.188A1.03 1.03 0 0 0 16 14.969V8.78a1.03 1.03 0 0 0-1.031-1.031ZM3.761 2.5l-1.06 3.25h.632l.248-.836h1.056l.246.836h.666L4.494 2.5Zm.335.622h.028l.387 1.314h-.802ZM2.954 10.25v3.25h1.275c.622 0 1.067-.336 1.067-.916 0-.489-.315-.755-.683-.793v-.03c.303-.078.526-.316.526-.711 0-.497-.36-.8-.905-.8zm.602.484h.537c.285 0 .448.16.448.425 0 .283-.179.443-.585.443h-.4Zm0 1.316h.575c.356 0 .548.188.548.495 0 .31-.197.471-.672.471h-.451Z"})),g||(g=y.createElement("path",{d:"M7.219 8.266a.516.516 0 0 1 .515.515v6.188a.516.516 0 0 1-.515.515H1.03a.516.516 0 0 1-.515-.515V8.78a.516.516 0 0 1 .515-.515ZM1.03 7.75A1.03 1.03 0 0 0 0 8.781v6.188A1.03 1.03 0 0 0 1.031 16H7.22a1.03 1.03 0 0 0 1.031-1.031V8.78A1.03 1.03 0 0 0 7.219 7.75ZM11.92 10.25c-.82 0-1.287.548-1.287 1.436v.39c0 .887.463 1.424 1.287 1.424.672 0 1.168-.413 1.197-1.01v-.061h-.586c-.025.32-.254.548-.607.548-.428 0-.673-.324-.673-.902v-.387c0-.58.249-.915.673-.915.348 0 .582.245.607.578h.586v-.057c-.027-.62-.523-1.044-1.197-1.044"})));function eu(){return(eu=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)({}).hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e}).apply(null,arguments)}let ed=e=>y.createElement("svg",eu({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16"},e),f||(f=y.createElement("path",{fill:"currentColor",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.293zm3.5 1a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5M7.5 6a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1zm0 3a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1zm0 3a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1z"})));function eh(){return(eh=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)({}).hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e}).apply(null,arguments)}let ep=e=>y.createElement("svg",eh({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16"},e),_||(_=y.createElement("path",{fill:"currentColor",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.5.5 0 0 1 .7.006l2 2a.5.5 0 1 1-.707.708L3.5 3.707zm3.5-9a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5M7.5 6a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1zm0 3a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1zm0 3a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1z"})));var em=a(1088),ev=a(2846),eg=a.n(ev);let ef=e=>{let{className:t,Icon:a,id:n,translationKey:r}=e,l=(0,O.wA)(),s=(0,E.W)(),o=(0,L.N)(P.Zu),i=(0,y.useCallback)(()=>{l(I.N.actions.sort(n))},[l,n]);return(0,b.jsx)(em.m,{tooltip:s(r),children:(0,b.jsx)("button",{"aria-label":s(r),className:C()(eg().headerButton,t),type:"button",onClick:i,children:(0,b.jsxs)("span",{className:eg().cell,children:[a&&(0,b.jsx)(a,{"aria-hidden":"true",className:eg().headerButtonIcon,role:"img"}),!a&&(0,b.jsx)("span",{className:eg().headerButtonLabel,children:s(r)}),o.column===n&&(0,b.jsxs)(b.Fragment,{children:[o.direction===F.U.Ascending&&(0,b.jsx)(ep,{className:eg().sortIcon}),o.direction===F.U.Descending&&(0,b.jsx)(ed,{className:eg().sortIcon})]})]})})})},e_=()=>{let e=Y();return(0,b.jsxs)("div",{className:eg().header,children:[e[F.N.Coordinates]&&(0,b.jsx)(ef,{className:eg().coordinates,Icon:X,id:F.N.Coordinates,translationKey:"settings.showCoordinates"}),e[F.N.Word]&&(0,b.jsx)(ef,{className:eg().word,id:F.N.Word,translationKey:"common.word"}),e[F.N.TilesCount]&&(0,b.jsx)(ef,{className:eg().stat,Icon:eo,id:F.N.TilesCount,translationKey:"common.tiles"}),e[F.N.VowelsCount]&&(0,b.jsx)(ef,{className:eg().stat,Icon:en,id:F.N.VowelsCount,translationKey:"common.vowels"}),e[F.N.ConsonantsCount]&&(0,b.jsx)(ef,{className:eg().stat,Icon:el,id:F.N.ConsonantsCount,translationKey:"common.consonants"}),e[F.N.BlanksCount]&&(0,b.jsx)(ef,{className:eg().stat,Icon:et.A,id:F.N.BlanksCount,translationKey:"common.blanks"}),e[F.N.WordsCount]&&(0,b.jsx)(ef,{className:eg().stat,Icon:ec,id:F.N.WordsCount,translationKey:"common.words"}),e[F.N.Points]&&(0,b.jsx)(ef,{className:eg().points,Icon:ee,id:F.N.Points,translationKey:"common.points"})]})};var ew=a(6544),eb=a.n(ew),ex=a(1372);let eC=e=>{let{children:t,className:a,dataTestId:n,translationKey:r,tooltip:l,value:s}=e,o=(0,E.W)(),i=(0,L.N)(A.JV),c=s.toLocaleString(i);return(0,b.jsx)(em.m,{tooltip:`${o(r)}: ${l||c}`,children:(0,b.jsx)("div",{className:C()(eg().cell,a),"data-testid":n,children:t||c})})},ey=e=>{let{index:t,highlightedIndex:a,results:n=[],onBlur:r=ex.l,onClick:l=ex.l,onFocus:s=ex.l,onMouseEnter:o=ex.l,style:i}=e,c=(0,y.useRef)(null),u=Y(),d=(0,L.N)(A.JV),h=(0,L.N)(P.fI),{direction:p,separator:m}=M.x[d],v=n[t],g=(0,L.N)(e=>(0,P.VZ)(e,t)),f="rtl"===p?[...v.words].reverse():v.words,_=(0,L.N)(e=>(0,P.Xm)(e,t));return(0,b.jsx)("button",{"aria-current":t===a?"true":void 0,"aria-hidden":g?void 0:"true","aria-label":v.word,className:C()(eg().result,{[eg().highlighted]:t===a}),"data-testid":"result",ref:c,style:i,type:"button",onBlur:e=>r(v,e),onClick:e=>l(v,e),onFocus:e=>s(v,e),onMouseEnter:e=>o(v,e),children:(0,b.jsxs)("span",{className:eg().resultContent,children:[u[F.N.Coordinates]&&(0,b.jsx)(eC,{className:eg().coordinates,translationKey:"settings.showCoordinates",value:_}),u[F.N.Word]&&(0,b.jsx)(eC,{className:eg().word,translationKey:"common.word",value:v.word,children:(0,b.jsx)(eb(),{highlightClassName:eg().highlight,searchWords:[h],textToHighlight:v.word})}),u[F.N.TilesCount]&&(0,b.jsx)(eC,{className:eg().stat,translationKey:"common.tiles",value:v.tilesCount}),u[F.N.VowelsCount]&&(0,b.jsx)(eC,{className:eg().stat,translationKey:"common.vowels",value:v.vowelsCount}),u[F.N.ConsonantsCount]&&(0,b.jsx)(eC,{className:eg().stat,translationKey:"common.consonants",value:v.consonantsCount}),u[F.N.BlanksCount]&&(0,b.jsx)(eC,{className:eg().stat,translationKey:"common.blanks",value:v.blanksCount}),u[F.N.WordsCount]&&(0,b.jsx)(eC,{className:eg().stat,translationKey:"common.words",tooltip:`${v.wordsCount.toLocaleString(d)} (${f.join(m)})`,value:v.wordsCount}),u[F.N.Points]&&(0,b.jsx)(eC,{className:eg().points,dataTestId:"points",translationKey:"common.points",value:v.points})]})})};function eN(){return(eN=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)({}).hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e}).apply(null,arguments)}let ej=e=>y.createElement("svg",eN({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16"},e),w||(w=y.createElement("path",{fill:"currentColor",d:"M11.742 10.344a6.5 6.5 0 1 0-1.397 1.398h-.001q.044.06.098.115l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85a1 1 0 0 0-.115-.1zM12 6.5a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0"})));var ek=a(5044),eM=a(3876),eB=a(3117);let eE=e=>{let{className:t}=e,a=(0,O.wA)(),n=(0,E.W)(),r=(0,L.N)(T.M9),l=(0,L.N)(ek.i),s=(0,L.N)(S.J),o=l.some(e=>null!==e);return(0,b.jsx)(eB.$,{"aria-label":n("results.solve"),className:t,disabled:r||!s||!o,Icon:ej,type:"submit",variant:"primary",onClick:()=>{a(eM.A.actions.submit())},children:n("results.solve")})},eL=e=>{let{callbacks:t,className:a,highlightedIndex:n}=e,r=(0,E.W)(),l=(0,L.N)(A.JV),{direction:s}=M.x[l],o=(0,L.N)(P.To),i=(0,L.N)(T.M9),[c]=(0,j.d7)(i,100),u=(0,L.N)(S.J),d=(0,L.N)(T.ax),h=(0,y.useMemo)(()=>({highlightedIndex:n,results:o,onBlur:t.onBlur,onClick:t.onClick,onFocus:t.onFocus,onMouseEnter:t.onMouseEnter}),[t,n,o]),p=(0,N.Ut)(null),m=(0,k.F)("number"==typeof n?n:0),v=void 0===d&&void 0!==o,g=v&&o.length>0&&!u;return(0,y.useEffect)(()=>{let e=globalThis.setTimeout(()=>{p.current?.scrollToRow({align:"center",behavior:"instant",index:m.current})},0);return()=>{globalThis.clearTimeout(e)}},[o,p,m]),(0,b.jsxs)("div",{"aria-busy":c,"aria-label":r("results"),className:C()(eg().results,a),"data-outdated":u,"data-testid":"results",role:"region",children:[(0,b.jsx)(e_,{}),(0,b.jsxs)("div",{"aria-live":"polite",className:eg().content,children:[void 0!==d&&(0,b.jsx)(z.p,{className:eg().emptyState,variant:"error",children:d.message}),void 0===d&&void 0===o&&(0,b.jsxs)(z.p,{className:eg().emptyState,variant:"info",children:[r("results.empty-state.uninitialized"),(0,b.jsx)(eE,{className:eg().solveButton})]}),v&&(0,b.jsxs)(b.Fragment,{children:[u&&(0,b.jsxs)(z.p,{className:eg().emptyState,variant:"info",children:[r("results.empty-state.outdated"),(0,b.jsx)(eE,{className:eg().solveButton})]}),!u&&0===o.length&&(0,b.jsx)(z.p,{className:eg().emptyState,variant:"warning",children:r("results.empty-state.no-results")}),!u&&o.length>0&&(0,b.jsx)("div",{className:eg().listContainer,onMouseLeave:t.onMouseLeave,children:(0,b.jsx)(N.B8,{className:C()(eg().list,{[eg().outdated]:u}),dir:s,listRef:p,overscanCount:B.tg,rowComponent:ey,rowCount:o.length,rowHeight:B.J2,rowProps:h})})]})]}),g&&(0,b.jsx)($,{className:eg().input}),c&&(0,b.jsx)(R.R,{})]})}},7445:(e,t,a)=>{"use strict";a.d(t,{J:()=>r});var n=a(2968);let r=()=>(0,n.Q)("(hover: none)",!1)},7474:(e,t,a)=>{"use strict";a.d(t,{G$:()=>s,X7:()=>l});var n=a(1644);let r=e=>e.verify,l=(0,n.Mz)([r],e=>e.invalidWords),s=(0,n.Mz)([r],e=>e.validWords)},7668:(e,t,a)=>{"use strict";a.d(t,{U:()=>s});var n=a(9855),r=a(5227),l=a(2968);let s=(e,t)=>{let a=(0,n.buildMediaQuery)(r.LO,e);return(0,l.Q)(a,t)}},7703:(e,t,a)=>{(window.__NEXT_P=window.__NEXT_P||[]).push(["/",function(){return a(6014)}])},7722:e=>{e.exports={spinner:"Spinner_spinner__dYTEm",rotate:"Spinner_rotate__kqx53",hide:"Spinner_hide__NZDja",show:"Spinner_show__ciwNs",wave:"Spinner_wave__IcOlx"}},7746:e=>{e.exports={tooltip:"Tooltip_tooltip__vAjij",arrow:"Tooltip_arrow__uIoGg"}},7786:(e,t,a)=>{"use strict";a.d(t,{m:()=>m});var n=a(6029),r=a(2988),l=a.n(r),s=a(5729),o=a(1790),i=a(9604),c=a(5227);let u=e=>e*(c.Uk+c.dW);var d=a(5902),h=a.n(d);let p=e=>{let{character:t,className:a,color:r,points:l,size:s,x:o,y:i}=e;return(0,n.jsxs)("g",{className:a,style:{fill:"var(--color--foreground)"},children:[(0,n.jsx)("rect",{height:s,rx:.15*s,style:{fill:r},width:s,x:o,y:i}),(0,n.jsx)("text",{dominantBaseline:"central",fontSize:.6*s,fontWeight:"bold",textAnchor:"middle",x:o+s/2,y:i+s/2,children:t}),"number"==typeof l&&(0,n.jsx)("text",{dominantBaseline:"text-after-edge",fontSize:.25*s,fontWeight:"bold",textAnchor:"end",x:o+.9*s,y:i+.95*s,children:l})]})},m=e=>{let t,a,r,{className:d,color:m,content:v,dropShadow:g,showPoints:f,style:_,wave:w}=e,b=(0,s.useMemo)(()=>(e=>{let{color:t,content:a,showPoints:n}=e;return a.map((e,a)=>e.map((r,l)=>{let s=e.slice(0,l).reduce((e,t)=>{let{length:a}=t;return e+a+1},0);return r.split("").map((e,r)=>(e=>{let{cellIndex:t,character:a,color:n,rowIndex:r,showPoints:l}=e,s=(0,o.getConfig)(i.Game.Literaki,i.Locale.EN_US).getCharacterPoints(a.toLowerCase()),d="number"==typeof s?c.wu[s]:c.vK;return{character:a,color:n||d,points:l?s:void 0,size:c.Uk,x:u(t),y:u(r)}})({cellIndex:s+r,character:e,color:t,rowIndex:a,showPoints:n}))})).flat(2)})({color:m,content:v,showPoints:f}),[m,v,f]);return(0,n.jsx)("svg",{className:l()(d,{[h().dropShadow]:g,[h().wave]:w}),style:_,viewBox:(a=(t=v.reduce((e,t)=>Math.max(e,t.reduce((e,t)=>e+t.length,0)+Math.max(t.length-1,0)),0))*(c.Uk+c.dW)-(0===t?0:c.dW),r=v.length*(c.Uk+c.dW)-(0===v.length?0:c.dW),`0 0 ${a} ${r}`),xmlns:"http://www.w3.org/2000/svg",children:b.map((e,t)=>(0,n.jsx)(p,{character:e.character,className:h().tile,color:e.color,points:e.points,size:e.size,x:e.x,y:e.y},t))})}},7809:(e,t,a)=>{"use strict";a.d(t,{W:()=>s});var n=a(5729),r=a(8390),l=a(5526);let s=()=>{let e=(0,l.N)(r.fF),t=(0,l.N)(r.JV);return(0,n.useCallback)((a,n)=>{let r=e[a];if(void 0===r)throw Error(`Untranslated key "${a}" in locale "${t}"`);return n?Object.entries(n).reduce((e,t)=>{let[a,n]=t;return e.replaceAll(`{{${a}}}`,n)},r):r},[e,t])}},7852:(e,t,a)=>{"use strict";a.d(t,{p:()=>_});var n=a(6029),r=a(2988),l=a.n(r),s=a(5729),o=a(1734),i=a(5227),c=a(7809),u=a(5526),d=a(8390),h=a(7786),p=a(3656),m=a.n(p);let v={error:"empty-state.error",info:"empty-state.info",success:"empty-state.success",warning:"empty-state.warning"},g={error:i.oH,info:i.fd,success:i.KG,warning:i.RO},f=new Intl.Segmenter(void 0,{granularity:"grapheme"}),_=e=>{let{children:t,className:a,variant:r}=e,i=(0,c.W)(),p=(0,u.N)(d.JV),{direction:_}=o.x[p],w=i(v[r]),b="ltr"===_?w:Array.from(f.segment(w),e=>e.segment).reverse().join(""),x=(0,s.useMemo)(()=>[b.toUpperCase().split(" ")],[b]);return(0,n.jsxs)("div",{className:l()(m().emptyState,a),children:[(0,n.jsx)(h.m,{className:m().tiles,color:g[r],content:x}),(0,n.jsx)("div",{children:t})]})}},8075:e=>{e.exports={rackTile:"RackTile_rackTile__rj6pD"}},8298:(e,t,a)=>{"use strict";a.d(t,{K:()=>c});var n=a(6029),r=a(2988),l=a.n(r),s=a(1088),o=a(1758),i=a.n(o);let c=Object.assign(e=>{let{className:t,Icon:a,tooltip:r,...o}=e;return(0,n.jsx)(s.m,{tooltip:r,children:(0,n.jsx)("button",{className:l()(i().iconButton,t),type:"button",...o,children:(0,n.jsx)("span",{className:i().content,children:(0,n.jsx)(a,{"aria-hidden":"true",className:i().icon,role:"img"})})})})},{Link:e=>{let{className:t,Icon:a,tooltip:r,...o}=e;return(0,n.jsx)(s.m,{tooltip:r,children:(0,n.jsx)("a",{className:l()(i().iconButton,t),...o,children:(0,n.jsx)("span",{className:i().content,children:(0,n.jsx)(a,{"aria-hidden":"true",className:i().icon,role:"img"})})})})}})},8504:e=>{e.exports={dictionary:"Dictionary_dictionary__FfG3h",content:"Dictionary_content___ZOAM",result:"Dictionary_result__kS3fd",isAllowed:"Dictionary_isAllowed__Jw9sB",isNotAllowed:"Dictionary_isNotAllowed__Y5tLd",resultContent:"Dictionary_resultContent__GBlvP",word:"Dictionary_word__faOui",definitions:"Dictionary_definitions__uU_Zv",definition:"Dictionary_definition__BJGy7"}},8655:(e,t,a)=>{"use strict";a.d(t,{A:()=>o});var n,r,l=a(5729);function s(){return(s=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)({}).hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e}).apply(null,arguments)}let o=e=>l.createElement("svg",s({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16"},e),n||(n=l.createElement("path",{fill:"currentColor",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-.5zm-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 2z"})),r||(r=l.createElement("path",{fill:"currentColor",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-.5m-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 0M7 9.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5m-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 0"})))},8744:(e,t,a)=>{"use strict";a.d(t,{M9:()=>o,ax:()=>s,eC:()=>i});var n=a(1644),r=a(9604);let l=e=>e.solve,s=(0,n.Mz)([l],e=>(0,r.isError)(e.error)?e.error:void 0),o=(0,n.Mz)([l],e=>e.isLoading),i=(0,n.Mz)([l],e=>e.lastSolvedParameters)},8974:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});var n,r=a(5729);function l(){return(l=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)({}).hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e}).apply(null,arguments)}let s=e=>r.createElement("svg",l({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16"},e),n||(n=r.createElement("path",{fill:"currentColor",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 1"})))},9095:e=>{e.exports={form:"InputPrompt_form__vuJMa",input:"InputPrompt_input__9jIi3"}},9115:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});var n,r=a(5729);function l(){return(l=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)({}).hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e}).apply(null,arguments)}let s=e=>r.createElement("svg",l({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},e),n||(n=r.createElement("path",{fill:"currentColor",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-5z"})))},9311:(e,t,a)=>{"use strict";a.d(t,{F:()=>r});var n=a(5729);let r=e=>{let t=(0,n.useRef)(e);return t.current=e,t}}},e=>{e.O(0,[101,636,593,792],()=>e(e.s=7703)),_N_E=e.O()}]);
@@ -1 +0,0 @@
1
- (()=>{"use strict";var e,t,r,o,a,n,i,c,d,l={},f={};function u(e){var t=f[e];if(void 0!==t)return t.exports;var r=f[e]={exports:{}},o=!0;try{l[e].call(r.exports,r,r.exports,u),o=!1}finally{o&&delete f[e]}return r.exports}u.m=l,e=[],u.O=(t,r,o,a)=>{if(r){a=a||0;for(var n=e.length;n>0&&e[n-1][2]>a;n--)e[n]=e[n-1];e[n]=[r,o,a];return}for(var i=1/0,n=0;n<e.length;n++){for(var[r,o,a]=e[n],c=!0,d=0;d<r.length;d++)(!1&a||i>=a)&&Object.keys(u.O).every(e=>u.O[e](r[d]))?r.splice(d--,1):(c=!1,a<i&&(i=a));if(c){e.splice(n--,1);var l=o();void 0!==l&&(t=l)}}return t},u.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return u.d(t,{a:t}),t},r=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,u.t=function(e,o){if(1&o&&(e=this(e)),8&o||"object"==typeof e&&e&&(4&o&&e.__esModule||16&o&&"function"==typeof e.then))return e;var a=Object.create(null);u.r(a);var n={};t=t||[null,r({}),r([]),r(r)];for(var i=2&o&&e;"object"==typeof i&&!~t.indexOf(i);i=r(i))Object.getOwnPropertyNames(i).forEach(t=>n[t]=()=>e[t]);return n.default=()=>e,u.d(a,n),a},u.d=(e,t)=>{for(var r in t)u.o(t,r)&&!u.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},u.f={},u.e=e=>Promise.all(Object.keys(u.f).reduce((t,r)=>(u.f[r](e,t),t),[])),u.u=e=>"static/chunks/"+e+"."+({18:"8b91e137d239e15c",106:"e414e88694add27f",127:"125d896a19061d71",277:"6785dfaf22fdb0b7",307:"67f52f13e3d60d4e",341:"79535ba85bf1986f",363:"01eed3233f92b6a4",422:"1559ae6756912ca5",541:"dcd9e8b804f88da5",631:"98d42abad0a60af6",663:"d2c9ca36b26695b8",711:"ba7b8f900dfd40d0",744:"b06c9a3de4a1d877",820:"97b82f751ca49579",865:"a9b563a45848a83c",912:"ff8037ba9d4db5c8",939:"19b33a3d3c351d73",990:"61296e5870b91f11"})[e]+".js",u.miniCssF=e=>"static/css/"+({224:"ca311e6c030663d4",368:"b736be3bd02b5d99",432:"2d03f0da2c678dfc",587:"b74cd7de82dabcdd",618:"fbfdce70731d0d2b",802:"7b6724d2df70f48f"})[e]+".css",u.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),u.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),o={},u.l=(e,t,r,a)=>{if(o[e])return void o[e].push(t);if(void 0!==r)for(var n,i,c=document.getElementsByTagName("script"),d=0;d<c.length;d++){var l=c[d];if(l.getAttribute("src")==e||l.getAttribute("data-webpack")=="_N_E:"+r){n=l;break}}n||(i=!0,(n=document.createElement("script")).charset="utf-8",n.timeout=120,u.nc&&n.setAttribute("nonce",u.nc),n.setAttribute("data-webpack","_N_E:"+r),n.src=u.tu(e)),o[e]=[t];var f=(t,r)=>{n.onerror=n.onload=null,clearTimeout(s);var a=o[e];if(delete o[e],n.parentNode&&n.parentNode.removeChild(n),a&&a.forEach(e=>e(r)),t)return t(r)},s=setTimeout(f.bind(null,void 0,{type:"timeout",target:n}),12e4);n.onerror=f.bind(null,n.onerror),n.onload=f.bind(null,n.onload),i&&document.head.appendChild(n)},u.r=e=>{"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},u.tt=()=>(void 0===a&&(a={createScriptURL:e=>e},"u">typeof trustedTypes&&trustedTypes.createPolicy&&(a=trustedTypes.createPolicy("nextjs#bundler",a))),a),u.tu=e=>u.tt().createScriptURL(e),u.p="/_next/",n={68:0},u.f.miniCss=(e,t)=>{if(n[e])t.push(n[e]);else 0!==n[e]&&({224:1,368:1,432:1,587:1,618:1,802:1})[e]&&t.push(n[e]=new Promise((t,r)=>{var o=u.miniCssF(e),a=u.p+o;if(((e,t)=>{for(var r=document.getElementsByTagName("link"),o=0;o<r.length;o++){var a=r[o],n=a.getAttribute("data-href")||a.getAttribute("href");if("stylesheet"===a.rel&&(n===e||n===t))return a}for(var i=document.getElementsByTagName("style"),o=0;o<i.length;o++){var a=i[o],n=a.getAttribute("data-href");if(n===e||n===t)return a}})(o,a))return t();((e,t,r,o)=>{var a=document.createElement("link");a.rel="stylesheet",a.type="text/css",a.onerror=a.onload=n=>{if(a.onerror=a.onload=null,"load"===n.type)r();else{var i=n&&("load"===n.type?"missing":n.type),c=n&&n.target&&n.target.href||t,d=Error("Loading CSS chunk "+e+" failed.\n("+c+")");d.code="CSS_CHUNK_LOAD_FAILED",d.type=i,d.request=c,a.parentNode.removeChild(a),o(d)}},a.href=t;if("function"==typeof _N_E_STYLE_LOAD){var n=a.href,i=a.onload,c=a.onerror;_N_E_STYLE_LOAD(0===n.indexOf(window.location.origin)?new URL(n).pathname:n).then(function(){i&&i.call(a,{type:"load"})},function(){c&&c.call(a,{})})}else document.head.appendChild(a)})(e,a,t,r)}).then(()=>{n[e]=0},t=>{throw delete n[e],t}))},u.b=document.baseURI||self.location.href,i={68:0},u.f.j=(e,t)=>{var r=u.o(i,e)?i[e]:void 0;if(0!==r)if(r)t.push(r[2]);else if(/^((36|6|61)8|224|432|587|802)$/.test(e))i[e]=0;else{var o=new Promise((t,o)=>r=i[e]=[t,o]);t.push(r[2]=o);var a=u.p+u.u(e),n=Error();u.l(a,t=>{if(u.o(i,e)&&(0!==(r=i[e])&&(i[e]=void 0),r)){var o=t&&("load"===t.type?"missing":t.type),a=t&&t.target&&t.target.src;n.message="Loading chunk "+e+" failed.\n("+o+": "+a+")",n.name="ChunkLoadError",n.type=o,n.request=a,r[1](n)}},"chunk-"+e,e)}},u.O.j=e=>0===i[e],c=(e,t)=>{var r,o,[a,n,c]=t,d=0;if(a.some(e=>0!==i[e])){for(r in n)u.o(n,r)&&(u.m[r]=n[r]);if(c)var l=c(u)}for(e&&e(t);d<a.length;d++)o=a[d],u.o(i,o)&&i[o]&&i[o][0](),i[o]=0;return u.O(l)},(d=self.webpackChunk_N_E=self.webpackChunk_N_E||[]).forEach(c.bind(null,0)),d.push=c.bind(null,d.push.bind(d))})();
@@ -1 +0,0 @@
1
- .DictionaryModal_content___jXD2{height:100%;display:flex;flex-direction:column;background-color:var(--color--background--element);border:var(--border);border-radius:var(--border--radius)}.DictionaryModal_dictionary__Eu9Sx{flex:1 1;max-height:none;border-bottom:var(--border);border-top-left-radius:var(--border--radius);border-top-right-radius:var(--border--radius)}.DictionaryModal_dictionaryInput__CKiX5{flex:0 0 auto;border-bottom-left-radius:var(--border--radius);border-bottom-right-radius:var(--border--radius)}.Modal_closeButton__Foob_,.Modal_modal__l4yBn{top:0;inset-inline-end:0}.Modal_modal__l4yBn{position:fixed;bottom:0;z-index:var(--z-index--modal);width:var(--modal--width);padding:0;border-radius:0;border:none}.Modal_modal__l4yBn:focus{outline:none}[dir=ltr] .Modal_afterOpen__yCc_m .Modal_container__T5Dvn,[dir=rtl] .Modal_afterOpen__yCc_m .Modal_container__T5Dvn{transform:translateX(0);opacity:1}.Modal_beforeClose__Q_ZUS .Modal_container__T5Dvn{opacity:0}[dir=ltr] .Modal_beforeClose__Q_ZUS .Modal_container__T5Dvn{transform:translateX(var(--modal--width))}[dir=rtl] .Modal_beforeClose__Q_ZUS .Modal_container__T5Dvn{transform:translateX(calc(-1 * var(--modal--width)))}.Modal_overlay__nbJY5{background-color:rgba(0,0,0,0)}.Modal_container__T5Dvn{--box-shadow--offset:1px;--box-shadow--offset--negative:calc(-1 * var(--box-shadow--offset));display:flex;flex-direction:column;height:100%;background-color:var(--color--background);transition:var(--transition--long);transform:translateX(var(--modal--width));overflow:hidden;opacity:0}[dir=ltr] .Modal_container__T5Dvn{transform:translateX(var(--modal--width));box-shadow:var(--box-shadow--offset--negative) 0 var(--box-shadow--blur) var(--box-shadow--spread) var(--box-shadow--color)}[dir=rtl] .Modal_container__T5Dvn{transform:translateX(calc(-1 * var(--modal--width)));box-shadow:var(--box-shadow--offset) 0 var(--box-shadow--blur) var(--box-shadow--spread) var(--box-shadow--color)}.Modal_header__8HSvT{position:relative;z-index:1;flex:0 0 auto;padding:var(--spacing--l);padding-bottom:0;background-color:var(--color--background)}.Modal_title__oD_ne{font-size:var(--font--size--h1);font-weight:300;padding-inline-end:calc(var(--square-button--size) + var(--spacing--s))}.Modal_closeButton__Foob_{position:absolute!important;z-index:var(--z-index--close-button);margin:var(--spacing--l)}.Modal_content__Fchkl{scrollbar-color:var(--scrollbar--thumb--color) var(--scrollbar--thumb--track);scrollbar-width:thin}.Modal_content__Fchkl::-webkit-scrollbar{width:var(--scrollbar--size);background-color:var(--scrollbar--track--color)}.Modal_content__Fchkl::-webkit-scrollbar-thumb{background-color:var(--scrollbar--thumb--color)}.Modal_content__Fchkl:hover{scrollbar-color:var(--scrollbar--thumb--color--highlight) var(--scrollbar--track--color)}.Modal_content__Fchkl:hover::-webkit-scrollbar-thumb{background-color:var(--scrollbar--thumb--color--highlight)}.Modal_content__Fchkl{position:relative;flex:1 1;min-height:0;overflow:auto;padding:var(--spacing--l)}.Modal_footer__Pw_CF{flex:0 0 auto;display:flex;flex-direction:row-reverse;gap:var(--spacing--l);padding:var(--spacing--l);padding-top:0}@media(min-width:1201px){.Modal_footer__Pw_CF{display:none}}.Modal_footer__Pw_CF>*{min-width:0;flex:1 1}.Section_section__6Eczy+.Section_section__6Eczy{margin-top:var(--spacing--xl)}.Section_heading__5Vnag{margin-bottom:var(--spacing--m);font-size:var(--font--size--h2);font-weight:300}.Mapping_mapping__Ua6wj{margin-bottom:var(--spacing--l)}.Mapping_mapping__Ua6wj:last-child{margin-bottom:0}.Mapping_description__nSNia{margin-bottom:var(--spacing--m);font-size:var(--font--size--h3);font-weight:300}.Mapping_group__MlkmV,.Mapping_keys__KmIcZ{display:flex;flex-wrap:wrap}.Mapping_group__MlkmV{margin:0 var(--spacing--s)}.Mapping_plus__KE_ml,.Mapping_slash__hulS4{min-width:var(--key--height);height:var(--key--height);padding:var(--spacing--s) var(--spacing--m);font-family:var(--font--family--monospace);line-height:calc(var(--key--height) - 2*(var(--spacing--s) + var(--border--width)));vertical-align:middle;text-align:center}[dir=rtl] .Mapping_group__MlkmV{flex-direction:row-reverse}.Mapping_group__MlkmV:first-child{margin-inline-start:0}.Mapping_group__MlkmV:last-child{margin-inline-end:0}.Arrows_arrows__Ll5Em{display:inline-grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,1fr);gap:var(--spacing--xs);gap:1px}.Arrows_arrow__w3eLL{margin-inline-start:0!important;max-width:var(--key--height--small);padding:0}.Arrows_up__kAspb{grid-row:1;grid-column:2}.Arrows_left__8bzz3{grid-row:2;grid-column:1}[dir=rtl] .Arrows_left__8bzz3{grid-column:3}.Arrows_right__7cua_{grid-row:2;grid-column:3}[dir=rtl] .Arrows_right__7cua_{grid-column:1}.Arrows_down__Hx9IM{grid-row:2;grid-column:2}.Badge_badge__dYfu8{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing--xs) var(--spacing--m);border:var(--border);border-radius:var(--border--radius);background-color:var(--color--background--element);line-height:var(--line-height);font-size:var(--font--size--m);font-weight:700}.Character_character__Xry5W{display:flex;flex-direction:column;align-items:center;transition:var(--transition)}.Character_character__Xry5W.Character_finished__Ee5Eu{opacity:var(--opacity--disabled)}.Character_character__Xry5W.Character_overused__WV6tJ{opacity:1}.Character_character__Xry5W.Character_overused__WV6tJ .Character_tile__Ledy0:after{position:absolute;top:0;left:0;width:100%;height:100%;content:" ";border-radius:inherit;box-shadow:var(--box-shadow--error)}.Character_remaining__DFxBl{width:var(--tile-size);height:6px;margin-top:var(--spacing--m);box-shadow:var(--box-shadow--raised)}@media(max-width:479px){.Character_remaining__DFxBl{box-shadow:var(--box-shadow--raised--subtle)}}.Character_count__Bl6_O{padding:var(--spacing--xs) 0;font-size:var(--font--size--m);white-space:nowrap}.Character_unused___qpnr{cursor:not-allowed}.Progress_progress__lz772{width:100%;min-height:1px;border-radius:var(--border--radius);background-image:linear-gradient(90deg,var(--color--progress) 0,var(--color--progress) var(--progress),var(--color--progress--background) var(--progress),var(--color--progress--background) 100%)}[dir=rtl] .Progress_progress__lz772{transform:scaleX(-1)}.ConfigSetting_option__pvmMK{margin-bottom:var(--spacing--m)}.ConfigSetting_option__pvmMK:last-child{margin-bottom:0}.ConfigSetting_label__CeZI1{display:flex;align-items:center}.Radio_radio__AX_QR{--focus-effect--size:6px;position:relative}.Radio_radio__AX_QR:after{position:absolute;inset:0;z-index:var(--z-index--focus-effect);transition:var(--transition);border-radius:var(--border--radius);box-shadow:0 0 0 var(--focus-effect--size) rgba(0,0,0,0);pointer-events:none}.Radio_radio__AX_QR:focus-within,.Radio_radio__AX_QR:focus-within *{outline:none}.Radio_radio__AX_QR:focus-within:after{content:"";box-shadow:0 0 0 var(--focus-effect--size) var(--color--focus)}.Radio_radio__AX_QR{display:flex;align-items:center;gap:var(--spacing--l);padding:var(--spacing--m);transition:var(--transition);cursor:pointer}.Radio_radio__AX_QR.Radio_checked__DUhBG .Radio_iconContent__Zu4m7{background-color:var(--color--primary)}.Radio_radio__AX_QR.Radio_disabled__8bp0O{opacity:var(--opacity--disabled);cursor:not-allowed}.Radio_input__eCm6J{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:inherit}.Radio_icon__6ULF0{display:flex;justify-content:center;align-items:center;flex:0 0 auto;width:22px;height:22px;border:2px solid var(--color--primary);border-radius:50%}.Radio_content__2T1Tf{flex:1 1}.Radio_iconContent__Zu4m7{width:14px;height:14px;background-color:rgba(0,0,0,0);border-radius:50%;transition:var(--transition)}.LocaleSetting_option__3uVpq+.LocaleSetting_option__3uVpq{margin-top:var(--spacing--m)}.LocaleSetting_label__VqJH9{display:flex;align-items:center;gap:var(--spacing--l)}.LocaleSetting_flag__cnMgQ{height:32px;border-radius:var(--border--radius);box-shadow:var(--box-shadow);transition:var(--transition)}.ShowCoordinatesSetting_option__teifi{margin-bottom:var(--spacing--m)}.ShowCoordinatesSetting_option__teifi:last-child{margin-bottom:0}.ShowCoordinatesSetting_label__h0REI{display:flex;align-items:center}.InputModeSetting_option__9tdaY{margin-bottom:var(--spacing--m)}.InputModeSetting_option__9tdaY:last-child{margin-bottom:0}.InputModeSetting_label__al6kL{display:flex;align-items:center}.AutoGroupTilesSetting_option__dp8CH{margin-bottom:var(--spacing--m)}.AutoGroupTilesSetting_option__dp8CH:last-child{margin-bottom:0}.AutoGroupTilesSetting_label__MIKlN{display:flex;align-items:center}.RemoveCellFiltersSetting_option__gZXNh{margin-bottom:var(--spacing--m)}.RemoveCellFiltersSetting_option__gZXNh:last-child{margin-bottom:0}.RemoveCellFiltersSetting_label__FF1HC{display:flex;align-items:center}.HighlightUnreachableCellsSetting_option__czzk8{margin-bottom:var(--spacing--m)}.HighlightUnreachableCellsSetting_option__czzk8:last-child{margin-bottom:0}.HighlightUnreachableCellsSetting_label__bs1CA{display:flex;align-items:center}
@@ -1 +0,0 @@
1
- .index_nav__oayCy{position:relative;z-index:1;flex:0 0 auto}.index_navContent__puCTa{width:100%;display:flex;align-items:flex-start;padding:var(--nav--padding)}.index_navLogo__iI_za{display:flex;flex:1 1}.index_logoContainer__YyxQp{display:flex}.index_logo__jZUto{height:var(--logo--height);width:auto;-webkit-user-select:none;user-select:none}.index_solver__wz8VS{flex:1 1}.NavButtons_navButtons__Ar_TQ{display:flex;align-items:center;gap:var(--spacing--l);gap:calc(var(--spacing--l) - var(--spacing--xs))}.NavButtons_button__UKQU0:last-child,.NavButtons_separator__lPmge:last-child{margin-right:0}.NavButtons_group__OiFOK{display:flex;gap:var(--spacing--l)}.NavButtons_separator__lPmge{border-right:var(--border);border-color:var(--color--inactive);height:32px}.NavButtons_error__kbe3P,.NavButtons_error__kbe3P:active,.NavButtons_error__kbe3P:focus,.NavButtons_error__kbe3P:hover{color:var(--color--error)}@media(max-width:767px){.NavButtons_fullNav__ssFBL{display:none}}@media(min-width:768px){.NavButtons_shortNav__kzmRS{display:none}}@media(hover:none){.NavButtons_keyMapButton__W6Z_3{display:none}}.IconButton_iconButton__cz_iA{padding:0;border:none;outline:none;font:inherit;color:inherit;background:none;--focus-effect--size:6px;position:relative}.IconButton_iconButton__cz_iA:after{position:absolute;inset:0;z-index:var(--z-index--focus-effect);transition:var(--transition);border-radius:var(--border--radius);box-shadow:0 0 0 var(--focus-effect--size) rgba(0,0,0,0);pointer-events:none}.IconButton_iconButton__cz_iA:focus-within,.IconButton_iconButton__cz_iA:focus-within *{outline:none}.IconButton_iconButton__cz_iA:focus-within:after{content:"";box-shadow:0 0 0 var(--focus-effect--size) var(--color--focus)}.IconButton_iconButton__cz_iA{display:inline-block;color:var(--color--inactive);cursor:pointer;transition:var(--transition)}.IconButton_iconButton__cz_iA:focus,.IconButton_iconButton__cz_iA:hover{text-decoration:none;color:var(--color--foreground--secondary)}.IconButton_iconButton__cz_iA:active{color:var(--color--foreground)}.IconButton_iconButton__cz_iA[disabled]{opacity:var(--opacity--disabled);box-shadow:none;cursor:not-allowed}.IconButton_content__9uHMt{display:flex;align-items:center;justify-content:center}.IconButton_icon__WVF0q{width:var(--square-button--size);height:var(--square-button--size);pointer-events:none;color:inherit;transition:var(--transition)}.Tooltip_tooltip__vAjij{max-width:var(--tooltip--max-width);padding:var(--spacing--s) var(--spacing--m);box-shadow:var(--box-shadow);border-radius:var(--border--radius);background-color:var(--color--tooltip--background);color:var(--color--tooltip--foreground);z-index:var(--z-index--tooltip);text-align:center;pointer-events:none}.Tooltip_arrow__uIoGg{fill:var(--color--tooltip--background)}.Solver_solver__HgdJ5{--spacing:var(--components-spacing);position:relative;margin:0 var(--spacing);display:flex;flex-direction:column}@media(max-width:1199px)and (hover:none){.Solver_solver__HgdJ5{margin-bottom:calc(3*var(--spacing--l) + var(--button--icon--size))}}@media(max-width:479px)and (hover:none){.Solver_solver__HgdJ5{margin-bottom:calc(1*var(--spacing--m) + 2*var(--spacing--l) + var(--button--icon--size))}}.Solver_container__ajXif{position:relative;display:flex;align-items:center;justify-content:center}.Solver_content__HOara{display:grid;grid-template-columns:minmax(0,1fr) var(--solver-column--width);gap:var(--spacing);height:100%;margin:0 auto}@media(max-width:1199px){.Solver_content__HOara{grid-template-columns:1fr}}.Solver_boardContainer__4GPRC{position:relative}.Solver_board__GI25F{margin:0 auto}.Solver_submitInput__Q3pw9{display:none}.Solver_column__stLpp{display:flex;flex-direction:column;flex:0 0 var(--solver-column--width);gap:var(--spacing)}@media(max-width:1199px){.Solver_column__stLpp{display:none}}.Solver_results__YjM_q{box-shadow:var(--box-shadow)}.Solver_dictionaryContainer__v6K0v{flex:0 0 auto;height:var(--dictionary--height);display:flex;flex-direction:column;background-color:var(--color--background--element);border:var(--border);border-radius:var(--border--radius);box-shadow:var(--box-shadow)}.Solver_dictionary__R2P0a{flex:1 1;border-bottom:var(--border);border-top-left-radius:var(--border--radius);border-top-right-radius:var(--border--radius)}.Solver_dictionaryInput__kSVRV{flex:0 0 auto;border-bottom-left-radius:var(--border--radius);border-bottom-right-radius:var(--border--radius)}.Solver_bottomContainer___pVNW{flex:0 0 auto;display:flex;justify-content:center}.Solver_bottomContent__b8KyY{display:inline-flex;flex-direction:column;align-items:center;gap:var(--spacing);margin:var(--spacing) auto;min-width:0}.Solver_controls__4fjwP{width:100%;max-width:var(--controls-max-width)}@media(min-width:1200px){.Solver_controls__4fjwP{display:none}}.Solver_emptyState__6TEU_{margin-top:var(--spacing)}@keyframes Board_hide__3Xn0K{0%{opacity:1}to{opacity:0}}@keyframes Board_show__qgRUu{0%{opacity:0}to{opacity:1}}@keyframes Board_rotate__dvty2{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes Board_wave__YvFwO{0%{transform:translateY(0)}25%{transform:translateY(6px)}75%{transform:translateY(-6px)}to{transform:translateY(0)}}.Board_board__Xnuco{--tile-size:var(--cell-size);--coordinate-track-size:calc(var(--coordinate-size) - var(--border--width));display:grid;grid-template-columns:var(--coordinate-track-size) repeat(var(--board-cols),var(--cell-size));grid-template-rows:var(--coordinate-track-size) repeat(var(--board-rows),var(--cell-size));gap:var(--border--width);box-shadow:var(--box-shadow);background-color:#fff;background-size:100% 100%;border:var(--border);border-radius:var(--border--radius);font-size:max(14px,var(--cell-size)*.6)}.Board_floating__6BuCt{position:absolute;z-index:var(--z-index--actions);width:max-content;height:max-content;animation:var(--transition--duration) var(--transition--easing) Board_show__qgRUu}.Board_focus__1plN1{--focus-effect--size:6px;position:relative}.Board_focus__1plN1:after{position:absolute;inset:0;z-index:var(--z-index--focus-effect);transition:var(--transition);border-radius:var(--border--radius);box-shadow:0 0 0 var(--focus-effect--size) rgba(0,0,0,0);pointer-events:none}.Board_focus__1plN1:focus-within,.Board_focus__1plN1:focus-within *{outline:none}.Board_focus__1plN1:focus-within:after{content:"";box-shadow:0 0 0 var(--focus-effect--size) var(--color--focus)}.Board_focus__1plN1{width:var(--cell-size);height:var(--cell-size);cursor:text}.Board_focus__1plN1:after{content:"";box-shadow:0 0 0 var(--focus-effect--size) var(--color--focus)}.Board_hidden__HUigM{animation:var(--transition--duration) var(--transition--easing) Board_hide__3Xn0K}.Board_hidden__HUigM,.Board_iconContainer__YELP8{pointer-events:none;-webkit-user-select:none;user-select:none}.Board_iconContainer__YELP8{position:absolute;display:flex;align-items:center;justify-content:center}.Board_iconBackground__u0tVi,.Board_icon__0J1Ig{position:absolute;inset:calc((100% - var(--size))/2);width:var(--size);height:var(--size)}.Board_iconBackground__u0tVi{--size:80%;border-radius:var(--border--radius);background-color:var(--color--foreground--secondary)}.Board_icon__0J1Ig{--size:40%;color:var(--color--white)}.Board_coordinate__LaKUI{position:relative;display:flex;align-items:center;justify-content:center;font-size:calc(.3*var(--cell-size))}.Cell_tile__SiBOA input{position:absolute;inset:-100%;width:300%;height:300%;clip-path:inset(33.3333333333%)}[dir=ltr] .Cell_tile__SiBOA.Cell_first3__7uV8I input{left:0;clip-path:polygon(0 33.3333333333%,33.3333333333% 33.3333333333%,33.3333333333% 66.6666666667%,0 66.6666666667%)}[dir=ltr] .Cell_tile__SiBOA.Cell_last3__30aLE input,[dir=rtl] .Cell_tile__SiBOA.Cell_first3__7uV8I input{left:-200%;clip-path:polygon(66.6666666667% 33.3333333333%,100% 33.3333333333%,100% 66.6666666667%,66.6666666667% 66.6666666667%)}[dir=rtl] .Cell_tile__SiBOA.Cell_first3__7uV8I input{right:0}[dir=rtl] .Cell_tile__SiBOA.Cell_last3__30aLE input{left:0;right:-200%;clip-path:polygon(0 33.3333333333%,33.3333333333% 33.3333333333%,33.3333333333% 66.6666666667%,0 66.6666666667%)}.Cell_tile__SiBOA.Cell_sharpTopLeft__7Frqr{border-start-start-radius:0}.Cell_tile__SiBOA.Cell_sharpTopRight__eYNVC{border-start-end-radius:0}.Cell_tile__SiBOA.Cell_sharpBottomLeft__KhIPs{border-end-start-radius:0}.Cell_tile__SiBOA.Cell_sharpBottomRight__R2ZNq{border-end-end-radius:0}.Cell_tile__SiBOA.Cell_unreachable__bH4mB{background-color:var(--border--color);opacity:.5;border-radius:0}.Cell_tile__SiBOA:focus-within{z-index:2}.Tile_tile__Ix_p2{--background-color:transparent;position:relative;width:var(--tile-size,auto);height:var(--tile-size,auto);display:flex;align-items:center;justify-content:center;padding:0;background-color:var(--background-color);border-radius:var(--border--radius);font-weight:700;text-transform:uppercase;text-align:center;-webkit-user-select:none;user-select:none}@media(max-width:479px){.Tile_tile__Ix_p2{--border--radius:3px}}.Tile_tile__Ix_p2.Tile_points1__Ubc_x{--background-color:var(--color--yellow)}.Tile_tile__Ix_p2.Tile_points2__d_3CH{--background-color:var(--color--green)}.Tile_tile__Ix_p2.Tile_points3__Q5XVD,.Tile_tile__Ix_p2.Tile_points4__hu5jg{--background-color:var(--color--blue)}.Tile_tile__Ix_p2.Tile_points5__4JVlF{--background-color:var(--color--red)}.Tile_tile__Ix_p2.Tile_raised__ObpSU{box-shadow:var(--box-shadow--raised)}@media(max-width:479px){.Tile_tile__Ix_p2.Tile_raised__ObpSU{box-shadow:var(--box-shadow--raised--subtle)}}.Tile_tile__Ix_p2.Tile_blank__WIuHs{--background-color:var(--color--white);color:var(--color--foreground)}.Tile_tile__Ix_p2.Tile_empty__GU8RF{color:var(--color--inactive)}.Tile_tile__Ix_p2.Tile_invalid__vYgf3{--background-color:var(--color--foreground);--shadow--color:var(--box-shadow--color--inverse);color:var(--color--white)}.Tile_tile__Ix_p2.Tile_highlighted__Xw3Fw{--background-color:var(--color--primary);color:var(--color--primary--opposite)}.Tile_tile__Ix_p2.Tile_highlighted__Xw3Fw .Tile_points__3CAVI{color:inherit}.Tile_input__AO_aO{position:absolute;inset:0;width:100%;height:100%;border:none;background-color:rgba(0,0,0,0);color:rgba(0,0,0,0);caret-color:rgba(0,0,0,0);font-size:16px;outline:none}.Tile_input__AO_aO::selection{--background--color:transparent}.Tile_points__3CAVI{text-shadow:1px 0 var(--background-color),-1px 0 var(--background-color),0 1px var(--background-color),0 -1px var(--background-color),-1px -1px var(--background-color),-1px 1px var(--background-color),1px -1px var(--background-color),1px 1px var(--background-color);font-size:max(10px,var(--tile-size)*.25);position:absolute;inset-block-end:1%;inset-inline-end:9%;font-weight:700;-webkit-user-select:none;user-select:none;pointer-events:none;letter-spacing:-1px}@media(max-width:479px){.Tile_points__3CAVI{display:none}}.Tile_alert__0l1_m{--size:30%;position:absolute;width:var(--size);height:var(--size);inset-block-start:0;inset-inline-end:0;border-start-end-radius:inherit;background:radial-gradient(var(--color--error--opposite),var(--color--error--opposite) 85%,transparent 85%,transparent);color:var(--color--error);pointer-events:none}.Actions_actions__JclIc{display:flex;box-shadow:var(--box-shadow);border-radius:var(--border--radius);transition:var(--transition);transition-property:opacity}.Actions_actions__JclIc .Actions_action__zkQOb{padding:var(--spacing--m);box-shadow:none!important}.Actions_actions__JclIc .Actions_action__zkQOb:active,.Actions_actions__JclIc .Actions_action__zkQOb:hover{color:var(--color--foreground)}.Actions_actions__JclIc .Actions_action__zkQOb+.Actions_action__zkQOb{border-inline-start:none}.Actions_actions__JclIc .Actions_action__zkQOb:first-child{border-start-end-radius:0;border-end-end-radius:0}.Actions_actions__JclIc .Actions_action__zkQOb:last-child{border-start-start-radius:0;border-end-start-radius:0}.Button_button__8B4nB{padding:0;border:none;outline:none;font:inherit;color:inherit;background:none;--focus-effect--size:6px;position:relative}.Button_button__8B4nB:after{position:absolute;inset:0;z-index:var(--z-index--focus-effect);transition:var(--transition);border-radius:var(--border--radius);box-shadow:0 0 0 var(--focus-effect--size) rgba(0,0,0,0);pointer-events:none}.Button_button__8B4nB:focus-within,.Button_button__8B4nB:focus-within *{outline:none}.Button_button__8B4nB:focus-within:after{content:"";box-shadow:0 0 0 var(--focus-effect--size) var(--color--focus)}.Button_button__8B4nB{display:inline-block;padding:var(--spacing--m) var(--spacing--l);border:var(--border);border-radius:var(--border--radius);text-transform:uppercase;transition:var(--transition);cursor:pointer}.Button_button__8B4nB,.Button_button__8B4nB:active,.Button_button__8B4nB:focus,.Button_button__8B4nB:hover{box-shadow:var(--box-shadow);text-decoration:none}.Button_button__8B4nB.Button_primary__KcWsb,.Button_button__8B4nB:active.Button_primary__KcWsb,.Button_button__8B4nB:focus.Button_primary__KcWsb,.Button_button__8B4nB:hover.Button_primary__KcWsb{background-color:var(--color--primary);color:var(--color--primary--opposite)}.Button_button__8B4nB.Button_default__nKr4u,.Button_button__8B4nB:active.Button_default__nKr4u,.Button_button__8B4nB:focus.Button_default__nKr4u,.Button_button__8B4nB:hover.Button_default__nKr4u{background-color:var(--color--background--element);color:var(--color--foreground)}.Button_button__8B4nB.Button_default__nKr4u .Button_icon__V37WX,.Button_button__8B4nB:active.Button_default__nKr4u .Button_icon__V37WX,.Button_button__8B4nB:focus.Button_default__nKr4u .Button_icon__V37WX,.Button_button__8B4nB:hover.Button_default__nKr4u .Button_icon__V37WX{color:var(--color--inactive)}.Button_button__8B4nB:focus.Button_default__nKr4u:not(:disabled) .Button_icon__V37WX,.Button_button__8B4nB:hover.Button_default__nKr4u:not(:disabled) .Button_icon__V37WX{color:var(--color--foreground--secondary)}.Button_button__8B4nB:active:not(:disabled) .Button_content__gu4us{position:relative;top:1px}.Button_button__8B4nB[disabled]{opacity:var(--opacity--disabled);box-shadow:none;cursor:not-allowed}.Button_content__gu4us{display:flex;align-items:center;justify-content:center;gap:var(--spacing--l);line-height:var(--button--icon--size)}@media(max-width:1199px){.Button_content__gu4us{gap:var(--spacing--m)}}.Button_icon__V37WX{flex:0 0 auto;width:var(--button--icon--size);height:var(--button--icon--size);transition:var(--transition)}.Button_label__YUlJz{display:block;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;font-size:var(--font--size--h3);transition:var(--transition);text-align:start}.Button_wide__xwJam .Button_content__gu4us{justify-content:normal;gap:var(--spacing--l)}.Button_wide__xwJam .Button_label__YUlJz{flex:1 1}.ToggleDirectionButton_button__8P075{padding:var(--spacing--m);box-shadow:none!important}.ToggleDirectionButton_button__8P075:active,.ToggleDirectionButton_button__8P075:hover{color:var(--color--foreground)}.ToggleDirectionButton_icon__ZZ78d{transition:var(--transition)}.ToggleDirectionButton_icon__ZZ78d.ToggleDirectionButton_right__b0_LR{transform:rotate(-90deg)}[dir=rtl] .ToggleDirectionButton_icon__ZZ78d.ToggleDirectionButton_right__b0_LR{transform:rotate(90deg)}.InputPrompt_inputPrompt__1_ygJ{display:flex;box-shadow:var(--box-shadow);border-radius:var(--border--radius);transition:var(--transition);transition-property:opacity}.InputPrompt_toggleDirection__mx8tU{border-start-end-radius:0;border-end-end-radius:0}.InputPrompt_input__Qdlf_{width:100%;height:var(--text-input--height);padding:0 var(--spacing--l);transition:var(--transition);font-size:var(--font--size--m);outline:none;height:100%;max-width:200px;border:none;border-top:var(--border);border-bottom:var(--border);border-radius:0}.InputPrompt_insert__FLC5l{border-start-start-radius:0;border-end-start-radius:0}.InputPrompt_insertIcon__aL5tM{transform:scale(1.5)}.Results_results__RAvy9{position:relative;display:flex;flex-direction:column;height:100%;background:var(--color--background--element);border:var(--border);border-radius:var(--border--radius)}.Results_emptyState__HkpYj{flex:1 1}.Results_content__eBfb2{flex:1 1;position:relative;height:100%}.Results_listContainer__y4jAK{position:absolute;inset:0}.Results_list__ep2TB{scrollbar-color:var(--scrollbar--thumb--color) var(--scrollbar--thumb--track);scrollbar-width:thin}.Results_list__ep2TB::-webkit-scrollbar{width:var(--scrollbar--size);background-color:var(--scrollbar--track--color)}.Results_list__ep2TB::-webkit-scrollbar-thumb{background-color:var(--scrollbar--thumb--color)}.Results_list__ep2TB:hover{scrollbar-color:var(--scrollbar--thumb--color--highlight) var(--scrollbar--track--color)}.Results_list__ep2TB:hover::-webkit-scrollbar-thumb{background-color:var(--scrollbar--thumb--color--highlight)}.Results_list__ep2TB{transition:var(--transition)}.Results_list__ep2TB.Results_outdated__xbp6D{filter:blur(2px)}.Results_header__f0CUM{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;border-bottom:var(--border);border-top-left-radius:inherit;border-top-right-radius:inherit}.Results_headerButton__Cl1_U{padding:0;border:none;outline:none;font:inherit;color:inherit;background:none;--focus-effect--size:6px;position:relative}.Results_headerButton__Cl1_U:after{position:absolute;inset:0;z-index:var(--z-index--focus-effect);transition:var(--transition);border-radius:var(--border--radius);box-shadow:0 0 0 var(--focus-effect--size) rgba(0,0,0,0);pointer-events:none}.Results_headerButton__Cl1_U:focus-within,.Results_headerButton__Cl1_U:focus-within *{outline:none}.Results_headerButton__Cl1_U:focus-within:after{content:"";box-shadow:0 0 0 var(--focus-effect--size) var(--color--focus)}.Results_headerButton__Cl1_U{cursor:pointer;text-transform:uppercase;transition:background-color var(--transition--duration) var(--transition--easing),color var(--transition--duration) var(--transition--easing);background-color:var(--color--background);height:100%}.Results_headerButton__Cl1_U:first-child{border-start-start-radius:inherit}.Results_headerButton__Cl1_U:last-child{border-start-end-radius:inherit}.Results_headerButton__Cl1_U:focus,.Results_headerButton__Cl1_U:hover{background-color:var(--color--primary);color:var(--color--primary--opposite)}.Results_headerButtonLabel__OxgLh{display:block;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;flex:0 1 auto;text-align:start}.Results_headerButtonIcon__FL84f{flex:0 0 auto;width:var(--results--icon--size);height:var(--results--icon--size)}.Results_result__S0y54{padding:0;border:none;outline:none;font:inherit;color:inherit;background:none;-webkit-user-select:none;user-select:none;cursor:pointer;font-weight:400}.Results_result__S0y54.Results_highlighted__LM8tL:not(:disabled),.Results_result__S0y54:focus:not(:disabled),.Results_result__S0y54:hover:not(:disabled){background-color:var(--color--primary);color:var(--color--primary--opposite)}.Results_result__S0y54[aria-hidden=true]{color:var(--color--inactive)}.Results_result__S0y54[aria-hidden=true].Results_highlighted__LM8tL:not(:disabled),.Results_result__S0y54[aria-hidden=true]:focus:not(:disabled),.Results_result__S0y54[aria-hidden=true]:hover:not(:disabled){background-color:var(--color--primary--light);color:var(--color--primary--opposite)}.Results_resultContent__QZg6c{display:flex;align-items:center;justify-content:space-between;height:100%}.Results_resultContent__QZg6c .Results_word__vw_0W{display:block;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;display:flex}.Results_cell__OQlhc{display:flex;align-items:center;justify-content:center;height:100%;gap:var(--spacing--s);line-height:var(--results--item--height)}.Results_headerButton__Cl1_U.Results_word__vw_0W .Results_cell__OQlhc,.Results_result__S0y54 .Results_cell__OQlhc.Results_word__vw_0W{justify-content:flex-start;padding-inline-start:calc(var(--spacing--m) + var(--spacing--s))}.Results_word__vw_0W{flex:1 1;min-width:0;text-transform:uppercase}.Results_stat__zl_Bp{flex:0 0 55px;max-width:55px;justify-content:center}.Results_points__vyk3z{flex:0 0 80px;max-width:80px;font-weight:700}.Results_coordinates__1Ph_Z{flex:0 0 55px;max-width:55px}.Results_solveButton__V3YrS{display:block;margin:var(--spacing--xl) auto 0}.Results_sortIcon__W8p9d{flex:0 0 auto;width:19px;height:19px}.Results_input__4Te0e{border-top:var(--border);border-bottom-left-radius:var(--border--radius);border-bottom-right-radius:var(--border--radius)}.Results_highlight__RIiBE{background-color:var(--color--mark);color:var(--color--foreground);border-radius:var(--border--radius)}.EmptyState_emptyState__N2idu{padding:var(--spacing--xl);color:var(--color--foreground--secondary);text-align:center;text-transform:none}.EmptyState_tiles__FYVO9{display:inline-block;max-width:100%;margin-bottom:var(--spacing--m);height:48px;overflow:visible}@keyframes PlainTiles_hide__A1qMM{0%{opacity:1}to{opacity:0}}@keyframes PlainTiles_show__tFNGv{0%{opacity:0}to{opacity:1}}@keyframes PlainTiles_rotate__7Jm2X{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes PlainTiles_wave__bE4zX{0%{transform:translateY(0)}25%{transform:translateY(6px)}75%{transform:translateY(-6px)}to{transform:translateY(0)}}.PlainTiles_wave__bE4zX .PlainTiles_tile___NJSM{animation:PlainTiles_wave__bE4zX .75s infinite;animation-timing-function:linear}.PlainTiles_wave__bE4zX .PlainTiles_tile___NJSM:first-child{animation-delay:-2.85s}.PlainTiles_wave__bE4zX .PlainTiles_tile___NJSM:nth-child(2){animation-delay:-2.7s}.PlainTiles_wave__bE4zX .PlainTiles_tile___NJSM:nth-child(3){animation-delay:-2.55s}.PlainTiles_wave__bE4zX .PlainTiles_tile___NJSM:nth-child(4){animation-delay:-2.4s}.PlainTiles_wave__bE4zX .PlainTiles_tile___NJSM:nth-child(5){animation-delay:-2.25s}.PlainTiles_wave__bE4zX .PlainTiles_tile___NJSM:nth-child(6){animation-delay:-2.1s}.PlainTiles_wave__bE4zX .PlainTiles_tile___NJSM:nth-child(7){animation-delay:-1.95s}.PlainTiles_wave__bE4zX .PlainTiles_tile___NJSM:nth-child(8){animation-delay:-1.8s}.PlainTiles_wave__bE4zX .PlainTiles_tile___NJSM:nth-child(9){animation-delay:-1.65s}.PlainTiles_wave__bE4zX .PlainTiles_tile___NJSM:nth-child(10){animation-delay:-1.5s}.PlainTiles_wave__bE4zX .PlainTiles_tile___NJSM:nth-child(11){animation-delay:-1.35s}.PlainTiles_wave__bE4zX .PlainTiles_tile___NJSM:nth-child(12){animation-delay:-1.2s}.PlainTiles_wave__bE4zX .PlainTiles_tile___NJSM:nth-child(13){animation-delay:-1.05s}.PlainTiles_wave__bE4zX .PlainTiles_tile___NJSM:nth-child(14){animation-delay:-.9s}.PlainTiles_wave__bE4zX .PlainTiles_tile___NJSM:nth-child(15){animation-delay:-.75s}.PlainTiles_wave__bE4zX .PlainTiles_tile___NJSM:nth-child(16){animation-delay:-.6s}.PlainTiles_wave__bE4zX .PlainTiles_tile___NJSM:nth-child(17){animation-delay:-.45s}.PlainTiles_wave__bE4zX .PlainTiles_tile___NJSM:nth-child(18){animation-delay:-.3s}.PlainTiles_wave__bE4zX .PlainTiles_tile___NJSM:nth-child(19){animation-delay:-.15s}.PlainTiles_wave__bE4zX .PlainTiles_tile___NJSM:nth-child(20){animation-delay:0s}.PlainTiles_dropShadow__K0PlA{filter:drop-shadow(0 3px 3px rgba(0,0,0,.4))}.ResultsInput_resultsInput__JbuXk{--focus-effect--size:6px;position:relative}.ResultsInput_resultsInput__JbuXk:after{position:absolute;inset:0;z-index:var(--z-index--focus-effect);transition:var(--transition);border-radius:var(--border--radius);box-shadow:0 0 0 var(--focus-effect--size) rgba(0,0,0,0);pointer-events:none}.ResultsInput_resultsInput__JbuXk:focus-within,.ResultsInput_resultsInput__JbuXk:focus-within *{outline:none}.ResultsInput_resultsInput__JbuXk:focus-within:after{content:"";box-shadow:0 0 0 var(--focus-effect--size) var(--color--focus)}.ResultsInput_input__L_7DU{width:100%;height:var(--text-input--height);padding:0 var(--spacing--l);transition:var(--transition);font-size:var(--font--size--m);outline:none;border:none;border-radius:inherit}.Loading_dim__sBo77,.Loading_loading__zKVig{position:absolute;inset:0;border-radius:inherit}.Loading_loading__zKVig{display:flex;align-items:center;justify-content:center}.Loading_dim__sBo77{background-color:var(--color--background--overlay);z-index:1;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.Loading_text__AUS3o{position:relative;z-index:2;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.Loading_tiles__5IEHk{width:66.6666666667%;height:100%}.Dictionary_dictionary__FfG3h{position:relative;min-height:0;word-break:break-word}.Dictionary_dictionary__FfG3h:focus-within{--focus-effect--size:6px;position:relative}.Dictionary_dictionary__FfG3h:focus-within:after{position:absolute;inset:0;z-index:var(--z-index--focus-effect);transition:var(--transition);border-radius:var(--border--radius);box-shadow:0 0 0 var(--focus-effect--size) rgba(0,0,0,0);pointer-events:none}.Dictionary_dictionary__FfG3h:focus-within:focus-within,.Dictionary_dictionary__FfG3h:focus-within:focus-within *{outline:none}.Dictionary_dictionary__FfG3h:focus-within:focus-within:after{content:"";box-shadow:0 0 0 var(--focus-effect--size) var(--color--focus)}.Dictionary_content___ZOAM{scrollbar-color:var(--scrollbar--thumb--color) var(--scrollbar--thumb--track);scrollbar-width:thin}.Dictionary_content___ZOAM::-webkit-scrollbar{width:var(--scrollbar--size);background-color:var(--scrollbar--track--color)}.Dictionary_content___ZOAM::-webkit-scrollbar-thumb{background-color:var(--scrollbar--thumb--color)}.Dictionary_content___ZOAM:hover{scrollbar-color:var(--scrollbar--thumb--color--highlight) var(--scrollbar--track--color)}.Dictionary_content___ZOAM:hover::-webkit-scrollbar-thumb{background-color:var(--scrollbar--thumb--color--highlight)}.Dictionary_content___ZOAM{display:flex;flex-direction:column;height:100%;overflow-y:auto;border-radius:inherit}.Dictionary_content___ZOAM:focus-visible{outline:none}.Dictionary_result__kS3fd{flex-shrink:0}.Dictionary_result__kS3fd:last-child{flex-grow:1}.Dictionary_result__kS3fd.Dictionary_isAllowed__Jw9sB{background-color:var(--color--green--light)}.Dictionary_result__kS3fd.Dictionary_isNotAllowed__Y5tLd{background-color:var(--color--red--light)}.Dictionary_resultContent__GBlvP{padding:var(--spacing--l)}.Dictionary_word__faOui{margin-bottom:var(--spacing--m);font-size:var(--font--size--h2);text-transform:uppercase}.Dictionary_definitions__uU_Zv{margin:0;padding-inline-start:var(--spacing--l)}.Dictionary_definition__BJGy7{margin-bottom:var(--spacing--s);white-space:pre-wrap}.Dictionary_definition__BJGy7:last-child{margin-bottom:0}.DictionaryInput_dictionaryInput__ko75b{--focus-effect--size:6px;position:relative}.DictionaryInput_dictionaryInput__ko75b:after{position:absolute;inset:0;z-index:var(--z-index--focus-effect);transition:var(--transition);border-radius:var(--border--radius);box-shadow:0 0 0 var(--focus-effect--size) rgba(0,0,0,0);pointer-events:none}.DictionaryInput_dictionaryInput__ko75b:focus-within,.DictionaryInput_dictionaryInput__ko75b:focus-within *{outline:none}.DictionaryInput_dictionaryInput__ko75b:focus-within:after{content:"";box-shadow:0 0 0 var(--focus-effect--size) var(--color--focus)}.DictionaryInput_input__dfsFg{width:100%;height:var(--text-input--height);padding:0 var(--spacing--l);transition:var(--transition);font-size:var(--font--size--m);outline:none;border:none;border-radius:inherit}.Rack_rack__0GhLs{--tile-size:var(--rack-tile-size);position:relative;display:flex;box-shadow:var(--box-shadow);border-radius:var(--border--radius);transition:var(--transition);opacity:1;font-size:max(14px,var(--rack-tile-size)*.6)}.Rack_tile__jnU1W input{position:absolute;top:-200%;right:-100%;left:-100%;bottom:0;width:300%;height:300%;clip-path:polygon(33.3333333333% 66.6666666667%,66.6666666667% 66.6666666667%,66.6666666667% 100%,33.3333333333% 100%)}[dir=ltr] .Rack_tile__jnU1W:first-child input,[dir=ltr] .Rack_tile__jnU1W:nth-child(2) input,[dir=ltr] .Rack_tile__jnU1W:nth-child(3) input{left:0;clip-path:polygon(0 66.6666666667%,33.3333333333% 66.6666666667%,33.3333333333% 100%,0 100%)}[dir=ltr] .Rack_tile__jnU1W:last-child input,[dir=ltr] .Rack_tile__jnU1W:nth-last-child(2) input,[dir=ltr] .Rack_tile__jnU1W:nth-last-child(3) input{left:-200%;clip-path:polygon(66.6666666667% 66.6666666667%,100% 66.6666666667%,100% 100%,66.6666666667% 100%)}[dir=rtl] .Rack_tile__jnU1W:first-child input,[dir=rtl] .Rack_tile__jnU1W:nth-child(2) input,[dir=rtl] .Rack_tile__jnU1W:nth-child(3) input{left:-200%;right:0;clip-path:polygon(66.6666666667% 66.6666666667%,100% 66.6666666667%,100% 100%,66.6666666667% 100%)}[dir=rtl] .Rack_tile__jnU1W:last-child input,[dir=rtl] .Rack_tile__jnU1W:nth-last-child(2) input,[dir=rtl] .Rack_tile__jnU1W:nth-last-child(3) input{left:0;right:-200%;clip-path:polygon(0 66.6666666667%,33.3333333333% 66.6666666667%,33.3333333333% 100%,0 100%)}.Rack_hidden__3UrpD{opacity:0}.Rack_sharpLeft__Zlx5l{border-start-start-radius:0;border-end-start-radius:0}.Rack_sharpRight__s2zNJ{border-start-end-radius:0;border-end-end-radius:0}.InputPrompt_form__vuJMa{--focus-effect--size:6px;position:relative}.InputPrompt_form__vuJMa:after{position:absolute;inset:0;z-index:var(--z-index--focus-effect);transition:var(--transition);border-radius:var(--border--radius);box-shadow:0 0 0 var(--focus-effect--size) rgba(0,0,0,0);pointer-events:none}.InputPrompt_form__vuJMa:focus-within,.InputPrompt_form__vuJMa:focus-within *{outline:none}.InputPrompt_form__vuJMa:focus-within:after{content:"";box-shadow:0 0 0 var(--focus-effect--size) var(--color--focus)}.InputPrompt_form__vuJMa{width:calc(var(--rack-size)*var(--rack-tile-size));height:var(--rack-tile-size);border-radius:var(--border--radius)}.InputPrompt_input__9jIi3{height:var(--text-input--height);padding:0 var(--spacing--l);transition:var(--transition);font-size:var(--font--size--m);outline:none;position:absolute;inset:0;width:100%;height:100%;border-radius:var(--border--radius);border:none;box-shadow:var(--box-shadow)}.RackTile_rackTile__rj6pD{--focus-effect--size:6px;position:relative}.RackTile_rackTile__rj6pD:after{position:absolute;inset:0;z-index:var(--z-index--focus-effect);transition:var(--transition);border-radius:var(--border--radius);box-shadow:0 0 0 var(--focus-effect--size) rgba(0,0,0,0);pointer-events:none}.RackTile_rackTile__rj6pD:focus-within,.RackTile_rackTile__rj6pD:focus-within *{outline:none}.RackTile_rackTile__rj6pD:focus-within:after{content:"";box-shadow:0 0 0 var(--focus-effect--size) var(--color--focus)}.RackTile_rackTile__rj6pD{--background-color:var(--color--background)}.RackTile_rackTile__rj6pD:focus-within{z-index:2}.ResultCandidatePicker_resultCandidatePicker__S_aFf{position:relative;display:flex;gap:var(--spacing--l)}@media(max-width:479px){.ResultCandidatePicker_resultCandidatePicker__S_aFf{gap:var(--spacing--m)}}.ResultCandidatePicker_buttons__dT8pq{flex:0 0 auto;display:flex;border-radius:var(--border--radius)}.ResultCandidatePicker_buttons__dT8pq.ResultCandidatePicker_bothEnabled__yX7kU{box-shadow:var(--box-shadow)}.ResultCandidatePicker_buttons__dT8pq.ResultCandidatePicker_bothEnabled__yX7kU .ResultCandidatePicker_button__ipqiD{box-shadow:none}.ResultCandidatePicker_button__ipqiD{padding:var(--spacing--m)}.ResultCandidatePicker_button__ipqiD:focus-within{z-index:1}.ResultCandidatePicker_button__ipqiD:first-child{border-right:none;border-top-right-radius:0;border-bottom-right-radius:0}.ResultCandidatePicker_button__ipqiD:last-child{border-top-left-radius:0;border-bottom-left-radius:0}[dir=rtl] .ResultCandidatePicker_button__ipqiD{transform:rotate(180deg)}.ResultCandidatePicker_resultCandidate__TffXx{padding:0;border:none;outline:none;font:inherit;color:inherit;background:none;--focus-effect--size:6px;position:relative}.ResultCandidatePicker_resultCandidate__TffXx:after{position:absolute;inset:0;z-index:var(--z-index--focus-effect);transition:var(--transition);border-radius:var(--border--radius);box-shadow:0 0 0 var(--focus-effect--size) rgba(0,0,0,0);pointer-events:none}.ResultCandidatePicker_resultCandidate__TffXx:focus-within,.ResultCandidatePicker_resultCandidate__TffXx:focus-within *{outline:none}.ResultCandidatePicker_resultCandidate__TffXx:focus-within:after{content:"";box-shadow:0 0 0 var(--focus-effect--size) var(--color--focus)}.ResultCandidatePicker_resultCandidate__TffXx{flex:1 1;display:flex;align-items:center;min-width:0;width:100%;border:var(--border);border-radius:var(--border--radius);background-color:var(--color--white);box-shadow:var(--box-shadow);cursor:pointer}.ResultCandidatePicker_resultCandidate__TffXx[disabled]{opacity:var(--opacity--disabled);box-shadow:none;cursor:not-allowed}.ResultCandidatePicker_content__1i_5T{display:flex;align-items:center;width:100%;overflow:hidden}.ResultCandidatePicker_points__86QEQ,.ResultCandidatePicker_word___Wi29{padding:var(--spacing--m) var(--spacing--l)}.ResultCandidatePicker_points__86QEQ{flex:0 0 auto;font-weight:700;border-inline-end:var(--border)}@media(max-width:479px){.ResultCandidatePicker_points__86QEQ{border-inline-end:none;padding-inline-end:var(--spacing--xs)}}.ResultCandidatePicker_word___Wi29{display:block;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;flex:1 1;text-transform:uppercase;text-align:center;white-space:pre-wrap}@media(max-width:479px){.ResultCandidatePicker_word___Wi29{padding:var(--spacing--m);text-align:start}}.ResultCandidatePicker_iconContainer__iiYkC{flex:0 0 auto;display:flex;padding-inline-end:var(--spacing--l)}.ResultCandidatePicker_spinnerContainer__3nvoz{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.ResultCandidatePicker_icon__AyoQE,.ResultCandidatePicker_loading__0iXU_{width:var(--button--icon--size);height:var(--button--icon--size);color:var(--color--inactive)}.ResultCandidatePicker_loading__0iXU_{border-color:var(--color--inactive)}.ResultCandidatePicker_insert__KAM26{flex:0 0 auto}@keyframes Spinner_hide__NZDja{0%{opacity:1}to{opacity:0}}@keyframes Spinner_show__ciwNs{0%{opacity:0}to{opacity:1}}@keyframes Spinner_rotate__kqx53{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes Spinner_wave__IcOlx{0%{transform:translateY(0)}25%{transform:translateY(6px)}75%{transform:translateY(-6px)}to{transform:translateY(0)}}.Spinner_spinner__dYTEm{width:var(--button--icon--size);height:var(--button--icon--size);border:var(--border);border-width:2px;border-radius:50%;border-right-color:rgba(0,0,0,0)!important;animation:Spinner_rotate__kqx53 .75s linear infinite}@media(min-width:768px){.InsertButton_insertButton__t2Y1w{padding:var(--spacing--m) var(--spacing--xl)}}@media(max-width:479px){.InsertButton_insertButton__t2Y1w{padding:var(--spacing--m)}}.InsertButton_icon__w3D9r{transform:scale(1.5)}.Alert_alert__cFBJC{display:flex;min-width:0;width:100%;border:var(--border);border-radius:var(--border--radius);background-color:var(--color--white);text-align:center}.Alert_iconContainer__rIJ4B{flex:0 0 auto;display:flex;justify-content:center;padding:var(--spacing--m);color:var(--color--foreground--secondary);border-start-start-radius:var(--border--radius);border-end-start-radius:var(--border--radius);border-inline-end:var(--border)}.Alert_error__sMv5d .Alert_iconContainer__rIJ4B{background-color:var(--color--red--light);color:var(--color--error)}.Alert_info__5QGDB .Alert_iconContainer__rIJ4B{background-color:var(--color--blue--light);color:var(--color--info)}.Alert_success__vQBXB .Alert_iconContainer__rIJ4B{background-color:var(--color--green--light);color:var(--color--success)}.Alert_warning__6DDhO .Alert_iconContainer__rIJ4B{background-color:var(--color--yellow--light);color:var(--color--warning)}.Alert_icon__jUrPr{width:24px;height:24px}.Alert_content__QyQ78{flex:1 1;padding:var(--spacing--m) var(--spacing--l)}
@@ -1 +0,0 @@
1
- .WordsModal_title__UGHtI{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap}.WordsModal_badge__Ay_8V{margin-inline-start:var(--spacing--m)}.WordsModal_word__sCI06{display:flex;align-items:center}.WordsModal_word__sCI06+.WordsModal_word__sCI06{margin-top:var(--spacing--s)}.WordsModal_invalid__jgYeh{color:var(--color--error)}.WordsModal_valid__JW5lM{color:var(--color--success)}.WordsModal_icon___HWi4{width:24px;height:24px;margin-inline-end:var(--spacing--s)}
@@ -1,32 +0,0 @@
1
- import classNames from 'classnames';
2
- import { type FunctionComponent, type ReactNode } from 'react';
3
-
4
- import { selectLocale, useTranslate, useTypedSelector } from '@/state';
5
- import { type TranslationKey } from '@/types';
6
-
7
- import { Tooltip } from '../Tooltip';
8
-
9
- import styles from './Results.module.scss';
10
-
11
- interface Props {
12
- children?: ReactNode;
13
- className?: string;
14
- dataTestId?: string;
15
- translationKey: TranslationKey;
16
- tooltip?: string | number;
17
- value: string | number;
18
- }
19
-
20
- export const Cell: FunctionComponent<Props> = ({ children, className, dataTestId, translationKey, tooltip, value }) => {
21
- const translate = useTranslate();
22
- const locale = useTypedSelector(selectLocale);
23
- const formattedValue = value.toLocaleString(locale);
24
-
25
- return (
26
- <Tooltip tooltip={`${translate(translationKey)}: ${tooltip || formattedValue}`}>
27
- <div className={classNames(styles.cell, className)} data-testid={dataTestId}>
28
- {children || formattedValue}
29
- </div>
30
- </Tooltip>
31
- );
32
- };
@@ -1,12 +0,0 @@
1
- @use 'styles/mixins' as *;
2
-
3
- .resultsInput {
4
- @include focus-effect;
5
- }
6
-
7
- .input {
8
- @include text-input;
9
-
10
- border: none;
11
- border-radius: inherit;
12
- }
@@ -1,7 +0,0 @@
1
- // Generated by scripts/generate-scss-types.ts - do not edit.
2
- declare const styles: {
3
- readonly input: string;
4
- readonly resultsInput: string;
5
- };
6
-
7
- export default styles;
@@ -1 +0,0 @@
1
- export { ResultsInput } from './ResultsInput';
@@ -1,5 +0,0 @@
1
- import { type Board } from './Board';
2
- import { Cell } from './Cell';
3
- import { type ResultJson } from './ResultJson';
4
- export declare function readCells(json: ResultJson, board: Board): Cell[];
5
- export declare function readCollisions(cells: Cell[], board: Board, isHorizontal: boolean): Cell[][];
@@ -1,75 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.readCells = readCells;
4
- exports.readCollisions = readCollisions;
5
- const Cell_1 = require("./Cell");
6
- const Tile_1 = require("./Tile");
7
- function readCells(json, board) {
8
- const stepX = json.isHorizontal ? 1 : 0;
9
- const stepY = json.isHorizontal ? 0 : 1;
10
- const cells = [];
11
- let placedIndex = 0;
12
- let { x, y } = json;
13
- while (y < board.rowsCount && x < board.columnsCount) {
14
- const boardCell = board.rows[y][x];
15
- if (boardCell.isFilled()) {
16
- cells.push(boardCell.clone());
17
- }
18
- else if (placedIndex < json.tiles.length) {
19
- cells.push(readPlacedCell(json, placedIndex, x, y));
20
- placedIndex += 1;
21
- }
22
- else {
23
- break;
24
- }
25
- x += stepX;
26
- y += stepY;
27
- }
28
- return cells;
29
- }
30
- function readCollisions(cells, board, isHorizontal) {
31
- const collisions = [];
32
- for (const cell of cells) {
33
- if (cell.isFilled()) {
34
- continue;
35
- }
36
- const collision = readCollision(cell, board, isHorizontal);
37
- if (collision.length > 1) {
38
- collisions.push(collision);
39
- }
40
- }
41
- return collisions;
42
- }
43
- function readPlacedCell(json, placedIndex, x, y) {
44
- const character = json.tiles[placedIndex];
45
- const isBlank = json.blankIndices.includes(placedIndex);
46
- return new Cell_1.Cell({ isEmpty: true, tile: new Tile_1.Tile({ character, isBlank }), x, y });
47
- }
48
- function readCollision(placed, board, isHorizontal) {
49
- const stepX = isHorizontal ? 0 : 1;
50
- const stepY = isHorizontal ? 1 : 0;
51
- let x = placed.x - stepX;
52
- let y = placed.y - stepY;
53
- while (x >= 0 && y >= 0 && board.rows[y][x].isFilled()) {
54
- x -= stepX;
55
- y -= stepY;
56
- }
57
- x += stepX;
58
- y += stepY;
59
- const collision = [];
60
- while (y < board.rowsCount && x < board.columnsCount) {
61
- if (x === placed.x && y === placed.y) {
62
- collision.push(placed);
63
- }
64
- else {
65
- const boardCell = board.rows[y][x];
66
- if (!boardCell.isFilled()) {
67
- break;
68
- }
69
- collision.push(boardCell.clone());
70
- }
71
- x += stepX;
72
- y += stepY;
73
- }
74
- return collision;
75
- }