scrabble-solver 2.18.10-alpha.0 → 2.18.10-alpha.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 (1173) hide show
  1. package/CLAUDE.md +1 -1
  2. package/bun.lock +29 -29
  3. package/e2e/app.spec.ts +3 -3
  4. package/e2e/bugs/112-character-bonus.spec.ts +1 -1
  5. package/e2e/bugs/129-esc-sidebar.spec.ts +1 -1
  6. package/e2e/bugs/3-x-tile-in-polish.spec.ts +1 -1
  7. package/e2e/bugs/30-click-inside-radio-icon.spec.ts +1 -1
  8. package/e2e/bugs/333-disabled-radio-cursor.spec.ts +1 -1
  9. package/e2e/bugs/342-results-sorting.spec.ts +1 -1
  10. package/e2e/bugs/363-dictionary-input-unique-words.spec.ts +1 -1
  11. package/e2e/bugs/380-transliteration-when-pasting.spec.ts +1 -1
  12. package/e2e/bugs/398-digraphs-in-created-words.spec.ts +2 -2
  13. package/e2e/bugs/401-board-state-on-game-change.spec.ts +1 -1
  14. package/e2e/bugs/452-stale-translations-cache.spec.ts +1 -1
  15. package/e2e/features/198-highlight-unreachable-cells.spec.ts +1 -2
  16. package/e2e/features/430-highlight-unreachable-cells-results.spec.ts +1 -2
  17. package/e2e/features/91-hover-remaining-tile-highlights.spec.ts +3 -4
  18. package/e2e/features/hidden-coordinates-migration.spec.ts +1 -1
  19. package/e2e/features/words-preview.spec.ts +4 -4
  20. package/e2e/lib/actions.ts +17 -4
  21. package/e2e/lib/selectors.ts +1 -1
  22. package/package.json +3 -3
  23. package/packages/configs/README.md +3 -0
  24. package/packages/configs/build/games/crossplay.d.ts +19 -0
  25. package/packages/configs/build/games/crossplay.js +73 -0
  26. package/packages/configs/build/games/index.d.ts +9 -0
  27. package/packages/configs/build/games/index.js +25 -0
  28. package/packages/configs/build/games/kelimelik.d.ts +19 -0
  29. package/packages/configs/build/games/kelimelik.js +65 -0
  30. package/packages/configs/build/games/letterLeague.d.ts +19 -0
  31. package/packages/configs/build/games/letterLeague.js +161 -0
  32. package/packages/configs/build/games/literaki.d.ts +26 -0
  33. package/packages/configs/build/games/literaki.js +110 -0
  34. package/packages/configs/build/games/scrabble.d.ts +19 -0
  35. package/packages/configs/build/games/scrabble.js +78 -0
  36. package/packages/configs/build/games/scrabbleDuel.d.ts +19 -0
  37. package/packages/configs/build/games/scrabbleDuel.js +50 -0
  38. package/packages/configs/build/games/superScrabble.d.ts +19 -0
  39. package/packages/configs/build/games/superScrabble.js +141 -0
  40. package/packages/configs/build/games/wordfeud.d.ts +19 -0
  41. package/packages/configs/build/games/wordfeud.js +81 -0
  42. package/packages/configs/build/games/wyrazy.d.ts +19 -0
  43. package/packages/configs/build/games/wyrazy.js +73 -0
  44. package/packages/configs/build/getConfig.d.ts +2 -0
  45. package/packages/configs/build/getConfig.js +46 -0
  46. package/packages/configs/build/hasConfig.d.ts +2 -0
  47. package/packages/configs/build/hasConfig.js +42 -0
  48. package/packages/configs/build/index.d.ts +5 -0
  49. package/packages/configs/build/index.js +44 -0
  50. package/packages/configs/build/languages/english.d.ts +15 -0
  51. package/packages/configs/build/languages/english.js +456 -0
  52. package/packages/configs/build/languages/french.d.ts +2 -0
  53. package/packages/configs/build/languages/french.js +37 -0
  54. package/packages/configs/build/languages/german.d.ts +2 -0
  55. package/packages/configs/build/languages/german.js +40 -0
  56. package/packages/configs/build/languages/index.d.ts +8 -0
  57. package/packages/configs/build/languages/index.js +24 -0
  58. package/packages/configs/build/languages/persian.d.ts +2 -0
  59. package/packages/configs/build/languages/persian.js +43 -0
  60. package/packages/configs/build/languages/polish.d.ts +4 -0
  61. package/packages/configs/build/languages/polish.js +119 -0
  62. package/packages/configs/build/languages/romanian.d.ts +3 -0
  63. package/packages/configs/build/languages/romanian.js +64 -0
  64. package/packages/configs/build/languages/spanish.d.ts +2 -0
  65. package/packages/configs/build/languages/spanish.js +39 -0
  66. package/packages/configs/build/languages/turkish.d.ts +3 -0
  67. package/packages/configs/build/languages/turkish.js +75 -0
  68. package/packages/configs/package.json +41 -0
  69. package/packages/configs/src/games/crossplay.ts +87 -0
  70. package/packages/configs/src/games/index.ts +9 -0
  71. package/packages/configs/src/games/kelimelik.ts +63 -0
  72. package/packages/configs/src/games/letterLeague.ts +177 -0
  73. package/packages/configs/src/games/literaki.ts +108 -0
  74. package/packages/configs/src/games/scrabble.ts +76 -0
  75. package/packages/configs/src/games/scrabbleDuel.ts +56 -0
  76. package/packages/configs/src/games/superScrabble.ts +139 -0
  77. package/packages/configs/src/games/wordfeud.ts +79 -0
  78. package/packages/configs/src/games/wyrazy.ts +71 -0
  79. package/packages/configs/src/getConfig.ts +14 -0
  80. package/packages/configs/src/hasConfig.ts +8 -0
  81. package/packages/configs/src/index.ts +6 -0
  82. package/packages/configs/src/languages/english.ts +469 -0
  83. package/packages/configs/src/languages/french.ts +36 -0
  84. package/packages/configs/src/languages/german.ts +39 -0
  85. package/packages/configs/src/languages/index.ts +8 -0
  86. package/packages/configs/src/languages/persian.ts +42 -0
  87. package/packages/configs/src/languages/polish.ts +120 -0
  88. package/packages/configs/src/languages/romanian.ts +64 -0
  89. package/packages/configs/src/languages/spanish.ts +38 -0
  90. package/packages/configs/src/languages/turkish.ts +75 -0
  91. package/packages/configs/tsconfig.json +10 -0
  92. package/packages/constants/README.md +3 -0
  93. package/packages/constants/build/index.d.ts +12 -0
  94. package/packages/constants/build/index.js +12 -0
  95. package/packages/constants/package.json +30 -0
  96. package/packages/constants/src/index.ts +17 -0
  97. package/packages/constants/tsconfig.json +10 -0
  98. package/packages/dictionaries/README.md +3 -0
  99. package/packages/dictionaries/bin/remove-dictionaries.js +13 -0
  100. package/packages/dictionaries/bin/update-dictionaries.js +14 -0
  101. package/packages/dictionaries/build/Dictionaries.d.ts +12 -0
  102. package/packages/dictionaries/build/Dictionaries.js +53 -0
  103. package/packages/dictionaries/build/constants.d.ts +3 -0
  104. package/packages/dictionaries/build/constants.js +11 -0
  105. package/packages/dictionaries/build/index.d.ts +3 -0
  106. package/packages/dictionaries/build/index.js +20 -0
  107. package/packages/dictionaries/build/lib/DiskCache.d.ts +17 -0
  108. package/packages/dictionaries/build/lib/DiskCache.js +64 -0
  109. package/packages/dictionaries/build/lib/LayeredCache.d.ts +12 -0
  110. package/packages/dictionaries/build/lib/LayeredCache.js +53 -0
  111. package/packages/dictionaries/build/lib/MemoryCache.d.ts +12 -0
  112. package/packages/dictionaries/build/lib/MemoryCache.js +33 -0
  113. package/packages/dictionaries/build/lib/createAsyncProxy.d.ts +3 -0
  114. package/packages/dictionaries/build/lib/createAsyncProxy.js +19 -0
  115. package/packages/dictionaries/build/lib/createCacheTimestampComparator.d.ts +4 -0
  116. package/packages/dictionaries/build/lib/createCacheTimestampComparator.js +20 -0
  117. package/packages/dictionaries/build/lib/downloadDictionary.d.ts +3 -0
  118. package/packages/dictionaries/build/lib/downloadDictionary.js +20 -0
  119. package/packages/dictionaries/build/lib/getDictionaryFilepath.d.ts +2 -0
  120. package/packages/dictionaries/build/lib/getDictionaryFilepath.js +12 -0
  121. package/packages/dictionaries/build/lib/index.d.ts +7 -0
  122. package/packages/dictionaries/build/lib/index.js +17 -0
  123. package/packages/dictionaries/build/types.d.ts +7 -0
  124. package/packages/dictionaries/build/types.js +2 -0
  125. package/packages/dictionaries/package.json +46 -0
  126. package/packages/dictionaries/src/Dictionaries.ts +65 -0
  127. package/packages/dictionaries/src/constants.ts +8 -0
  128. package/packages/dictionaries/src/index.ts +5 -0
  129. package/packages/dictionaries/src/lib/DiskCache.test.ts +75 -0
  130. package/packages/dictionaries/src/lib/DiskCache.ts +75 -0
  131. package/packages/dictionaries/src/lib/LayeredCache.ts +67 -0
  132. package/packages/dictionaries/src/lib/MemoryCache.ts +40 -0
  133. package/packages/dictionaries/src/lib/createAsyncProxy.ts +18 -0
  134. package/packages/dictionaries/src/lib/createCacheTimestampComparator.ts +25 -0
  135. package/packages/dictionaries/src/lib/downloadDictionary.ts +21 -0
  136. package/packages/dictionaries/src/lib/getDictionaryFilepath.ts +8 -0
  137. package/packages/dictionaries/src/lib/index.ts +7 -0
  138. package/packages/dictionaries/src/types.ts +7 -0
  139. package/packages/dictionaries/tsconfig.json +10 -0
  140. package/packages/logger/README.md +21 -0
  141. package/packages/logger/build/constants.d.ts +4 -0
  142. package/packages/logger/build/constants.js +12 -0
  143. package/packages/logger/build/describeError.d.ts +5 -0
  144. package/packages/logger/build/describeError.js +23 -0
  145. package/packages/logger/build/events.d.ts +92 -0
  146. package/packages/logger/build/events.js +13 -0
  147. package/packages/logger/build/formatCsvRow.d.ts +2 -0
  148. package/packages/logger/build/formatCsvRow.js +20 -0
  149. package/packages/logger/build/index.d.ts +5 -0
  150. package/packages/logger/build/index.js +15 -0
  151. package/packages/logger/build/logError.d.ts +4 -0
  152. package/packages/logger/build/logError.js +17 -0
  153. package/packages/logger/build/logEvent.d.ts +3 -0
  154. package/packages/logger/build/logEvent.js +29 -0
  155. package/packages/logger/package.json +34 -0
  156. package/packages/logger/scripts/export-csv.ts +113 -0
  157. package/packages/logger/scripts/readEvents.ts +34 -0
  158. package/packages/logger/scripts/tsconfig.json +10 -0
  159. package/packages/logger/src/constants.ts +13 -0
  160. package/packages/logger/src/describeError.test.ts +44 -0
  161. package/packages/logger/src/describeError.ts +30 -0
  162. package/packages/logger/src/events.ts +103 -0
  163. package/packages/logger/src/formatCsvRow.test.ts +41 -0
  164. package/packages/logger/src/formatCsvRow.ts +24 -0
  165. package/packages/logger/src/index.ts +13 -0
  166. package/packages/logger/src/logError.ts +24 -0
  167. package/packages/logger/src/logEvent.test.ts +59 -0
  168. package/packages/logger/src/logEvent.ts +26 -0
  169. package/packages/logger/tsconfig.json +10 -0
  170. package/packages/scrabble-solver/.env +1 -0
  171. package/packages/scrabble-solver/.next/BUILD_ID +1 -0
  172. package/packages/scrabble-solver/.next/build-manifest.json +42 -0
  173. package/packages/scrabble-solver/.next/diagnostics/build-diagnostics.json +6 -0
  174. package/packages/scrabble-solver/.next/diagnostics/framework.json +1 -0
  175. package/packages/scrabble-solver/.next/dynamic-css-manifest.json +8 -0
  176. package/packages/scrabble-solver/.next/export-marker.json +6 -0
  177. package/packages/scrabble-solver/.next/images-manifest.json +68 -0
  178. package/packages/scrabble-solver/.next/next-minimal-server.js.nft.json +1 -0
  179. package/packages/scrabble-solver/.next/next-server.js.nft.json +1 -0
  180. package/packages/scrabble-solver/.next/package.json +1 -0
  181. package/packages/scrabble-solver/.next/prerender-manifest.json +28 -0
  182. package/packages/scrabble-solver/.next/react-loadable-manifest.json +176 -0
  183. package/packages/scrabble-solver/.next/required-server-files.js +371 -0
  184. package/packages/scrabble-solver/.next/required-server-files.json +371 -0
  185. package/packages/scrabble-solver/.next/routes-manifest.json +129 -0
  186. package/packages/scrabble-solver/.next/server/chunks/30.js +6 -0
  187. package/packages/scrabble-solver/.next/server/chunks/309.js +1 -0
  188. package/packages/scrabble-solver/.next/server/chunks/344.js +1 -0
  189. package/packages/scrabble-solver/.next/server/chunks/371.js +1 -0
  190. package/packages/scrabble-solver/.next/server/chunks/465.js +1 -0
  191. package/packages/scrabble-solver/.next/server/chunks/546.js +1 -0
  192. package/packages/scrabble-solver/.next/server/chunks/612.js +5 -0
  193. package/packages/scrabble-solver/.next/server/chunks/623.js +1 -0
  194. package/packages/scrabble-solver/.next/server/chunks/624.js +1 -0
  195. package/packages/scrabble-solver/.next/server/chunks/641.js +1 -0
  196. package/packages/scrabble-solver/.next/server/chunks/67.js +1 -0
  197. package/packages/scrabble-solver/.next/server/chunks/671.js +1 -0
  198. package/packages/scrabble-solver/.next/server/chunks/692.js +1 -0
  199. package/packages/scrabble-solver/.next/server/chunks/705.js +1 -0
  200. package/packages/scrabble-solver/.next/server/chunks/712.js +1 -0
  201. package/packages/scrabble-solver/.next/server/chunks/715.js +1 -0
  202. package/packages/scrabble-solver/.next/server/chunks/812.js +1 -0
  203. package/packages/scrabble-solver/.next/server/chunks/846.js +1 -0
  204. package/packages/scrabble-solver/.next/server/chunks/853.js +15 -0
  205. package/packages/scrabble-solver/.next/server/chunks/886.js +1 -0
  206. package/packages/scrabble-solver/.next/server/chunks/942.js +1 -0
  207. package/packages/scrabble-solver/.next/server/chunks/953.js +1 -0
  208. package/packages/scrabble-solver/.next/server/chunks/961.js +1 -0
  209. package/packages/scrabble-solver/.next/server/chunks/968.js +1 -0
  210. package/packages/scrabble-solver/.next/server/dynamic-css-manifest.js +1 -0
  211. package/packages/scrabble-solver/.next/server/functions-config-manifest.json +4 -0
  212. package/packages/scrabble-solver/.next/server/interception-route-rewrite-manifest.js +1 -0
  213. package/packages/scrabble-solver/.next/server/middleware-build-manifest.js +1 -0
  214. package/packages/scrabble-solver/.next/server/middleware-manifest.json +6 -0
  215. package/packages/scrabble-solver/.next/server/middleware-react-loadable-manifest.js +1 -0
  216. package/packages/scrabble-solver/.next/server/next-font-manifest.js +1 -0
  217. package/packages/scrabble-solver/.next/server/next-font-manifest.json +1 -0
  218. package/packages/scrabble-solver/.next/server/pages/404.html +29 -0
  219. package/packages/scrabble-solver/.next/server/pages/500.html +29 -0
  220. package/packages/scrabble-solver/.next/server/pages/_app.js +1 -0
  221. package/packages/scrabble-solver/.next/server/pages/_app.js.nft.json +1 -0
  222. package/packages/scrabble-solver/.next/server/pages/_document.js +28 -0
  223. package/packages/scrabble-solver/.next/server/pages/_document.js.nft.json +1 -0
  224. package/packages/scrabble-solver/.next/server/pages/_error.js +28 -0
  225. package/packages/scrabble-solver/.next/server/pages/_error.js.nft.json +1 -0
  226. package/packages/scrabble-solver/.next/server/pages/api/dictionary/[locale]/[word].js +2 -0
  227. package/packages/scrabble-solver/.next/server/pages/api/dictionary/[locale]/[word].js.nft.json +1 -0
  228. package/packages/scrabble-solver/.next/server/pages/api/dictionary/[locale].js +1 -0
  229. package/packages/scrabble-solver/.next/server/pages/api/dictionary/[locale].js.nft.json +1 -0
  230. package/packages/scrabble-solver/.next/server/pages/api/solve.js +1 -0
  231. package/packages/scrabble-solver/.next/server/pages/api/solve.js.nft.json +1 -0
  232. package/packages/scrabble-solver/.next/server/pages/api/verify.js +1 -0
  233. package/packages/scrabble-solver/.next/server/pages/api/verify.js.nft.json +1 -0
  234. package/packages/scrabble-solver/.next/server/pages/api/visit.js +1 -0
  235. package/packages/scrabble-solver/.next/server/pages/api/visit.js.nft.json +1 -0
  236. package/packages/scrabble-solver/.next/server/pages/index.html +29 -0
  237. package/packages/scrabble-solver/.next/server/pages/index.js +30 -0
  238. package/packages/scrabble-solver/.next/server/pages/index.js.nft.json +1 -0
  239. package/packages/scrabble-solver/.next/server/pages/index.json +1 -0
  240. package/packages/scrabble-solver/.next/server/pages/index.meta +1 -0
  241. package/packages/scrabble-solver/.next/server/pages/not-found.html +29 -0
  242. package/packages/scrabble-solver/.next/server/pages/not-found.js.nft.json +1 -0
  243. package/packages/scrabble-solver/.next/server/pages-manifest.json +13 -0
  244. package/packages/scrabble-solver/.next/server/prefetch-hints.json +1 -0
  245. package/packages/scrabble-solver/.next/server/preview-props.json +5 -0
  246. package/packages/scrabble-solver/.next/server/route-cache/PAGES/8a5edab282632443219e051e4ade2d1d5bbc671c781051bf1437897cbdfea0f1/$/index.html +29 -0
  247. package/packages/scrabble-solver/.next/server/route-cache/PAGES/8a5edab282632443219e051e4ade2d1d5bbc671c781051bf1437897cbdfea0f1/$/index.json +1 -0
  248. package/packages/scrabble-solver/.next/server/route-cache/PAGES/8a5edab282632443219e051e4ade2d1d5bbc671c781051bf1437897cbdfea0f1/$/index.meta +1 -0
  249. package/packages/scrabble-solver/.next/server/webpack-api-runtime.js +1 -0
  250. package/packages/scrabble-solver/.next/server/webpack-runtime.js +1 -0
  251. package/packages/scrabble-solver/.next/static/chunks/100.305bdf9c75b1758f.js +1 -0
  252. package/packages/scrabble-solver/.next/static/chunks/256.9fcbd6c03ebdb85b.js +1 -0
  253. package/packages/scrabble-solver/.next/static/chunks/277.6785dfaf22fdb0b7.js +1 -0
  254. package/packages/scrabble-solver/.next/static/chunks/307.92ab8bd0b380a54b.js +1 -0
  255. package/packages/scrabble-solver/.next/static/chunks/341.79535ba85bf1986f.js +1 -0
  256. package/packages/scrabble-solver/.next/static/chunks/363.1e1dca73189c1b3e.js +1 -0
  257. package/packages/scrabble-solver/.next/static/chunks/422.905bb771191013e7.js +1 -0
  258. package/packages/scrabble-solver/.next/static/chunks/541.dcd9e8b804f88da5.js +1 -0
  259. package/packages/scrabble-solver/.next/static/chunks/601.d6817fd655b959d1.js +1 -0
  260. package/packages/scrabble-solver/.next/static/chunks/631.98d42abad0a60af6.js +1 -0
  261. package/packages/scrabble-solver/.next/static/chunks/663.0b4d7a0e7f8e4ad3.js +1 -0
  262. package/packages/scrabble-solver/.next/static/chunks/693.1f53805be6ad36d1.js +1 -0
  263. package/packages/scrabble-solver/.next/static/chunks/744-5ad846426b8f4514.js +3 -0
  264. package/packages/scrabble-solver/.next/static/chunks/820.c5e57d8b664cf9df.js +1 -0
  265. package/packages/scrabble-solver/.next/static/chunks/827.d01b6d69af340ba4.js +1 -0
  266. package/packages/scrabble-solver/.next/static/chunks/865.88d79c2c4b53cc8f.js +1 -0
  267. package/packages/scrabble-solver/.next/static/chunks/912.077603e4f0bc6cca.js +1 -0
  268. package/packages/scrabble-solver/.next/static/chunks/939.f8728029bfdc4515.js +1 -0
  269. package/packages/scrabble-solver/.next/static/chunks/980.dd35e807b18063c1.js +1 -0
  270. package/packages/scrabble-solver/.next/static/chunks/990.61296e5870b91f11.js +1 -0
  271. package/packages/scrabble-solver/.next/static/chunks/framework-86d3b250d278cea9.js +1 -0
  272. package/packages/scrabble-solver/.next/static/chunks/main-738e097cd313908f.js +5 -0
  273. package/packages/scrabble-solver/.next/static/chunks/pages/_app-5b1d356edb0d0f78.js +1 -0
  274. package/packages/scrabble-solver/.next/static/chunks/pages/_error-f0290a98eb3ed0ec.js +1 -0
  275. package/packages/scrabble-solver/.next/static/chunks/pages/index-c21b524ce1875d6e.js +1 -0
  276. package/packages/scrabble-solver/.next/static/chunks/pages/not-found-a59f9deeeff63d17.js +1 -0
  277. package/packages/scrabble-solver/.next/static/chunks/polyfills-42372ed130431b0a.js +1 -0
  278. package/packages/scrabble-solver/.next/static/chunks/webpack-c4c264f86e0bb34b.js +1 -0
  279. package/packages/scrabble-solver/.next/static/css/2d03f0da2c678dfc.css +1 -0
  280. package/packages/scrabble-solver/.next/static/css/4dbcacc1122ac6b9.css +2 -0
  281. package/packages/scrabble-solver/.next/static/css/7b6724d2df70f48f.css +1 -0
  282. package/packages/scrabble-solver/.next/static/css/8b8087461767360a.css +1 -0
  283. package/packages/scrabble-solver/.next/static/css/98051ed25076b896.css +1 -0
  284. package/packages/scrabble-solver/.next/static/css/b736be3bd02b5d99.css +1 -0
  285. package/packages/scrabble-solver/.next/static/css/ca311e6c030663d4.css +1 -0
  286. package/packages/scrabble-solver/.next/static/css/cd4d7f2458487399.css +1 -0
  287. package/packages/scrabble-solver/.next/static/css/dee878eb64099d92.css +1 -0
  288. package/packages/scrabble-solver/.next/static/iJDkHROLsX-5CEsv2p6sC/_buildManifest.js +1 -0
  289. package/packages/scrabble-solver/.next/static/iJDkHROLsX-5CEsv2p6sC/_ssgManifest.js +1 -0
  290. package/packages/scrabble-solver/.next/trace +36 -0
  291. package/packages/scrabble-solver/.next/trace-build +1 -0
  292. package/packages/scrabble-solver/.next/types/cache-life.d.ts +114 -0
  293. package/packages/scrabble-solver/.next/types/root-params.d.ts +3 -0
  294. package/packages/scrabble-solver/.next/types/routes.d.ts +57 -0
  295. package/packages/scrabble-solver/.next/types/validator.ts +113 -0
  296. package/packages/scrabble-solver/AGENTS.md +9 -0
  297. package/packages/scrabble-solver/CLAUDE.md +1 -0
  298. package/packages/scrabble-solver/README.md +19 -0
  299. package/packages/scrabble-solver/empty-module.js +2 -0
  300. package/packages/scrabble-solver/next-env.d.ts +7 -0
  301. package/packages/scrabble-solver/next.config.js +60 -0
  302. package/packages/scrabble-solver/package.json +99 -0
  303. package/packages/scrabble-solver/public/favicon.ico +0 -0
  304. package/packages/scrabble-solver/public/icons/apple-touch-icon-114x114.png +0 -0
  305. package/packages/scrabble-solver/public/icons/apple-touch-icon-120x120.png +0 -0
  306. package/packages/scrabble-solver/public/icons/apple-touch-icon-144x144.png +0 -0
  307. package/packages/scrabble-solver/public/icons/apple-touch-icon-152x152.png +0 -0
  308. package/packages/scrabble-solver/public/icons/apple-touch-icon-57x57.png +0 -0
  309. package/packages/scrabble-solver/public/icons/apple-touch-icon-60x60.png +0 -0
  310. package/packages/scrabble-solver/public/icons/apple-touch-icon-72x72.png +0 -0
  311. package/packages/scrabble-solver/public/icons/apple-touch-icon-76x76.png +0 -0
  312. package/packages/scrabble-solver/public/icons/favicon-128.png +0 -0
  313. package/packages/scrabble-solver/public/icons/favicon-16x16.png +0 -0
  314. package/packages/scrabble-solver/public/icons/favicon-196x196.png +0 -0
  315. package/packages/scrabble-solver/public/icons/favicon-32x32.png +0 -0
  316. package/packages/scrabble-solver/public/icons/favicon-96x96.png +0 -0
  317. package/packages/scrabble-solver/public/icons/favicon.svg +6 -0
  318. package/packages/scrabble-solver/public/icons/mstile-144x144.png +0 -0
  319. package/packages/scrabble-solver/public/icons/mstile-150x150.png +0 -0
  320. package/packages/scrabble-solver/public/icons/mstile-310x150.png +0 -0
  321. package/packages/scrabble-solver/public/icons/mstile-310x310.png +0 -0
  322. package/packages/scrabble-solver/public/icons/mstile-70x70.png +0 -0
  323. package/packages/scrabble-solver/public/llms.txt +11 -0
  324. package/packages/scrabble-solver/public/logo.svg +62 -0
  325. package/packages/scrabble-solver/public/og.png +0 -0
  326. package/packages/scrabble-solver/public/robots.txt +5 -0
  327. package/packages/scrabble-solver/public/service-worker.js +2 -0
  328. package/packages/scrabble-solver/public/service-worker.js.map +1 -0
  329. package/packages/scrabble-solver/public/site.webmanifest +14 -0
  330. package/packages/scrabble-solver/public/sitemap.xml +1 -0
  331. package/packages/scrabble-solver/scripts/generate-scss-types.ts +112 -0
  332. package/packages/scrabble-solver/src/@types/scss.d.ts +6 -0
  333. package/packages/scrabble-solver/src/@types/svg.d.ts +7 -0
  334. package/packages/scrabble-solver/src/api/BadRequestError.ts +6 -0
  335. package/packages/scrabble-solver/src/api/index.ts +6 -0
  336. package/packages/scrabble-solver/src/api/isBoardValid.ts +41 -0
  337. package/packages/scrabble-solver/src/api/isCellValid.ts +25 -0
  338. package/packages/scrabble-solver/src/api/isCharacterValid.ts +12 -0
  339. package/packages/scrabble-solver/src/api/isRowValid.ts +17 -0
  340. package/packages/scrabble-solver/src/api/withApiLog.ts +85 -0
  341. package/packages/scrabble-solver/src/components/Alert/Alert.module.scss +52 -0
  342. package/packages/scrabble-solver/src/components/Alert/Alert.module.scss.d.ts +13 -0
  343. package/packages/scrabble-solver/src/components/Alert/Alert.tsx +44 -0
  344. package/packages/scrabble-solver/src/components/Alert/index.ts +1 -0
  345. package/packages/scrabble-solver/src/components/Badge/Badge.module.scss +12 -0
  346. package/packages/scrabble-solver/src/components/Badge/Badge.module.scss.d.ts +6 -0
  347. package/packages/scrabble-solver/src/components/Badge/Badge.tsx +13 -0
  348. package/packages/scrabble-solver/src/components/Badge/index.ts +1 -0
  349. package/packages/scrabble-solver/src/components/Board/Board.module.scss +83 -0
  350. package/packages/scrabble-solver/src/components/Board/Board.module.scss.d.ts +17 -0
  351. package/packages/scrabble-solver/src/components/Board/Board.tsx +221 -0
  352. package/packages/scrabble-solver/src/components/Board/BoardPure.tsx +166 -0
  353. package/packages/scrabble-solver/src/components/Board/components/Actions/Actions.module.scss +33 -0
  354. package/packages/scrabble-solver/src/components/Board/components/Actions/Actions.module.scss.d.ts +7 -0
  355. package/packages/scrabble-solver/src/components/Board/components/Actions/Actions.tsx +103 -0
  356. package/packages/scrabble-solver/src/components/Board/components/Actions/index.ts +1 -0
  357. package/packages/scrabble-solver/src/components/Board/components/Actions/lib.ts +32 -0
  358. package/packages/scrabble-solver/src/components/Board/components/Cell/Cell.module.scss +99 -0
  359. package/packages/scrabble-solver/src/components/Board/components/Cell/Cell.module.scss.d.ts +13 -0
  360. package/packages/scrabble-solver/src/components/Board/components/Cell/Cell.tsx +135 -0
  361. package/packages/scrabble-solver/src/components/Board/components/Cell/index.ts +1 -0
  362. package/packages/scrabble-solver/src/components/Board/components/InputPrompt/InputPrompt.module.scss +34 -0
  363. package/packages/scrabble-solver/src/components/Board/components/InputPrompt/InputPrompt.module.scss.d.ts +10 -0
  364. package/packages/scrabble-solver/src/components/Board/components/InputPrompt/InputPrompt.tsx +87 -0
  365. package/packages/scrabble-solver/src/components/Board/components/InputPrompt/index.ts +1 -0
  366. package/packages/scrabble-solver/src/components/Board/components/ToggleDirectionButton/ToggleDirectionButton.module.scss +21 -0
  367. package/packages/scrabble-solver/src/components/Board/components/ToggleDirectionButton/ToggleDirectionButton.module.scss.d.ts +8 -0
  368. package/packages/scrabble-solver/src/components/Board/components/ToggleDirectionButton/ToggleDirectionButton.tsx +41 -0
  369. package/packages/scrabble-solver/src/components/Board/components/ToggleDirectionButton/index.ts +1 -0
  370. package/packages/scrabble-solver/src/components/Board/components/index.ts +4 -0
  371. package/packages/scrabble-solver/src/components/Board/getBoardBackground.ts +175 -0
  372. package/packages/scrabble-solver/src/components/Board/hooks/index.ts +5 -0
  373. package/packages/scrabble-solver/src/components/Board/hooks/useBoardStyle.ts +24 -0
  374. package/packages/scrabble-solver/src/components/Board/hooks/useFloatingActions.ts +17 -0
  375. package/packages/scrabble-solver/src/components/Board/hooks/useFloatingFocus.ts +8 -0
  376. package/packages/scrabble-solver/src/components/Board/hooks/useFloatingInputPrompt.ts +17 -0
  377. package/packages/scrabble-solver/src/components/Board/hooks/useGrid.ts +390 -0
  378. package/packages/scrabble-solver/src/components/Board/index.ts +1 -0
  379. package/packages/scrabble-solver/src/components/Board/lib.test.ts +106 -0
  380. package/packages/scrabble-solver/src/components/Board/lib.ts +149 -0
  381. package/packages/scrabble-solver/src/components/Board/selectors.ts +39 -0
  382. package/packages/scrabble-solver/src/components/Button/Button.module.scss +96 -0
  383. package/packages/scrabble-solver/src/components/Button/Button.module.scss.d.ts +12 -0
  384. package/packages/scrabble-solver/src/components/Button/Button.tsx +50 -0
  385. package/packages/scrabble-solver/src/components/Button/Link.tsx +45 -0
  386. package/packages/scrabble-solver/src/components/Button/index.ts +1 -0
  387. package/packages/scrabble-solver/src/components/Dictionary/Dictionary.module.scss +65 -0
  388. package/packages/scrabble-solver/src/components/Dictionary/Dictionary.module.scss.d.ts +14 -0
  389. package/packages/scrabble-solver/src/components/Dictionary/Dictionary.tsx +78 -0
  390. package/packages/scrabble-solver/src/components/Dictionary/index.ts +1 -0
  391. package/packages/scrabble-solver/src/components/DictionaryInput/DictionaryInput.module.scss +12 -0
  392. package/packages/scrabble-solver/src/components/DictionaryInput/DictionaryInput.module.scss.d.ts +7 -0
  393. package/packages/scrabble-solver/src/components/DictionaryInput/DictionaryInput.tsx +45 -0
  394. package/packages/scrabble-solver/src/components/DictionaryInput/index.ts +1 -0
  395. package/packages/scrabble-solver/src/components/EmptyState/EmptyState.module.scss +14 -0
  396. package/packages/scrabble-solver/src/components/EmptyState/EmptyState.module.scss.d.ts +7 -0
  397. package/packages/scrabble-solver/src/components/EmptyState/EmptyState.tsx +55 -0
  398. package/packages/scrabble-solver/src/components/EmptyState/index.ts +1 -0
  399. package/packages/scrabble-solver/src/components/IconButton/IconButton.module.scss +39 -0
  400. package/packages/scrabble-solver/src/components/IconButton/IconButton.module.scss.d.ts +8 -0
  401. package/packages/scrabble-solver/src/components/IconButton/IconButton.tsx +31 -0
  402. package/packages/scrabble-solver/src/components/IconButton/Link.tsx +26 -0
  403. package/packages/scrabble-solver/src/components/IconButton/index.ts +1 -0
  404. package/packages/scrabble-solver/src/components/Key/Key.module.scss +29 -0
  405. package/packages/scrabble-solver/src/components/Key/Key.module.scss.d.ts +6 -0
  406. package/packages/scrabble-solver/src/components/Key/Key.tsx +13 -0
  407. package/packages/scrabble-solver/src/components/Key/index.ts +1 -0
  408. package/packages/scrabble-solver/src/components/Keys/Arrows/Arrows.module.scss +41 -0
  409. package/packages/scrabble-solver/src/components/Keys/Arrows/Arrows.module.scss.d.ts +11 -0
  410. package/packages/scrabble-solver/src/components/Keys/Arrows/Arrows.tsx +32 -0
  411. package/packages/scrabble-solver/src/components/Keys/Arrows/index.ts +1 -0
  412. package/packages/scrabble-solver/src/components/Keys/index.tsx +28 -0
  413. package/packages/scrabble-solver/src/components/Loading/Loading.module.scss +33 -0
  414. package/packages/scrabble-solver/src/components/Loading/Loading.module.scss.d.ts +9 -0
  415. package/packages/scrabble-solver/src/components/Loading/Loading.tsx +37 -0
  416. package/packages/scrabble-solver/src/components/Loading/index.ts +1 -0
  417. package/packages/scrabble-solver/src/components/Logo/Logo.tsx +12 -0
  418. package/packages/scrabble-solver/src/components/Logo/LogoBlueprint.tsx +22 -0
  419. package/packages/scrabble-solver/src/components/Logo/index.ts +1 -0
  420. package/packages/scrabble-solver/src/components/Modal/Modal.module.scss +119 -0
  421. package/packages/scrabble-solver/src/components/Modal/Modal.module.scss.d.ts +15 -0
  422. package/packages/scrabble-solver/src/components/Modal/Modal.tsx +105 -0
  423. package/packages/scrabble-solver/src/components/Modal/components/Section/Section.module.scss +11 -0
  424. package/packages/scrabble-solver/src/components/Modal/components/Section/Section.module.scss.d.ts +7 -0
  425. package/packages/scrabble-solver/src/components/Modal/components/Section/Section.tsx +18 -0
  426. package/packages/scrabble-solver/src/components/Modal/components/Section/index.ts +1 -0
  427. package/packages/scrabble-solver/src/components/Modal/components/index.ts +1 -0
  428. package/packages/scrabble-solver/src/components/Modal/index.ts +1 -0
  429. package/packages/scrabble-solver/src/components/NavButtons/NavButtons.module.scss +53 -0
  430. package/packages/scrabble-solver/src/components/NavButtons/NavButtons.module.scss.d.ts +13 -0
  431. package/packages/scrabble-solver/src/components/NavButtons/NavButtons.tsx +127 -0
  432. package/packages/scrabble-solver/src/components/NavButtons/index.ts +1 -0
  433. package/packages/scrabble-solver/src/components/NavButtons/selectors.ts +11 -0
  434. package/packages/scrabble-solver/src/components/NotFound/NotFound.module.scss +37 -0
  435. package/packages/scrabble-solver/src/components/NotFound/NotFound.module.scss.d.ts +9 -0
  436. package/packages/scrabble-solver/src/components/NotFound/NotFound.tsx +18 -0
  437. package/packages/scrabble-solver/src/components/NotFound/index.ts +1 -0
  438. package/packages/scrabble-solver/src/components/PlainTiles/PlainTiles.module.scss +24 -0
  439. package/packages/scrabble-solver/src/components/PlainTiles/PlainTiles.module.scss.d.ts +11 -0
  440. package/packages/scrabble-solver/src/components/PlainTiles/PlainTiles.tsx +53 -0
  441. package/packages/scrabble-solver/src/components/PlainTiles/Tile.tsx +41 -0
  442. package/packages/scrabble-solver/src/components/PlainTiles/index.ts +1 -0
  443. package/packages/scrabble-solver/src/components/PlainTiles/lib.ts +75 -0
  444. package/packages/scrabble-solver/src/components/PlainTiles/types.ts +22 -0
  445. package/packages/scrabble-solver/src/components/Progress/Progress.module.scss +16 -0
  446. package/packages/scrabble-solver/src/components/Progress/Progress.module.scss.d.ts +6 -0
  447. package/packages/scrabble-solver/src/components/Progress/Progress.tsx +32 -0
  448. package/packages/scrabble-solver/src/components/Progress/index.ts +1 -0
  449. package/packages/scrabble-solver/src/components/Rack/Rack.module.scss +95 -0
  450. package/packages/scrabble-solver/src/components/Rack/Rack.module.scss.d.ts +10 -0
  451. package/packages/scrabble-solver/src/components/Rack/Rack.tsx +199 -0
  452. package/packages/scrabble-solver/src/components/Rack/components/InputPrompt/InputPrompt.module.scss +21 -0
  453. package/packages/scrabble-solver/src/components/Rack/components/InputPrompt/InputPrompt.module.scss.d.ts +7 -0
  454. package/packages/scrabble-solver/src/components/Rack/components/InputPrompt/InputPrompt.tsx +73 -0
  455. package/packages/scrabble-solver/src/components/Rack/components/InputPrompt/index.ts +1 -0
  456. package/packages/scrabble-solver/src/components/Rack/components/InputPrompt/lib.test.ts +27 -0
  457. package/packages/scrabble-solver/src/components/Rack/components/InputPrompt/lib.ts +17 -0
  458. package/packages/scrabble-solver/src/components/Rack/components/RackTile/RackTile.module.scss +11 -0
  459. package/packages/scrabble-solver/src/components/Rack/components/RackTile/RackTile.module.scss.d.ts +6 -0
  460. package/packages/scrabble-solver/src/components/Rack/components/RackTile/RackTile.tsx +165 -0
  461. package/packages/scrabble-solver/src/components/Rack/components/RackTile/index.ts +1 -0
  462. package/packages/scrabble-solver/src/components/Rack/components/index.ts +2 -0
  463. package/packages/scrabble-solver/src/components/Rack/index.ts +1 -0
  464. package/packages/scrabble-solver/src/components/Rack/selectors.ts +9 -0
  465. package/packages/scrabble-solver/src/components/Radio/Radio.module.scss +61 -0
  466. package/packages/scrabble-solver/src/components/Radio/Radio.module.scss.d.ts +12 -0
  467. package/packages/scrabble-solver/src/components/Radio/Radio.tsx +39 -0
  468. package/packages/scrabble-solver/src/components/Radio/index.ts +1 -0
  469. package/packages/scrabble-solver/src/components/Results/Header.tsx +114 -0
  470. package/packages/scrabble-solver/src/components/Results/Result.tsx +101 -0
  471. package/packages/scrabble-solver/src/components/Results/Results.module.scss +76 -0
  472. package/packages/scrabble-solver/src/components/Results/Results.module.scss.d.ts +17 -0
  473. package/packages/scrabble-solver/src/components/Results/Results.tsx +164 -0
  474. package/packages/scrabble-solver/src/components/Results/SolveButton.tsx +45 -0
  475. package/packages/scrabble-solver/src/components/Results/index.ts +1 -0
  476. package/packages/scrabble-solver/src/components/Results/types.ts +15 -0
  477. package/packages/scrabble-solver/src/components/Solver/Solver.module.scss +116 -0
  478. package/packages/scrabble-solver/src/components/Solver/Solver.module.scss.d.ts +20 -0
  479. package/packages/scrabble-solver/src/components/Solver/Solver.tsx +143 -0
  480. package/packages/scrabble-solver/src/components/Solver/components/InsertButton/InsertButton.module.scss +15 -0
  481. package/packages/scrabble-solver/src/components/Solver/components/InsertButton/InsertButton.module.scss.d.ts +7 -0
  482. package/packages/scrabble-solver/src/components/Solver/components/InsertButton/InsertButton.tsx +40 -0
  483. package/packages/scrabble-solver/src/components/Solver/components/InsertButton/index.ts +1 -0
  484. package/packages/scrabble-solver/src/components/Solver/components/ResultCandidatePicker/ResultCandidatePicker.module.scss +138 -0
  485. package/packages/scrabble-solver/src/components/Solver/components/ResultCandidatePicker/ResultCandidatePicker.module.scss.d.ts +19 -0
  486. package/packages/scrabble-solver/src/components/Solver/components/ResultCandidatePicker/ResultCandidatePicker.tsx +108 -0
  487. package/packages/scrabble-solver/src/components/Solver/components/ResultCandidatePicker/index.ts +1 -0
  488. package/packages/scrabble-solver/src/components/Solver/components/index.ts +2 -0
  489. package/packages/scrabble-solver/src/components/Solver/index.ts +1 -0
  490. package/packages/scrabble-solver/src/components/Spinner/Spinner.module.scss +11 -0
  491. package/packages/scrabble-solver/src/components/Spinner/Spinner.module.scss.d.ts +10 -0
  492. package/packages/scrabble-solver/src/components/Spinner/Spinner.tsx +17 -0
  493. package/packages/scrabble-solver/src/components/Spinner/index.ts +1 -0
  494. package/packages/scrabble-solver/src/components/Table/Cell.tsx +42 -0
  495. package/packages/scrabble-solver/src/components/Table/Header.tsx +11 -0
  496. package/packages/scrabble-solver/src/components/Table/HeaderButton.tsx +61 -0
  497. package/packages/scrabble-solver/src/components/Table/Row.tsx +59 -0
  498. package/packages/scrabble-solver/src/components/Table/Search.tsx +43 -0
  499. package/packages/scrabble-solver/src/components/Table/Table.module.scss +147 -0
  500. package/packages/scrabble-solver/src/components/Table/Table.module.scss.d.ts +19 -0
  501. package/packages/scrabble-solver/src/components/Table/index.ts +5 -0
  502. package/packages/scrabble-solver/src/components/Tile/Tile.module.scss +129 -0
  503. package/packages/scrabble-solver/src/components/Tile/Tile.module.scss.d.ts +19 -0
  504. package/packages/scrabble-solver/src/components/Tile/Tile.tsx +101 -0
  505. package/packages/scrabble-solver/src/components/Tile/TilePure.tsx +106 -0
  506. package/packages/scrabble-solver/src/components/Tile/index.ts +1 -0
  507. package/packages/scrabble-solver/src/components/Tooltip/Tooltip.module.scss +15 -0
  508. package/packages/scrabble-solver/src/components/Tooltip/Tooltip.module.scss.d.ts +7 -0
  509. package/packages/scrabble-solver/src/components/Tooltip/Tooltip.tsx +42 -0
  510. package/packages/scrabble-solver/src/components/Tooltip/TooltipContent.tsx +53 -0
  511. package/packages/scrabble-solver/src/components/Tooltip/TooltipTrigger.tsx +30 -0
  512. package/packages/scrabble-solver/src/components/Tooltip/context.ts +17 -0
  513. package/packages/scrabble-solver/src/components/Tooltip/index.ts +1 -0
  514. package/packages/scrabble-solver/src/components/Tooltip/useTooltip.ts +55 -0
  515. package/packages/scrabble-solver/src/hooks/useColumns.ts +69 -0
  516. package/packages/scrabble-solver/src/hooks/useDeferredRender.ts +20 -0
  517. package/packages/scrabble-solver/src/hooks/useDirection.ts +21 -0
  518. package/packages/scrabble-solver/src/hooks/useEffectOnce.ts +11 -0
  519. package/packages/scrabble-solver/src/hooks/useIsTouchDevice.ts +5 -0
  520. package/packages/scrabble-solver/src/hooks/useLanguage.ts +20 -0
  521. package/packages/scrabble-solver/src/hooks/useLatest.ts +11 -0
  522. package/packages/scrabble-solver/src/hooks/useLocalStorage.ts +49 -0
  523. package/packages/scrabble-solver/src/hooks/useMedia.ts +34 -0
  524. package/packages/scrabble-solver/src/hooks/useMediaQueries.ts +11 -0
  525. package/packages/scrabble-solver/src/hooks/useMediaQuery.ts +10 -0
  526. package/packages/scrabble-solver/src/i18n/constants.ts +106 -0
  527. package/packages/scrabble-solver/src/i18n/i18n.ts +25 -0
  528. package/packages/scrabble-solver/src/i18n/languages/english.json +88 -0
  529. package/packages/scrabble-solver/src/i18n/languages/french.json +88 -0
  530. package/packages/scrabble-solver/src/i18n/languages/german.json +88 -0
  531. package/packages/scrabble-solver/src/i18n/languages/persian.json +88 -0
  532. package/packages/scrabble-solver/src/i18n/languages/polish.json +88 -0
  533. package/packages/scrabble-solver/src/i18n/languages/romanian.json +88 -0
  534. package/packages/scrabble-solver/src/i18n/languages/spanish.json +88 -0
  535. package/packages/scrabble-solver/src/i18n/languages/turkish.json +88 -0
  536. package/packages/scrabble-solver/src/i18n/localeIcons.ts +24 -0
  537. package/packages/scrabble-solver/src/icons/ArrowDown.svg +4 -0
  538. package/packages/scrabble-solver/src/icons/ArrowLeft.svg +4 -0
  539. package/packages/scrabble-solver/src/icons/ArrowRight.svg +4 -0
  540. package/packages/scrabble-solver/src/icons/ArrowUp.svg +4 -0
  541. package/packages/scrabble-solver/src/icons/Ban.svg +4 -0
  542. package/packages/scrabble-solver/src/icons/BookHalf.svg +4 -0
  543. package/packages/scrabble-solver/src/icons/CardChecklist.svg +5 -0
  544. package/packages/scrabble-solver/src/icons/Check.svg +4 -0
  545. package/packages/scrabble-solver/src/icons/ChevronDown.svg +4 -0
  546. package/packages/scrabble-solver/src/icons/ChevronLeft.svg +4 -0
  547. package/packages/scrabble-solver/src/icons/ChevronRight.svg +4 -0
  548. package/packages/scrabble-solver/src/icons/Cog.svg +4 -0
  549. package/packages/scrabble-solver/src/icons/Cross.svg +4 -0
  550. package/packages/scrabble-solver/src/icons/CrossCircleFill.svg +4 -0
  551. package/packages/scrabble-solver/src/icons/CrossSquareFill.svg +4 -0
  552. package/packages/scrabble-solver/src/icons/DashCircleFill.svg +4 -0
  553. package/packages/scrabble-solver/src/icons/Eraser.svg +4 -0
  554. package/packages/scrabble-solver/src/icons/ExclamationSquareFill.svg +4 -0
  555. package/packages/scrabble-solver/src/icons/ExclamationTriangleFill.svg +4 -0
  556. package/packages/scrabble-solver/src/icons/EyeFill.svg +5 -0
  557. package/packages/scrabble-solver/src/icons/FlagDe.svg +5 -0
  558. package/packages/scrabble-solver/src/icons/FlagEs.svg +4 -0
  559. package/packages/scrabble-solver/src/icons/FlagFa.svg +95 -0
  560. package/packages/scrabble-solver/src/icons/FlagFill.svg +4 -0
  561. package/packages/scrabble-solver/src/icons/FlagFr.svg +5 -0
  562. package/packages/scrabble-solver/src/icons/FlagGb.svg +10 -0
  563. package/packages/scrabble-solver/src/icons/FlagPl.svg +4 -0
  564. package/packages/scrabble-solver/src/icons/FlagRo.svg +5 -0
  565. package/packages/scrabble-solver/src/icons/FlagTr.svg +4 -0
  566. package/packages/scrabble-solver/src/icons/FlagUs.svg +33 -0
  567. package/packages/scrabble-solver/src/icons/GeoAlt.svg +5 -0
  568. package/packages/scrabble-solver/src/icons/Github.svg +4 -0
  569. package/packages/scrabble-solver/src/icons/InfoCircleFill.svg +4 -0
  570. package/packages/scrabble-solver/src/icons/Keyboard.svg +5 -0
  571. package/packages/scrabble-solver/src/icons/KeyboardFill.svg +4 -0
  572. package/packages/scrabble-solver/src/icons/List.svg +4 -0
  573. package/packages/scrabble-solver/src/icons/OneTwoThree.svg +4 -0
  574. package/packages/scrabble-solver/src/icons/QuestionSquare.svg +5 -0
  575. package/packages/scrabble-solver/src/icons/Sack.svg +4 -0
  576. package/packages/scrabble-solver/src/icons/Search.svg +4 -0
  577. package/packages/scrabble-solver/src/icons/SortDown.svg +4 -0
  578. package/packages/scrabble-solver/src/icons/SortUp.svg +4 -0
  579. package/packages/scrabble-solver/src/icons/Square.svg +4 -0
  580. package/packages/scrabble-solver/src/icons/SquareA.svg +6 -0
  581. package/packages/scrabble-solver/src/icons/SquareB.svg +6 -0
  582. package/packages/scrabble-solver/src/icons/SquareFill.svg +4 -0
  583. package/packages/scrabble-solver/src/icons/Squares.svg +34 -0
  584. package/packages/scrabble-solver/src/icons/Words.svg +22 -0
  585. package/packages/scrabble-solver/src/lib/arrayEquals.ts +3 -0
  586. package/packages/scrabble-solver/src/lib/createComparator.ts +20 -0
  587. package/packages/scrabble-solver/src/lib/createCoordinatesComparator.ts +23 -0
  588. package/packages/scrabble-solver/src/lib/createHighlightWords.test.ts +13 -0
  589. package/packages/scrabble-solver/src/lib/createHighlightWords.ts +9 -0
  590. package/packages/scrabble-solver/src/lib/createKeyComparator.ts +23 -0
  591. package/packages/scrabble-solver/src/lib/createKeyboardNavigation.ts +46 -0
  592. package/packages/scrabble-solver/src/lib/createNullMovingComparator.test.ts +15 -0
  593. package/packages/scrabble-solver/src/lib/createNullMovingComparator.ts +17 -0
  594. package/packages/scrabble-solver/src/lib/createRegExp.ts +11 -0
  595. package/packages/scrabble-solver/src/lib/createSortComparator.ts +22 -0
  596. package/packages/scrabble-solver/src/lib/createStringComparator.ts +7 -0
  597. package/packages/scrabble-solver/src/lib/extractCharacters.test.ts +52 -0
  598. package/packages/scrabble-solver/src/lib/extractCharacters.ts +42 -0
  599. package/packages/scrabble-solver/src/lib/extractInputValue.ts +15 -0
  600. package/packages/scrabble-solver/src/lib/findCell.ts +5 -0
  601. package/packages/scrabble-solver/src/lib/getCoordinate.test.ts +22 -0
  602. package/packages/scrabble-solver/src/lib/getCoordinate.ts +17 -0
  603. package/packages/scrabble-solver/src/lib/getCoordinates.test.ts +21 -0
  604. package/packages/scrabble-solver/src/lib/getCoordinates.ts +16 -0
  605. package/packages/scrabble-solver/src/lib/getNextSort.ts +12 -0
  606. package/packages/scrabble-solver/src/lib/inverseDirection.ts +3 -0
  607. package/packages/scrabble-solver/src/lib/isCtrl.ts +5 -0
  608. package/packages/scrabble-solver/src/lib/isMac.ts +7 -0
  609. package/packages/scrabble-solver/src/lib/isRegExp.ts +9 -0
  610. package/packages/scrabble-solver/src/lib/isStringArray.ts +3 -0
  611. package/packages/scrabble-solver/src/lib/localeTransliterate.test.ts +19 -0
  612. package/packages/scrabble-solver/src/lib/localeTransliterate.ts +38 -0
  613. package/packages/scrabble-solver/src/lib/memoize.ts +64 -0
  614. package/packages/scrabble-solver/src/lib/noop.ts +1 -0
  615. package/packages/scrabble-solver/src/lib/numberComparator.ts +3 -0
  616. package/packages/scrabble-solver/src/lib/reverseComparator.ts +5 -0
  617. package/packages/scrabble-solver/src/lib/unorderedArraysEqual.ts +12 -0
  618. package/packages/scrabble-solver/src/lib/waitForIdleOrFirstIntent.ts +44 -0
  619. package/packages/scrabble-solver/src/lib/zipCharactersAndTiles.ts +28 -0
  620. package/packages/scrabble-solver/src/modals/DictionaryModal/DictionaryModal.module.scss +22 -0
  621. package/packages/scrabble-solver/src/modals/DictionaryModal/DictionaryModal.module.scss.d.ts +8 -0
  622. package/packages/scrabble-solver/src/modals/DictionaryModal/DictionaryModal.tsx +29 -0
  623. package/packages/scrabble-solver/src/modals/DictionaryModal/index.ts +1 -0
  624. package/packages/scrabble-solver/src/modals/KeyMapModal/KeyMapModal.tsx +65 -0
  625. package/packages/scrabble-solver/src/modals/KeyMapModal/components/Mapping/Mapping.module.scss +48 -0
  626. package/packages/scrabble-solver/src/modals/KeyMapModal/components/Mapping/Mapping.module.scss.d.ts +11 -0
  627. package/packages/scrabble-solver/src/modals/KeyMapModal/components/Mapping/Mapping.tsx +36 -0
  628. package/packages/scrabble-solver/src/modals/KeyMapModal/components/Mapping/index.ts +1 -0
  629. package/packages/scrabble-solver/src/modals/KeyMapModal/components/index.ts +1 -0
  630. package/packages/scrabble-solver/src/modals/KeyMapModal/index.ts +1 -0
  631. package/packages/scrabble-solver/src/modals/MenuModal/MenuModal.module.scss +48 -0
  632. package/packages/scrabble-solver/src/modals/MenuModal/MenuModal.module.scss.d.ts +10 -0
  633. package/packages/scrabble-solver/src/modals/MenuModal/MenuModal.tsx +93 -0
  634. package/packages/scrabble-solver/src/modals/MenuModal/index.ts +1 -0
  635. package/packages/scrabble-solver/src/modals/RemainingTilesModal/RemainingTilesModal.module.scss +25 -0
  636. package/packages/scrabble-solver/src/modals/RemainingTilesModal/RemainingTilesModal.module.scss.d.ts +9 -0
  637. package/packages/scrabble-solver/src/modals/RemainingTilesModal/RemainingTilesModal.tsx +61 -0
  638. package/packages/scrabble-solver/src/modals/RemainingTilesModal/components/Character/Character.module.scss +50 -0
  639. package/packages/scrabble-solver/src/modals/RemainingTilesModal/components/Character/Character.module.scss.d.ts +12 -0
  640. package/packages/scrabble-solver/src/modals/RemainingTilesModal/components/Character/Character.tsx +89 -0
  641. package/packages/scrabble-solver/src/modals/RemainingTilesModal/components/Character/index.ts +1 -0
  642. package/packages/scrabble-solver/src/modals/RemainingTilesModal/components/index.ts +1 -0
  643. package/packages/scrabble-solver/src/modals/RemainingTilesModal/index.ts +1 -0
  644. package/packages/scrabble-solver/src/modals/RemainingTilesModal/lib.ts +81 -0
  645. package/packages/scrabble-solver/src/modals/RemainingTilesModal/selectors.ts +7 -0
  646. package/packages/scrabble-solver/src/modals/ResultsModal/ResultsModal.module.scss +20 -0
  647. package/packages/scrabble-solver/src/modals/ResultsModal/ResultsModal.module.scss.d.ts +8 -0
  648. package/packages/scrabble-solver/src/modals/ResultsModal/ResultsModal.tsx +107 -0
  649. package/packages/scrabble-solver/src/modals/ResultsModal/index.ts +1 -0
  650. package/packages/scrabble-solver/src/modals/SettingsModal/SettingsModal.tsx +65 -0
  651. package/packages/scrabble-solver/src/modals/SettingsModal/components/AutoGroupTilesSetting/AutoGroupTilesSetting.module.scss +12 -0
  652. package/packages/scrabble-solver/src/modals/SettingsModal/components/AutoGroupTilesSetting/AutoGroupTilesSetting.module.scss.d.ts +7 -0
  653. package/packages/scrabble-solver/src/modals/SettingsModal/components/AutoGroupTilesSetting/AutoGroupTilesSetting.tsx +58 -0
  654. package/packages/scrabble-solver/src/modals/SettingsModal/components/AutoGroupTilesSetting/constants.ts +1 -0
  655. package/packages/scrabble-solver/src/modals/SettingsModal/components/AutoGroupTilesSetting/index.ts +1 -0
  656. package/packages/scrabble-solver/src/modals/SettingsModal/components/AutoGroupTilesSetting/lib.ts +15 -0
  657. package/packages/scrabble-solver/src/modals/SettingsModal/components/ConfigSetting/ConfigSetting.module.scss +12 -0
  658. package/packages/scrabble-solver/src/modals/SettingsModal/components/ConfigSetting/ConfigSetting.module.scss.d.ts +7 -0
  659. package/packages/scrabble-solver/src/modals/SettingsModal/components/ConfigSetting/ConfigSetting.tsx +45 -0
  660. package/packages/scrabble-solver/src/modals/SettingsModal/components/ConfigSetting/index.ts +1 -0
  661. package/packages/scrabble-solver/src/modals/SettingsModal/components/ConfigSetting/lib.ts +19 -0
  662. package/packages/scrabble-solver/src/modals/SettingsModal/components/HighlightUnreachableCellsSetting/HighlightUnreachableCellsSetting.module.scss +12 -0
  663. package/packages/scrabble-solver/src/modals/SettingsModal/components/HighlightUnreachableCellsSetting/HighlightUnreachableCellsSetting.module.scss.d.ts +7 -0
  664. package/packages/scrabble-solver/src/modals/SettingsModal/components/HighlightUnreachableCellsSetting/HighlightUnreachableCellsSetting.tsx +51 -0
  665. package/packages/scrabble-solver/src/modals/SettingsModal/components/HighlightUnreachableCellsSetting/index.ts +1 -0
  666. package/packages/scrabble-solver/src/modals/SettingsModal/components/InputModeSetting/InputModeSetting.module.scss +12 -0
  667. package/packages/scrabble-solver/src/modals/SettingsModal/components/InputModeSetting/InputModeSetting.module.scss.d.ts +7 -0
  668. package/packages/scrabble-solver/src/modals/SettingsModal/components/InputModeSetting/InputModeSetting.tsx +53 -0
  669. package/packages/scrabble-solver/src/modals/SettingsModal/components/InputModeSetting/index.ts +1 -0
  670. package/packages/scrabble-solver/src/modals/SettingsModal/components/InputModeSetting/lib.ts +13 -0
  671. package/packages/scrabble-solver/src/modals/SettingsModal/components/LocaleSetting/LocaleSetting.module.scss +20 -0
  672. package/packages/scrabble-solver/src/modals/SettingsModal/components/LocaleSetting/LocaleSetting.module.scss.d.ts +8 -0
  673. package/packages/scrabble-solver/src/modals/SettingsModal/components/LocaleSetting/LocaleSetting.tsx +54 -0
  674. package/packages/scrabble-solver/src/modals/SettingsModal/components/LocaleSetting/index.ts +1 -0
  675. package/packages/scrabble-solver/src/modals/SettingsModal/components/RemoveCellFiltersSetting/RemoveCellFiltersSetting.module.scss +12 -0
  676. package/packages/scrabble-solver/src/modals/SettingsModal/components/RemoveCellFiltersSetting/RemoveCellFiltersSetting.module.scss.d.ts +7 -0
  677. package/packages/scrabble-solver/src/modals/SettingsModal/components/RemoveCellFiltersSetting/RemoveCellFiltersSetting.tsx +53 -0
  678. package/packages/scrabble-solver/src/modals/SettingsModal/components/RemoveCellFiltersSetting/index.ts +1 -0
  679. package/packages/scrabble-solver/src/modals/SettingsModal/components/RemoveCellFiltersSetting/lib.ts +13 -0
  680. package/packages/scrabble-solver/src/modals/SettingsModal/components/ShowCoordinatesSetting/ShowCoordinatesSetting.module.scss +12 -0
  681. package/packages/scrabble-solver/src/modals/SettingsModal/components/ShowCoordinatesSetting/ShowCoordinatesSetting.module.scss.d.ts +7 -0
  682. package/packages/scrabble-solver/src/modals/SettingsModal/components/ShowCoordinatesSetting/ShowCoordinatesSetting.tsx +53 -0
  683. package/packages/scrabble-solver/src/modals/SettingsModal/components/ShowCoordinatesSetting/index.ts +1 -0
  684. package/packages/scrabble-solver/src/modals/SettingsModal/components/index.ts +7 -0
  685. package/packages/scrabble-solver/src/modals/SettingsModal/index.ts +1 -0
  686. package/packages/scrabble-solver/src/modals/WordsModal/WordsModal.module.scss +24 -0
  687. package/packages/scrabble-solver/src/modals/WordsModal/WordsModal.module.scss.d.ts +8 -0
  688. package/packages/scrabble-solver/src/modals/WordsModal/WordsModal.tsx +75 -0
  689. package/packages/scrabble-solver/src/modals/WordsModal/components/WordsTable/WordRow.tsx +97 -0
  690. package/packages/scrabble-solver/src/modals/WordsModal/components/WordsTable/WordsTable.module.scss +69 -0
  691. package/packages/scrabble-solver/src/modals/WordsModal/components/WordsTable/WordsTable.module.scss.d.ts +16 -0
  692. package/packages/scrabble-solver/src/modals/WordsModal/components/WordsTable/WordsTable.tsx +137 -0
  693. package/packages/scrabble-solver/src/modals/WordsModal/components/WordsTable/index.ts +1 -0
  694. package/packages/scrabble-solver/src/modals/WordsModal/components/index.ts +1 -0
  695. package/packages/scrabble-solver/src/modals/WordsModal/index.ts +1 -0
  696. package/packages/scrabble-solver/src/modals/preload.ts +24 -0
  697. package/packages/scrabble-solver/src/pages/_app.tsx +52 -0
  698. package/packages/scrabble-solver/src/pages/_document.tsx +129 -0
  699. package/packages/scrabble-solver/src/pages/api/dictionary/[locale]/[word].ts +66 -0
  700. package/packages/scrabble-solver/src/pages/api/dictionary/[locale]/index.ts +123 -0
  701. package/packages/scrabble-solver/src/pages/api/solve.ts +103 -0
  702. package/packages/scrabble-solver/src/pages/api/verify.ts +78 -0
  703. package/packages/scrabble-solver/src/pages/api/visit.ts +44 -0
  704. package/packages/scrabble-solver/src/pages/index.module.scss +31 -0
  705. package/packages/scrabble-solver/src/pages/index.module.scss.d.ts +11 -0
  706. package/packages/scrabble-solver/src/pages/index.tsx +274 -0
  707. package/packages/scrabble-solver/src/pages/not-found.tsx +16 -0
  708. package/packages/scrabble-solver/src/parameters/index.ts +83 -0
  709. package/packages/scrabble-solver/src/sdk/fetch.ts +28 -0
  710. package/packages/scrabble-solver/src/sdk/fetchJson.ts +9 -0
  711. package/packages/scrabble-solver/src/sdk/findWordDefinitions.ts +8 -0
  712. package/packages/scrabble-solver/src/sdk/index.ts +4 -0
  713. package/packages/scrabble-solver/src/sdk/solve.ts +19 -0
  714. package/packages/scrabble-solver/src/sdk/verify.ts +20 -0
  715. package/packages/scrabble-solver/src/sdk/visit.ts +10 -0
  716. package/packages/scrabble-solver/src/service-worker/appShell.test.ts +86 -0
  717. package/packages/scrabble-solver/src/service-worker/appShell.ts +39 -0
  718. package/packages/scrabble-solver/src/service-worker/index.ts +22 -0
  719. package/packages/scrabble-solver/src/serviceWorkerManager.ts +12 -0
  720. package/packages/scrabble-solver/src/solver-worker/client.test.ts +158 -0
  721. package/packages/scrabble-solver/src/solver-worker/client.ts +106 -0
  722. package/packages/scrabble-solver/src/solver-worker/dictionaries/constants.ts +9 -0
  723. package/packages/scrabble-solver/src/solver-worker/dictionaries/expirationManager.ts +7 -0
  724. package/packages/scrabble-solver/src/solver-worker/dictionaries/getDictionary.ts +21 -0
  725. package/packages/scrabble-solver/src/solver-worker/dictionaries/getDictionaryUrl.ts +5 -0
  726. package/packages/scrabble-solver/src/solver-worker/dictionaries/index.ts +2 -0
  727. package/packages/scrabble-solver/src/solver-worker/dictionaries/revalidateDictionary.test.ts +199 -0
  728. package/packages/scrabble-solver/src/solver-worker/dictionaries/revalidateDictionary.ts +86 -0
  729. package/packages/scrabble-solver/src/solver-worker/dictionaries/revalidatedAt.ts +43 -0
  730. package/packages/scrabble-solver/src/solver-worker/getGaddag.test.ts +109 -0
  731. package/packages/scrabble-solver/src/solver-worker/getGaddag.ts +62 -0
  732. package/packages/scrabble-solver/src/solver-worker/index.ts +1 -0
  733. package/packages/scrabble-solver/src/solver-worker/index.worker.ts +124 -0
  734. package/packages/scrabble-solver/src/solver-worker/messages.ts +20 -0
  735. package/packages/scrabble-solver/src/state/actions.ts +5 -0
  736. package/packages/scrabble-solver/src/state/app/index.ts +4 -0
  737. package/packages/scrabble-solver/src/state/app/initialState.ts +6 -0
  738. package/packages/scrabble-solver/src/state/app/selectors.ts +5 -0
  739. package/packages/scrabble-solver/src/state/app/slice.ts +20 -0
  740. package/packages/scrabble-solver/src/state/app/types.ts +4 -0
  741. package/packages/scrabble-solver/src/state/board/index.ts +4 -0
  742. package/packages/scrabble-solver/src/state/board/initialState.ts +38 -0
  743. package/packages/scrabble-solver/src/state/board/selectors.ts +3 -0
  744. package/packages/scrabble-solver/src/state/board/slice.ts +101 -0
  745. package/packages/scrabble-solver/src/state/board/types.ts +3 -0
  746. package/packages/scrabble-solver/src/state/cellFilters/index.ts +4 -0
  747. package/packages/scrabble-solver/src/state/cellFilters/initialState.ts +3 -0
  748. package/packages/scrabble-solver/src/state/cellFilters/lib.ts +8 -0
  749. package/packages/scrabble-solver/src/state/cellFilters/selectors.ts +13 -0
  750. package/packages/scrabble-solver/src/state/cellFilters/slice.ts +49 -0
  751. package/packages/scrabble-solver/src/state/cellFilters/types.ts +3 -0
  752. package/packages/scrabble-solver/src/state/dictionary/index.ts +4 -0
  753. package/packages/scrabble-solver/src/state/dictionary/initialState.ts +8 -0
  754. package/packages/scrabble-solver/src/state/dictionary/selectors.ts +16 -0
  755. package/packages/scrabble-solver/src/state/dictionary/slice.ts +34 -0
  756. package/packages/scrabble-solver/src/state/dictionary/types.ts +8 -0
  757. package/packages/scrabble-solver/src/state/hoveredTile/index.ts +4 -0
  758. package/packages/scrabble-solver/src/state/hoveredTile/initialState.ts +5 -0
  759. package/packages/scrabble-solver/src/state/hoveredTile/selectors.ts +3 -0
  760. package/packages/scrabble-solver/src/state/hoveredTile/slice.ts +16 -0
  761. package/packages/scrabble-solver/src/state/hoveredTile/types.ts +3 -0
  762. package/packages/scrabble-solver/src/state/hoveredWord/index.ts +4 -0
  763. package/packages/scrabble-solver/src/state/hoveredWord/initialState.ts +5 -0
  764. package/packages/scrabble-solver/src/state/hoveredWord/selectors.ts +5 -0
  765. package/packages/scrabble-solver/src/state/hoveredWord/slice.ts +18 -0
  766. package/packages/scrabble-solver/src/state/hoveredWord/types.ts +5 -0
  767. package/packages/scrabble-solver/src/state/i18n/index.ts +4 -0
  768. package/packages/scrabble-solver/src/state/i18n/initialState.ts +5 -0
  769. package/packages/scrabble-solver/src/state/i18n/selectors.ts +3 -0
  770. package/packages/scrabble-solver/src/state/i18n/slice.ts +16 -0
  771. package/packages/scrabble-solver/src/state/i18n/types.ts +7 -0
  772. package/packages/scrabble-solver/src/state/index.ts +19 -0
  773. package/packages/scrabble-solver/src/state/lib.ts +46 -0
  774. package/packages/scrabble-solver/src/state/localStorage.ts +142 -0
  775. package/packages/scrabble-solver/src/state/rack/index.ts +4 -0
  776. package/packages/scrabble-solver/src/state/rack/initialState.ts +11 -0
  777. package/packages/scrabble-solver/src/state/rack/selectors.ts +7 -0
  778. package/packages/scrabble-solver/src/state/rack/slice.ts +56 -0
  779. package/packages/scrabble-solver/src/state/rack/types.ts +3 -0
  780. package/packages/scrabble-solver/src/state/results/index.ts +4 -0
  781. package/packages/scrabble-solver/src/state/results/initialState.ts +13 -0
  782. package/packages/scrabble-solver/src/state/results/lib.ts +86 -0
  783. package/packages/scrabble-solver/src/state/results/selectors.ts +83 -0
  784. package/packages/scrabble-solver/src/state/results/slice.ts +43 -0
  785. package/packages/scrabble-solver/src/state/results/types.ts +10 -0
  786. package/packages/scrabble-solver/src/state/sagas.ts +395 -0
  787. package/packages/scrabble-solver/src/state/selectors.ts +52 -0
  788. package/packages/scrabble-solver/src/state/settings/index.ts +4 -0
  789. package/packages/scrabble-solver/src/state/settings/initialState.ts +16 -0
  790. package/packages/scrabble-solver/src/state/settings/lib.ts +42 -0
  791. package/packages/scrabble-solver/src/state/settings/selectors.ts +78 -0
  792. package/packages/scrabble-solver/src/state/settings/slice.ts +54 -0
  793. package/packages/scrabble-solver/src/state/settings/types.ts +13 -0
  794. package/packages/scrabble-solver/src/state/solve/index.ts +4 -0
  795. package/packages/scrabble-solver/src/state/solve/initialState.ts +12 -0
  796. package/packages/scrabble-solver/src/state/solve/selectors.ts +14 -0
  797. package/packages/scrabble-solver/src/state/solve/slice.ts +33 -0
  798. package/packages/scrabble-solver/src/state/solve/types.ts +10 -0
  799. package/packages/scrabble-solver/src/state/store.ts +38 -0
  800. package/packages/scrabble-solver/src/state/types.ts +27 -0
  801. package/packages/scrabble-solver/src/state/useTranslate.ts +32 -0
  802. package/packages/scrabble-solver/src/state/useTypedSelector.ts +5 -0
  803. package/packages/scrabble-solver/src/state/useTypedStore.ts +6 -0
  804. package/packages/scrabble-solver/src/state/verify/index.ts +4 -0
  805. package/packages/scrabble-solver/src/state/verify/initialState.ts +19 -0
  806. package/packages/scrabble-solver/src/state/verify/lib.test.ts +55 -0
  807. package/packages/scrabble-solver/src/state/verify/lib.ts +49 -0
  808. package/packages/scrabble-solver/src/state/verify/selectors.ts +46 -0
  809. package/packages/scrabble-solver/src/state/verify/slice.ts +40 -0
  810. package/packages/scrabble-solver/src/state/verify/types.ts +14 -0
  811. package/packages/scrabble-solver/src/styles/_tokens.scss +60 -0
  812. package/packages/scrabble-solver/src/styles/animations.scss +49 -0
  813. package/packages/scrabble-solver/src/styles/global.scss +61 -0
  814. package/packages/scrabble-solver/src/styles/mixins.scss +117 -0
  815. package/packages/scrabble-solver/src/styles/variables.module.scss +32 -0
  816. package/packages/scrabble-solver/src/styles/variables.module.scss.d.ts +27 -0
  817. package/packages/scrabble-solver/src/styles/variables.scss +176 -0
  818. package/packages/scrabble-solver/src/types/api.ts +21 -0
  819. package/packages/scrabble-solver/src/types/index.ts +177 -0
  820. package/packages/scrabble-solver/tsconfig.json +27 -0
  821. package/packages/scrabble-solver/tsconfig.tsbuildinfo +1 -0
  822. package/packages/solver/README.md +29 -0
  823. package/packages/solver/benchmarks/index.ts +15 -0
  824. package/packages/solver/benchmarks/lib.ts +31 -0
  825. package/packages/solver/benchmarks/renderChart.ts +165 -0
  826. package/packages/solver/benchmarks/results/chart.svg +65 -0
  827. package/packages/solver/benchmarks/runBenchmarks.ts +66 -0
  828. package/packages/solver/benchmarks/scenarios.ts +64 -0
  829. package/packages/solver/benchmarks/types.ts +16 -0
  830. package/packages/solver/benchmarks/updateReadme.ts +53 -0
  831. package/packages/solver/build/MoveGenerator.d.ts +116 -0
  832. package/packages/solver/build/MoveGenerator.js +686 -0
  833. package/packages/solver/build/index.d.ts +1 -0
  834. package/packages/solver/build/index.js +5 -0
  835. package/packages/solver/build/solve.d.ts +3 -0
  836. package/packages/solver/build/solve.js +8 -0
  837. package/packages/solver/package.json +45 -0
  838. package/packages/solver/src/MoveGenerator.test.ts +1009 -0
  839. package/packages/solver/src/MoveGenerator.ts +926 -0
  840. package/packages/solver/src/ReferenceSolver.ts +401 -0
  841. package/packages/solver/src/index.ts +1 -0
  842. package/packages/solver/src/solve.test.ts +225 -0
  843. package/packages/solver/src/solve.ts +8 -0
  844. package/packages/solver/tsconfig.json +10 -0
  845. package/packages/types/README.md +3 -0
  846. package/packages/types/build/Bingo.d.ts +7 -0
  847. package/packages/types/build/Bingo.js +2 -0
  848. package/packages/types/build/Board.d.ts +33 -0
  849. package/packages/types/build/Board.js +106 -0
  850. package/packages/types/build/BoardJson.d.ts +2 -0
  851. package/packages/types/build/BoardJson.js +2 -0
  852. package/packages/types/build/BoardWord.d.ts +7 -0
  853. package/packages/types/build/BoardWord.js +2 -0
  854. package/packages/types/build/Bonus.d.ts +22 -0
  855. package/packages/types/build/Bonus.js +33 -0
  856. package/packages/types/build/BonusJson.d.ts +7 -0
  857. package/packages/types/build/BonusJson.js +2 -0
  858. package/packages/types/build/BonusValue.d.ts +4 -0
  859. package/packages/types/build/BonusValue.js +2 -0
  860. package/packages/types/build/Cell.d.ts +22 -0
  861. package/packages/types/build/Cell.js +52 -0
  862. package/packages/types/build/CellJson.d.ts +7 -0
  863. package/packages/types/build/CellJson.js +2 -0
  864. package/packages/types/build/CharacterBonus.d.ts +10 -0
  865. package/packages/types/build/CharacterBonus.js +27 -0
  866. package/packages/types/build/Collision.d.ts +2 -0
  867. package/packages/types/build/Collision.js +2 -0
  868. package/packages/types/build/Config.d.ts +36 -0
  869. package/packages/types/build/Config.js +105 -0
  870. package/packages/types/build/ConfigJson.d.ts +18 -0
  871. package/packages/types/build/ConfigJson.js +2 -0
  872. package/packages/types/build/Dictionary.d.ts +6 -0
  873. package/packages/types/build/Dictionary.js +2 -0
  874. package/packages/types/build/Direction.d.ts +1 -0
  875. package/packages/types/build/Direction.js +2 -0
  876. package/packages/types/build/Game.d.ts +11 -0
  877. package/packages/types/build/Game.js +15 -0
  878. package/packages/types/build/Locale.d.ts +16 -0
  879. package/packages/types/build/Locale.js +20 -0
  880. package/packages/types/build/Result.d.ts +32 -0
  881. package/packages/types/build/Result.js +61 -0
  882. package/packages/types/build/ResultJson.d.ts +9 -0
  883. package/packages/types/build/ResultJson.js +2 -0
  884. package/packages/types/build/ShowCoordinates.d.ts +5 -0
  885. package/packages/types/build/ShowCoordinates.js +2 -0
  886. package/packages/types/build/TextDirection.d.ts +1 -0
  887. package/packages/types/build/TextDirection.js +2 -0
  888. package/packages/types/build/Tile.d.ts +15 -0
  889. package/packages/types/build/Tile.js +46 -0
  890. package/packages/types/build/TileConfig.d.ts +5 -0
  891. package/packages/types/build/TileConfig.js +2 -0
  892. package/packages/types/build/TileJson.d.ts +4 -0
  893. package/packages/types/build/TileJson.js +2 -0
  894. package/packages/types/build/WordBonus.d.ts +6 -0
  895. package/packages/types/build/WordBonus.js +18 -0
  896. package/packages/types/build/WordDefinition.d.ts +17 -0
  897. package/packages/types/build/WordDefinition.js +38 -0
  898. package/packages/types/build/WordDefinitionJson.d.ts +12 -0
  899. package/packages/types/build/WordDefinitionJson.js +2 -0
  900. package/packages/types/build/index.d.ts +29 -0
  901. package/packages/types/build/index.js +38 -0
  902. package/packages/types/build/lib/getBoardWords.d.ts +3 -0
  903. package/packages/types/build/lib/getBoardWords.js +10 -0
  904. package/packages/types/build/lib/getCells.d.ts +4 -0
  905. package/packages/types/build/lib/getCells.js +27 -0
  906. package/packages/types/build/lib/getCollidingWords.d.ts +3 -0
  907. package/packages/types/build/lib/getCollidingWords.js +19 -0
  908. package/packages/types/build/lib/getCollision.d.ts +3 -0
  909. package/packages/types/build/lib/getCollision.js +31 -0
  910. package/packages/types/build/lib/getCollisions.d.ts +3 -0
  911. package/packages/types/build/lib/getCollisions.js +17 -0
  912. package/packages/types/build/lib/getPlacedCell.d.ts +3 -0
  913. package/packages/types/build/lib/getPlacedCell.js +10 -0
  914. package/packages/types/build/lib/getWordThrough.d.ts +4 -0
  915. package/packages/types/build/lib/getWordThrough.js +23 -0
  916. package/packages/types/build/lib/getWordsInRows.d.ts +8 -0
  917. package/packages/types/build/lib/getWordsInRows.js +29 -0
  918. package/packages/types/build/lib/index.d.ts +5 -0
  919. package/packages/types/build/lib/index.js +21 -0
  920. package/packages/types/build/lib/isSameBoardWord.d.ts +2 -0
  921. package/packages/types/build/lib/isSameBoardWord.js +6 -0
  922. package/packages/types/build/lib/toBoardWord.d.ts +4 -0
  923. package/packages/types/build/lib/toBoardWord.js +11 -0
  924. package/packages/types/build/lib/transpose.d.ts +1 -0
  925. package/packages/types/build/lib/transpose.js +16 -0
  926. package/packages/types/build/type-guards/index.d.ts +10 -0
  927. package/packages/types/build/type-guards/index.js +23 -0
  928. package/packages/types/build/type-guards/isBingo.d.ts +2 -0
  929. package/packages/types/build/type-guards/isBingo.js +9 -0
  930. package/packages/types/build/type-guards/isBoardJson.d.ts +2 -0
  931. package/packages/types/build/type-guards/isBoardJson.js +21 -0
  932. package/packages/types/build/type-guards/isCellJson.d.ts +2 -0
  933. package/packages/types/build/type-guards/isCellJson.js +13 -0
  934. package/packages/types/build/type-guards/isError.d.ts +1 -0
  935. package/packages/types/build/type-guards/isError.js +11 -0
  936. package/packages/types/build/type-guards/isGame.d.ts +2 -0
  937. package/packages/types/build/type-guards/isGame.js +7 -0
  938. package/packages/types/build/type-guards/isLocale.d.ts +2 -0
  939. package/packages/types/build/type-guards/isLocale.js +7 -0
  940. package/packages/types/build/type-guards/isMultiplierBingo.d.ts +2 -0
  941. package/packages/types/build/type-guards/isMultiplierBingo.js +8 -0
  942. package/packages/types/build/type-guards/isObject.d.ts +1 -0
  943. package/packages/types/build/type-guards/isObject.js +7 -0
  944. package/packages/types/build/type-guards/isScoreBingo.d.ts +2 -0
  945. package/packages/types/build/type-guards/isScoreBingo.js +8 -0
  946. package/packages/types/build/type-guards/isTileJson.d.ts +2 -0
  947. package/packages/types/build/type-guards/isTileJson.js +8 -0
  948. package/packages/types/package.json +37 -0
  949. package/packages/types/src/Bingo.ts +5 -0
  950. package/packages/types/src/Board.test.ts +85 -0
  951. package/packages/types/src/Board.ts +141 -0
  952. package/packages/types/src/BoardJson.ts +3 -0
  953. package/packages/types/src/BoardWord.ts +8 -0
  954. package/packages/types/src/Bonus.ts +50 -0
  955. package/packages/types/src/BonusJson.ts +7 -0
  956. package/packages/types/src/BonusValue.ts +4 -0
  957. package/packages/types/src/Cell.ts +66 -0
  958. package/packages/types/src/CellJson.ts +8 -0
  959. package/packages/types/src/CharacterBonus.ts +29 -0
  960. package/packages/types/src/Collision.ts +3 -0
  961. package/packages/types/src/Config.ts +152 -0
  962. package/packages/types/src/ConfigJson.ts +19 -0
  963. package/packages/types/src/Dictionary.ts +7 -0
  964. package/packages/types/src/Direction.ts +1 -0
  965. package/packages/types/src/Game.ts +11 -0
  966. package/packages/types/src/Locale.ts +16 -0
  967. package/packages/types/src/Result.ts +118 -0
  968. package/packages/types/src/ResultJson.ts +9 -0
  969. package/packages/types/src/ShowCoordinates.ts +5 -0
  970. package/packages/types/src/TextDirection.ts +1 -0
  971. package/packages/types/src/Tile.ts +56 -0
  972. package/packages/types/src/TileConfig.ts +5 -0
  973. package/packages/types/src/TileJson.ts +4 -0
  974. package/packages/types/src/WordBonus.ts +15 -0
  975. package/packages/types/src/WordDefinition.ts +54 -0
  976. package/packages/types/src/WordDefinitionJson.ts +12 -0
  977. package/packages/types/src/index.ts +40 -0
  978. package/packages/types/src/lib/getBoardWords.ts +11 -0
  979. package/packages/types/src/lib/getCells.test.ts +127 -0
  980. package/packages/types/src/lib/getCells.ts +31 -0
  981. package/packages/types/src/lib/getCollidingWords.ts +25 -0
  982. package/packages/types/src/lib/getCollision.ts +38 -0
  983. package/packages/types/src/lib/getCollisions.test.ts +82 -0
  984. package/packages/types/src/lib/getCollisions.ts +22 -0
  985. package/packages/types/src/lib/getPlacedCell.ts +9 -0
  986. package/packages/types/src/lib/getWordThrough.ts +30 -0
  987. package/packages/types/src/lib/getWordsInRows.ts +34 -0
  988. package/packages/types/src/lib/index.ts +5 -0
  989. package/packages/types/src/lib/isSameBoardWord.ts +5 -0
  990. package/packages/types/src/lib/toBoardWord.ts +12 -0
  991. package/packages/types/src/lib/transpose.ts +15 -0
  992. package/packages/types/src/type-guards/index.ts +10 -0
  993. package/packages/types/src/type-guards/isBingo.ts +8 -0
  994. package/packages/types/src/type-guards/isBoardJson.test.ts +33 -0
  995. package/packages/types/src/type-guards/isBoardJson.ts +23 -0
  996. package/packages/types/src/type-guards/isCellJson.ts +14 -0
  997. package/packages/types/src/type-guards/isError.ts +9 -0
  998. package/packages/types/src/type-guards/isGame.ts +5 -0
  999. package/packages/types/src/type-guards/isLocale.ts +5 -0
  1000. package/packages/types/src/type-guards/isMultiplierBingo.ts +7 -0
  1001. package/packages/types/src/type-guards/isObject.ts +3 -0
  1002. package/packages/types/src/type-guards/isScoreBingo.ts +7 -0
  1003. package/packages/types/src/type-guards/isTileJson.ts +7 -0
  1004. package/packages/types/tsconfig.json +10 -0
  1005. package/packages/word-definitions/README.md +3 -0
  1006. package/packages/word-definitions/build/crawl.d.ts +2 -0
  1007. package/packages/word-definitions/build/crawl.js +20 -0
  1008. package/packages/word-definitions/build/getWordDefinition.d.ts +2 -0
  1009. package/packages/word-definitions/build/getWordDefinition.js +13 -0
  1010. package/packages/word-definitions/build/index.d.ts +5 -0
  1011. package/packages/word-definitions/build/index.js +21 -0
  1012. package/packages/word-definitions/build/languages/english.d.ts +3 -0
  1013. package/packages/word-definitions/build/languages/english.js +38 -0
  1014. package/packages/word-definitions/build/languages/french.d.ts +3 -0
  1015. package/packages/word-definitions/build/languages/french.js +22 -0
  1016. package/packages/word-definitions/build/languages/german.d.ts +3 -0
  1017. package/packages/word-definitions/build/languages/german.js +70 -0
  1018. package/packages/word-definitions/build/languages/index.d.ts +8 -0
  1019. package/packages/word-definitions/build/languages/index.js +44 -0
  1020. package/packages/word-definitions/build/languages/persian.d.ts +3 -0
  1021. package/packages/word-definitions/build/languages/persian.js +23 -0
  1022. package/packages/word-definitions/build/languages/polish.d.ts +3 -0
  1023. package/packages/word-definitions/build/languages/polish.js +24 -0
  1024. package/packages/word-definitions/build/languages/romanian.d.ts +3 -0
  1025. package/packages/word-definitions/build/languages/romanian.js +26 -0
  1026. package/packages/word-definitions/build/languages/spanish.d.ts +3 -0
  1027. package/packages/word-definitions/build/languages/spanish.js +39 -0
  1028. package/packages/word-definitions/build/languages/turkish.d.ts +3 -0
  1029. package/packages/word-definitions/build/languages/turkish.js +31 -0
  1030. package/packages/word-definitions/build/lib/index.d.ts +3 -0
  1031. package/packages/word-definitions/build/lib/index.js +9 -0
  1032. package/packages/word-definitions/build/lib/normalizeDefinition.d.ts +1 -0
  1033. package/packages/word-definitions/build/lib/normalizeDefinition.js +46 -0
  1034. package/packages/word-definitions/build/lib/request.d.ts +6 -0
  1035. package/packages/word-definitions/build/lib/request.js +28 -0
  1036. package/packages/word-definitions/build/lib/unique.d.ts +1 -0
  1037. package/packages/word-definitions/build/lib/unique.js +5 -0
  1038. package/packages/word-definitions/build/parse.d.ts +3 -0
  1039. package/packages/word-definitions/build/parse.js +25 -0
  1040. package/packages/word-definitions/build/types.d.ts +4 -0
  1041. package/packages/word-definitions/build/types.js +2 -0
  1042. package/packages/word-definitions/package.json +43 -0
  1043. package/packages/word-definitions/src/__tests__/expected/de-DE.hm.json +4 -0
  1044. package/packages/word-definitions/src/__tests__/expected/de-DE.ho.json +9 -0
  1045. package/packages/word-definitions/src/__tests__/expected/de-DE.kolla.json +4 -0
  1046. package/packages/word-definitions/src/__tests__/expected/de-DE.vom.json +16 -0
  1047. package/packages/word-definitions/src/__tests__/expected/en-US.awe.json +12 -0
  1048. package/packages/word-definitions/src/__tests__/expected/en-US.oe.json +7 -0
  1049. package/packages/word-definitions/src/__tests__/expected/en-US.pawn.json +16 -0
  1050. package/packages/word-definitions/src/__tests__/expected/en-US.pawnee.json +6 -0
  1051. package/packages/word-definitions/src/__tests__/expected/en-US.pean.json +9 -0
  1052. package/packages/word-definitions/src/__tests__/expected/en-US.wiz.json +10 -0
  1053. package/packages/word-definitions/src/__tests__/expected/en-US.zzzzqq.json +4 -0
  1054. package/packages/word-definitions/src/__tests__/expected/es-ES.corma.json +7 -0
  1055. package/packages/word-definitions/src/__tests__/expected/es-ES.portero.json +9 -0
  1056. package/packages/word-definitions/src/__tests__/expected/ro-RO.aciua.json +7 -0
  1057. package/packages/word-definitions/src/__tests__/expected/tr-TR.lojik.json +4 -0
  1058. package/packages/word-definitions/src/__tests__/input/de-DE.hm.html +873 -0
  1059. package/packages/word-definitions/src/__tests__/input/de-DE.ho.html +1144 -0
  1060. package/packages/word-definitions/src/__tests__/input/de-DE.kolla.html +980 -0
  1061. package/packages/word-definitions/src/__tests__/input/de-DE.vom.html +738 -0
  1062. package/packages/word-definitions/src/__tests__/input/en-US.awe.json +1 -0
  1063. package/packages/word-definitions/src/__tests__/input/en-US.oe.json +1 -0
  1064. package/packages/word-definitions/src/__tests__/input/en-US.pawn.json +1 -0
  1065. package/packages/word-definitions/src/__tests__/input/en-US.pawnee.json +1 -0
  1066. package/packages/word-definitions/src/__tests__/input/en-US.pean.json +1 -0
  1067. package/packages/word-definitions/src/__tests__/input/en-US.wiz.json +1 -0
  1068. package/packages/word-definitions/src/__tests__/input/en-US.zzzzqq.json +1 -0
  1069. package/packages/word-definitions/src/__tests__/input/es-ES.corma.html +762 -0
  1070. package/packages/word-definitions/src/__tests__/input/es-ES.portero.html +764 -0
  1071. package/packages/word-definitions/src/__tests__/input/ro-RO.aciua.html +31 -0
  1072. package/packages/word-definitions/src/__tests__/input/tr-TR.lojik.html +1 -0
  1073. package/packages/word-definitions/src/crawl.ts +19 -0
  1074. package/packages/word-definitions/src/getWordDefinition.ts +11 -0
  1075. package/packages/word-definitions/src/index.ts +5 -0
  1076. package/packages/word-definitions/src/languages/english.ts +53 -0
  1077. package/packages/word-definitions/src/languages/french.ts +22 -0
  1078. package/packages/word-definitions/src/languages/german.ts +88 -0
  1079. package/packages/word-definitions/src/languages/index.ts +8 -0
  1080. package/packages/word-definitions/src/languages/persian.ts +24 -0
  1081. package/packages/word-definitions/src/languages/polish.ts +24 -0
  1082. package/packages/word-definitions/src/languages/romanian.ts +27 -0
  1083. package/packages/word-definitions/src/languages/spanish.ts +42 -0
  1084. package/packages/word-definitions/src/languages/turkish.ts +32 -0
  1085. package/packages/word-definitions/src/lib/index.ts +3 -0
  1086. package/packages/word-definitions/src/lib/normalizeDefinition.ts +53 -0
  1087. package/packages/word-definitions/src/lib/request.ts +30 -0
  1088. package/packages/word-definitions/src/lib/unique.ts +1 -0
  1089. package/packages/word-definitions/src/parse.test.ts +41 -0
  1090. package/packages/word-definitions/src/parse.ts +26 -0
  1091. package/packages/word-definitions/src/types.ts +4 -0
  1092. package/packages/word-definitions/tsconfig.json +10 -0
  1093. package/packages/word-lists/README.md +3 -0
  1094. package/packages/word-lists/build/getWordList.d.ts +2 -0
  1095. package/packages/word-lists/build/getWordList.js +18 -0
  1096. package/packages/word-lists/build/index.d.ts +3 -0
  1097. package/packages/word-lists/build/index.js +21 -0
  1098. package/packages/word-lists/build/languages/english.d.ts +2 -0
  1099. package/packages/word-lists/build/languages/english.js +15 -0
  1100. package/packages/word-lists/build/languages/french.d.ts +1 -0
  1101. package/packages/word-lists/build/languages/french.js +11 -0
  1102. package/packages/word-lists/build/languages/german.d.ts +1 -0
  1103. package/packages/word-lists/build/languages/german.js +10 -0
  1104. package/packages/word-lists/build/languages/index.d.ts +8 -0
  1105. package/packages/word-lists/build/languages/index.js +44 -0
  1106. package/packages/word-lists/build/languages/persian.d.ts +1 -0
  1107. package/packages/word-lists/build/languages/persian.js +10 -0
  1108. package/packages/word-lists/build/languages/polish.d.ts +1 -0
  1109. package/packages/word-lists/build/languages/polish.js +56 -0
  1110. package/packages/word-lists/build/languages/romanian.d.ts +1 -0
  1111. package/packages/word-lists/build/languages/romanian.js +11 -0
  1112. package/packages/word-lists/build/languages/spanish.d.ts +1 -0
  1113. package/packages/word-lists/build/languages/spanish.js +11 -0
  1114. package/packages/word-lists/build/languages/turkish.d.ts +1 -0
  1115. package/packages/word-lists/build/languages/turkish.js +10 -0
  1116. package/packages/word-lists/build/lib/downloadFile.d.ts +1 -0
  1117. package/packages/word-lists/build/lib/downloadFile.js +38 -0
  1118. package/packages/word-lists/build/lib/downloadHtml.d.ts +1 -0
  1119. package/packages/word-lists/build/lib/downloadHtml.js +21 -0
  1120. package/packages/word-lists/build/lib/extractWords.d.ts +1 -0
  1121. package/packages/word-lists/build/lib/extractWords.js +17 -0
  1122. package/packages/word-lists/build/lib/findFirstWordIndex.d.ts +1 -0
  1123. package/packages/word-lists/build/lib/findFirstWordIndex.js +17 -0
  1124. package/packages/word-lists/build/lib/getHash.d.ts +1 -0
  1125. package/packages/word-lists/build/lib/getHash.js +9 -0
  1126. package/packages/word-lists/build/lib/getTempFilepath.d.ts +1 -0
  1127. package/packages/word-lists/build/lib/getTempFilepath.js +15 -0
  1128. package/packages/word-lists/build/lib/getTxtWordList.d.ts +1 -0
  1129. package/packages/word-lists/build/lib/getTxtWordList.js +17 -0
  1130. package/packages/word-lists/build/lib/index.d.ts +10 -0
  1131. package/packages/word-lists/build/lib/index.js +23 -0
  1132. package/packages/word-lists/build/lib/transliterateDiacritics.d.ts +2 -0
  1133. package/packages/word-lists/build/lib/transliterateDiacritics.js +9 -0
  1134. package/packages/word-lists/build/lib/unique.d.ts +1 -0
  1135. package/packages/word-lists/build/lib/unique.js +5 -0
  1136. package/packages/word-lists/build/lib/unzip.d.ts +1 -0
  1137. package/packages/word-lists/build/lib/unzip.js +24 -0
  1138. package/packages/word-lists/package.json +45 -0
  1139. package/packages/word-lists/src/getWordList.ts +17 -0
  1140. package/packages/word-lists/src/index.ts +3 -0
  1141. package/packages/word-lists/src/languages/english.ts +16 -0
  1142. package/packages/word-lists/src/languages/french.ts +11 -0
  1143. package/packages/word-lists/src/languages/german.ts +10 -0
  1144. package/packages/word-lists/src/languages/index.ts +8 -0
  1145. package/packages/word-lists/src/languages/persian.ts +10 -0
  1146. package/packages/word-lists/src/languages/polish.ts +59 -0
  1147. package/packages/word-lists/src/languages/romanian.ts +10 -0
  1148. package/packages/word-lists/src/languages/spanish.ts +10 -0
  1149. package/packages/word-lists/src/languages/turkish.ts +9 -0
  1150. package/packages/word-lists/src/lib/downloadFile.ts +37 -0
  1151. package/packages/word-lists/src/lib/downloadHtml.ts +18 -0
  1152. package/packages/word-lists/src/lib/extractWords.ts +17 -0
  1153. package/packages/word-lists/src/lib/findFirstWordIndex.ts +16 -0
  1154. package/packages/word-lists/src/lib/getHash.ts +3 -0
  1155. package/packages/word-lists/src/lib/getTempFilepath.ts +11 -0
  1156. package/packages/word-lists/src/lib/getTxtWordList.ts +12 -0
  1157. package/packages/word-lists/src/lib/index.ts +10 -0
  1158. package/packages/word-lists/src/lib/transliterateDiacritics.ts +7 -0
  1159. package/packages/word-lists/src/lib/unique.ts +1 -0
  1160. package/packages/word-lists/src/lib/unzip.ts +18 -0
  1161. package/packages/word-lists/tsconfig.json +10 -0
  1162. package/.claude/settings.local.json +0 -38
  1163. package/.github/workflows/build.yml +0 -16
  1164. package/.github/workflows/bunx.yml +0 -66
  1165. package/.github/workflows/deploy.yml +0 -32
  1166. package/.github/workflows/e2e.yml +0 -26
  1167. package/.github/workflows/npx.yml +0 -69
  1168. package/.github/workflows/oxfmt.yml +0 -18
  1169. package/.github/workflows/oxlint.yml +0 -19
  1170. package/.github/workflows/unit.yml +0 -19
  1171. package/playwright-report/index.html +0 -49
  1172. package/test-results/.last-run.json +0 -4
  1173. package/todo.txt +0 -5
@@ -0,0 +1 @@
1
+ (()=>{var e,t,r,c,i,l,o={177:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.romanianSuperScrabble=t.romanianScrabble=void 0;let c=r(9604),i=r(6706);t.romanianScrabble=new c.Config({...i.scrabble,locale:c.Locale.RO_RO,tiles:[{character:"a",count:11,score:1},{character:"b",count:2,score:9},{character:"c",count:5,score:1},{character:"d",count:4,score:2},{character:"e",count:9,score:1},{character:"f",count:2,score:8},{character:"g",count:2,score:9},{character:"h",count:1,score:10},{character:"i",count:10,score:1},{character:"j",count:1,score:10},{character:"l",count:4,score:1},{character:"m",count:3,score:4},{character:"n",count:6,score:1},{character:"o",count:5,score:1},{character:"p",count:4,score:2},{character:"r",count:7,score:1},{character:"s",count:5,score:1},{character:"t",count:7,score:1},{character:"u",count:6,score:1},{character:"v",count:2,score:8},{character:"x",count:1,score:10},{character:"z",count:1,score:10}]}),t.romanianSuperScrabble=new c.Config({...i.superScrabble,locale:c.Locale.RO_RO,tiles:[{character:"a",count:22,score:1},{character:"b",count:4,score:9},{character:"c",count:10,score:1},{character:"d",count:8,score:2},{character:"e",count:18,score:1},{character:"f",count:4,score:8},{character:"g",count:4,score:9},{character:"h",count:2,score:10},{character:"i",count:20,score:1},{character:"j",count:2,score:10},{character:"l",count:8,score:1},{character:"m",count:6,score:4},{character:"n",count:12,score:1},{character:"o",count:10,score:1},{character:"p",count:8,score:2},{character:"r",count:14,score:1},{character:"s",count:10,score:1},{character:"t",count:14,score:1},{character:"u",count:12,score:1},{character:"v",count:4,score:8},{character:"x",count:2,score:10},{character:"z",count:2,score:10}]})},232:(e,t,r)=>{"use strict";t.k=void 0;var c=r(2791);Object.defineProperty(t,"k",{enumerable:!0,get:function(){return c.solve}})},900:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.VOWELS=t.CONSONANTS=t.NO_BONUS=t.EMPTY_CELL=t.BONUS_WORD=t.BONUS_CHARACTER=t.BLANK=t.COMMA_LATIN=t.COMMA_ARABIC=void 0,t.COMMA_ARABIC="،",t.COMMA_LATIN=",",t.BLANK=" ",t.BONUS_CHARACTER="BONUS_CHARACTER",t.BONUS_WORD="BONUS_WORD",t.EMPTY_CELL=" ",t.NO_BONUS={characterMultiplier:1,wordMultiplier:1},t.CONSONANTS="bc\xe7ćdfgğhjklłmnń\xf1pqrsşśtvwxzźż".split(""),t.VOWELS="aą\xe4eęio\xf3\xf6u\xfcyı".split("")},930:function(e,t,r){"use strict";var c=this&&this.__createBinding||(Object.create?function(e,t,r,c){void 0===c&&(c=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,c,i)}:function(e,t,r,c){void 0===c&&(c=r),e[c]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||c(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(3734),t),i(r(9480),t),i(r(1742),t),i(r(9653),t),i(r(3771),t),i(r(177),t),i(r(4774),t),i(r(3590),t)},988:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isError=void 0;let c=r(7197);t.isError=e=>!!(0,c.isObject)(e)&&"string"==typeof e.message},1027:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.toBoardWord=function(e,t){return{direction:t,word:e.map(e=>e.tile.character).join(""),x:e[0].x,y:e[0].y}}},1236:function(e,t,r){"use strict";var c,i=this&&this.__createBinding||(Object.create?function(e,t,r,c){void 0===c&&(c=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,c,i)}:function(e,t,r,c){void 0===c&&(c=r),e[c]=t[r]}),l=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),o=this&&this.__importStar||(c=function(e){return(c=Object.getOwnPropertyNames||function(e){var t=[];for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[t.length]=r);return t})(e)},function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r=c(e),o=0;o<r.length;o++)"default"!==r[o]&&i(t,e,r[o]);return l(t,e),t});Object.defineProperty(t,"__esModule",{value:!0}),t.getConfig=void 0;let a=o(r(930));t.getConfig=(e,t)=>{let r=Object.values(a).find(r=>r.game===e&&r.locale===t);if(void 0===r)throw Error(`No game "${e}" in "${t}"`);return r}},1733:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getCells=function(e,t){let r=+!!t.isHorizontal,i=+!t.isHorizontal,l=[],o=0,{x:a,y:s}=t;for(;s<e.rowsCount&&a<e.columnsCount;){let u=e.rows[s][a];if(u.isFilled())l.push(u.clone());else if(o<t.tiles.length)l.push((0,c.getPlacedCell)(t,o,a,s)),o+=1;else break;a+=r,s+=i}return l};let c=r(7897)},1742:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.frenchScrabble=void 0;let c=r(9604),i=r(6706);t.frenchScrabble=new c.Config({...i.scrabble,locale:c.Locale.FR_FR,tiles:[{character:"a",count:9,score:1},{character:"b",count:2,score:3},{character:"c",count:2,score:3},{character:"d",count:3,score:2},{character:"e",count:15,score:1},{character:"f",count:2,score:4},{character:"g",count:2,score:2},{character:"h",count:2,score:4},{character:"i",count:8,score:1},{character:"j",count:1,score:8},{character:"k",count:1,score:10},{character:"l",count:5,score:1},{character:"m",count:3,score:2},{character:"n",count:6,score:1},{character:"o",count:6,score:1},{character:"p",count:2,score:3},{character:"q",count:1,score:8},{character:"r",count:6,score:1},{character:"s",count:6,score:1},{character:"t",count:6,score:1},{character:"u",count:6,score:1},{character:"v",count:2,score:4},{character:"w",count:1,score:10},{character:"x",count:1,score:10},{character:"y",count:1,score:10},{character:"z",count:1,score:10}]})},1790:function(e,t,r){"use strict";var c,i=this&&this.__createBinding||(Object.create?function(e,t,r,c){void 0===c&&(c=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,c,i)}:function(e,t,r,c){void 0===c&&(c=r),e[c]=t[r]}),l=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),o=this&&this.__importStar||(c=function(e){return(c=Object.getOwnPropertyNames||function(e){var t=[];for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[t.length]=r);return t})(e)},function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r=c(e),o=0;o<r.length;o++)"default"!==r[o]&&i(t,e,r[o]);return l(t,e),t});Object.defineProperty(t,"__esModule",{value:!0}),t.languages=t.games=t.hasConfig=t.getConfig=void 0,t.games=o(r(6706)),t.languages=o(r(930));var a=r(1236);Object.defineProperty(t,"getConfig",{enumerable:!0,get:function(){return a.getConfig}});var s=r(6552);Object.defineProperty(t,"hasConfig",{enumerable:!0,get:function(){return s.hasConfig}})},1821:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WordDefinition=void 0;class r{constructor({definitions:e,exists:t,isAllowed:r,word:c}){this.definitions=e,this.exists=t,this.isAllowed=r,this.word=c}toJson(){return{definitions:this.definitions,exists:this.exists,isAllowed:this.isAllowed,word:this.word}}}t.WordDefinition=r,r.fromJson=e=>e?new r({definitions:e.definitions,exists:e.exists,isAllowed:e.isAllowed,word:e.word}):r.Null,r.Null=Object.freeze({definitions:[],exists:!1,isAllowed:!1,word:"",toJson:()=>null})},1898:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.scrabble=void 0;let c=r(900);t.scrabble={bingo:{score:50},blankScore:0,blanksCount:2,boardHeight:15,boardWidth:15,game:r(9604).Game.Scrabble,name:"Scrabble",rackSize:7,bonuses:[{multiplier:3,type:c.BONUS_WORD,x:0,y:0},{multiplier:2,type:c.BONUS_CHARACTER,x:3,y:0},{multiplier:3,type:c.BONUS_WORD,x:7,y:0},{multiplier:2,type:c.BONUS_CHARACTER,x:11,y:0},{multiplier:3,type:c.BONUS_WORD,x:14,y:0},{multiplier:2,type:c.BONUS_WORD,x:1,y:1},{multiplier:3,type:c.BONUS_CHARACTER,x:5,y:1},{multiplier:3,type:c.BONUS_CHARACTER,x:9,y:1},{multiplier:2,type:c.BONUS_WORD,x:13,y:1},{multiplier:2,type:c.BONUS_WORD,x:2,y:2},{multiplier:2,type:c.BONUS_CHARACTER,x:6,y:2},{multiplier:2,type:c.BONUS_CHARACTER,x:8,y:2},{multiplier:2,type:c.BONUS_WORD,x:12,y:2},{multiplier:2,type:c.BONUS_CHARACTER,x:0,y:3},{multiplier:2,type:c.BONUS_WORD,x:3,y:3},{multiplier:2,type:c.BONUS_CHARACTER,x:7,y:3},{multiplier:2,type:c.BONUS_WORD,x:11,y:3},{multiplier:2,type:c.BONUS_CHARACTER,x:14,y:3},{multiplier:2,type:c.BONUS_WORD,x:4,y:4},{multiplier:2,type:c.BONUS_WORD,x:10,y:4},{multiplier:3,type:c.BONUS_CHARACTER,x:1,y:5},{multiplier:3,type:c.BONUS_CHARACTER,x:5,y:5},{multiplier:3,type:c.BONUS_CHARACTER,x:9,y:5},{multiplier:3,type:c.BONUS_CHARACTER,x:13,y:5},{multiplier:2,type:c.BONUS_CHARACTER,x:2,y:6},{multiplier:2,type:c.BONUS_CHARACTER,x:6,y:6},{multiplier:2,type:c.BONUS_CHARACTER,x:8,y:6},{multiplier:2,type:c.BONUS_CHARACTER,x:12,y:6},{multiplier:3,type:c.BONUS_WORD,x:0,y:7},{multiplier:2,type:c.BONUS_CHARACTER,x:3,y:7},{multiplier:2,type:c.BONUS_WORD,x:7,y:7},{multiplier:2,type:c.BONUS_CHARACTER,x:11,y:7},{multiplier:3,type:c.BONUS_WORD,x:14,y:7},{multiplier:2,type:c.BONUS_CHARACTER,x:2,y:8},{multiplier:2,type:c.BONUS_CHARACTER,x:6,y:8},{multiplier:2,type:c.BONUS_CHARACTER,x:8,y:8},{multiplier:2,type:c.BONUS_CHARACTER,x:12,y:8},{multiplier:3,type:c.BONUS_CHARACTER,x:1,y:9},{multiplier:3,type:c.BONUS_CHARACTER,x:5,y:9},{multiplier:3,type:c.BONUS_CHARACTER,x:9,y:9},{multiplier:3,type:c.BONUS_CHARACTER,x:13,y:9},{multiplier:2,type:c.BONUS_WORD,x:4,y:10},{multiplier:2,type:c.BONUS_WORD,x:10,y:10},{multiplier:2,type:c.BONUS_CHARACTER,x:0,y:11},{multiplier:2,type:c.BONUS_WORD,x:3,y:11},{multiplier:2,type:c.BONUS_CHARACTER,x:7,y:11},{multiplier:2,type:c.BONUS_WORD,x:11,y:11},{multiplier:2,type:c.BONUS_CHARACTER,x:14,y:11},{multiplier:2,type:c.BONUS_WORD,x:2,y:12},{multiplier:2,type:c.BONUS_CHARACTER,x:6,y:12},{multiplier:2,type:c.BONUS_CHARACTER,x:8,y:12},{multiplier:2,type:c.BONUS_WORD,x:12,y:12},{multiplier:2,type:c.BONUS_WORD,x:1,y:13},{multiplier:3,type:c.BONUS_CHARACTER,x:5,y:13},{multiplier:3,type:c.BONUS_CHARACTER,x:9,y:13},{multiplier:2,type:c.BONUS_WORD,x:13,y:13},{multiplier:3,type:c.BONUS_WORD,x:0,y:14},{multiplier:2,type:c.BONUS_CHARACTER,x:3,y:14},{multiplier:3,type:c.BONUS_WORD,x:7,y:14},{multiplier:2,type:c.BONUS_CHARACTER,x:11,y:14},{multiplier:3,type:c.BONUS_WORD,x:14,y:14}]}},2024:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isGame=void 0;let c=Object.values(r(5350).Game);t.isGame=e=>c.includes(e)},2131:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Bonus=void 0;class r{constructor({multiplier:e,score:t,x:r,y:c}){this.multiplier=e,this.score=t,this.x=r,this.y=c}canApply(e,t){return t.isEmpty&&this.matchesCellCoordinates(t)}matchesCellCoordinates(e){return this.x===e.x&&this.y===e.y}toJson(){return{multiplier:this.multiplier,score:this.score,type:this.type,x:this.x,y:this.y}}get value(){return{characterMultiplier:1,wordMultiplier:1}}}t.Bonus=r},2791:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.solve=void 0;let c=r(5422);t.solve=(e,t,r,i)=>new c.MoveGenerator(e,t,r,i).run()},2856:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isBoardJson=void 0;let c=r(4260);t.isBoardJson=e=>{if(!Array.isArray(e))return!1;for(let t of e){if(!Array.isArray(t))return!1;for(let e of t)if(!(0,c.isCellJson)(e))return!1}return!0}},3054:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isSameBoardWord=function(e,t){return e.direction===t.direction&&e.x===t.x&&e.y===t.y}},3090:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.wordfeud=void 0;let c=r(900);t.wordfeud={bingo:{score:40},blankScore:0,blanksCount:2,boardHeight:15,boardWidth:15,game:r(9604).Game.Wordfeud,name:"Wordfeud",rackSize:7,bonuses:[{multiplier:3,type:c.BONUS_CHARACTER,x:0,y:0},{multiplier:3,type:c.BONUS_WORD,x:4,y:0},{multiplier:2,type:c.BONUS_CHARACTER,x:7,y:0},{multiplier:3,type:c.BONUS_WORD,x:10,y:0},{multiplier:3,type:c.BONUS_CHARACTER,x:14,y:0},{multiplier:2,type:c.BONUS_CHARACTER,x:1,y:1},{multiplier:3,type:c.BONUS_CHARACTER,x:5,y:1},{multiplier:3,type:c.BONUS_CHARACTER,x:9,y:1},{multiplier:2,type:c.BONUS_CHARACTER,x:13,y:1},{multiplier:2,type:c.BONUS_WORD,x:2,y:2},{multiplier:2,type:c.BONUS_CHARACTER,x:6,y:2},{multiplier:2,type:c.BONUS_CHARACTER,x:8,y:2},{multiplier:2,type:c.BONUS_WORD,x:12,y:2},{multiplier:3,type:c.BONUS_CHARACTER,x:3,y:3},{multiplier:2,type:c.BONUS_WORD,x:7,y:3},{multiplier:3,type:c.BONUS_CHARACTER,x:11,y:3},{multiplier:3,type:c.BONUS_WORD,x:0,y:4},{multiplier:2,type:c.BONUS_WORD,x:4,y:4},{multiplier:2,type:c.BONUS_CHARACTER,x:6,y:4},{multiplier:2,type:c.BONUS_CHARACTER,x:8,y:4},{multiplier:2,type:c.BONUS_WORD,x:10,y:4},{multiplier:3,type:c.BONUS_WORD,x:14,y:4},{multiplier:3,type:c.BONUS_CHARACTER,x:1,y:5},{multiplier:3,type:c.BONUS_CHARACTER,x:5,y:5},{multiplier:3,type:c.BONUS_CHARACTER,x:9,y:5},{multiplier:3,type:c.BONUS_CHARACTER,x:13,y:5},{multiplier:2,type:c.BONUS_CHARACTER,x:2,y:6},{multiplier:2,type:c.BONUS_CHARACTER,x:4,y:6},{multiplier:2,type:c.BONUS_CHARACTER,x:10,y:6},{multiplier:2,type:c.BONUS_CHARACTER,x:12,y:6},{multiplier:2,type:c.BONUS_CHARACTER,x:0,y:7},{multiplier:2,type:c.BONUS_WORD,x:3,y:7},{multiplier:2,type:c.BONUS_WORD,x:11,y:7},{multiplier:2,type:c.BONUS_CHARACTER,x:14,y:7},{multiplier:2,type:c.BONUS_CHARACTER,x:2,y:8},{multiplier:2,type:c.BONUS_CHARACTER,x:4,y:8},{multiplier:2,type:c.BONUS_CHARACTER,x:10,y:8},{multiplier:2,type:c.BONUS_CHARACTER,x:12,y:8},{multiplier:3,type:c.BONUS_CHARACTER,x:1,y:9},{multiplier:3,type:c.BONUS_CHARACTER,x:5,y:9},{multiplier:3,type:c.BONUS_CHARACTER,x:9,y:9},{multiplier:3,type:c.BONUS_CHARACTER,x:13,y:9},{multiplier:3,type:c.BONUS_WORD,x:0,y:10},{multiplier:2,type:c.BONUS_WORD,x:4,y:10},{multiplier:2,type:c.BONUS_CHARACTER,x:6,y:10},{multiplier:2,type:c.BONUS_CHARACTER,x:8,y:10},{multiplier:2,type:c.BONUS_WORD,x:10,y:10},{multiplier:3,type:c.BONUS_WORD,x:14,y:10},{multiplier:3,type:c.BONUS_CHARACTER,x:3,y:11},{multiplier:2,type:c.BONUS_WORD,x:7,y:11},{multiplier:3,type:c.BONUS_CHARACTER,x:11,y:11},{multiplier:2,type:c.BONUS_WORD,x:2,y:12},{multiplier:2,type:c.BONUS_CHARACTER,x:6,y:12},{multiplier:2,type:c.BONUS_CHARACTER,x:8,y:12},{multiplier:2,type:c.BONUS_WORD,x:12,y:12},{multiplier:2,type:c.BONUS_CHARACTER,x:1,y:13},{multiplier:3,type:c.BONUS_CHARACTER,x:5,y:13},{multiplier:3,type:c.BONUS_CHARACTER,x:9,y:13},{multiplier:2,type:c.BONUS_CHARACTER,x:13,y:13},{multiplier:3,type:c.BONUS_CHARACTER,x:0,y:14},{multiplier:3,type:c.BONUS_WORD,x:4,y:14},{multiplier:2,type:c.BONUS_CHARACTER,x:7,y:14},{multiplier:3,type:c.BONUS_WORD,x:10,y:14},{multiplier:3,type:c.BONUS_CHARACTER,x:14,y:14}]}},3158:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.wyrazy=void 0;let c=r(900);t.wyrazy={bingo:{score:25},blankScore:0,blanksCount:2,boardHeight:15,boardWidth:15,game:r(9604).Game.Wyrazy,name:"Wyrazy",rackSize:7,bonuses:[{multiplier:3,type:c.BONUS_WORD,x:2,y:0},{multiplier:2,type:c.BONUS_CHARACTER,x:6,y:0},{multiplier:2,type:c.BONUS_CHARACTER,x:8,y:0},{multiplier:3,type:c.BONUS_WORD,x:12,y:0},{multiplier:3,type:c.BONUS_CHARACTER,x:1,y:1},{multiplier:2,type:c.BONUS_WORD,x:5,y:1},{multiplier:2,type:c.BONUS_WORD,x:9,y:1},{multiplier:3,type:c.BONUS_CHARACTER,x:13,y:1},{multiplier:3,type:c.BONUS_WORD,x:0,y:2},{multiplier:3,type:c.BONUS_CHARACTER,x:4,y:2},{multiplier:3,type:c.BONUS_CHARACTER,x:10,y:2},{multiplier:3,type:c.BONUS_WORD,x:14,y:2},{multiplier:2,type:c.BONUS_CHARACTER,x:3,y:3},{multiplier:2,type:c.BONUS_WORD,x:7,y:3},{multiplier:2,type:c.BONUS_CHARACTER,x:11,y:3},{multiplier:3,type:c.BONUS_CHARACTER,x:2,y:4},{multiplier:2,type:c.BONUS_CHARACTER,x:6,y:4},{multiplier:2,type:c.BONUS_CHARACTER,x:8,y:4},{multiplier:3,type:c.BONUS_CHARACTER,x:12,y:4},{multiplier:2,type:c.BONUS_WORD,x:1,y:5},{multiplier:3,type:c.BONUS_CHARACTER,x:5,y:5},{multiplier:3,type:c.BONUS_CHARACTER,x:9,y:5},{multiplier:2,type:c.BONUS_WORD,x:13,y:5},{multiplier:2,type:c.BONUS_CHARACTER,x:0,y:6},{multiplier:2,type:c.BONUS_CHARACTER,x:4,y:6},{multiplier:2,type:c.BONUS_CHARACTER,x:10,y:6},{multiplier:2,type:c.BONUS_CHARACTER,x:14,y:6},{multiplier:2,type:c.BONUS_WORD,x:3,y:7},{multiplier:2,type:c.BONUS_WORD,x:11,y:7},{multiplier:2,type:c.BONUS_CHARACTER,x:0,y:8},{multiplier:2,type:c.BONUS_CHARACTER,x:4,y:8},{multiplier:2,type:c.BONUS_CHARACTER,x:10,y:8},{multiplier:2,type:c.BONUS_CHARACTER,x:14,y:8},{multiplier:2,type:c.BONUS_WORD,x:1,y:9},{multiplier:3,type:c.BONUS_CHARACTER,x:5,y:9},{multiplier:3,type:c.BONUS_CHARACTER,x:9,y:9},{multiplier:2,type:c.BONUS_WORD,x:13,y:9},{multiplier:3,type:c.BONUS_CHARACTER,x:2,y:10},{multiplier:2,type:c.BONUS_CHARACTER,x:6,y:10},{multiplier:2,type:c.BONUS_CHARACTER,x:8,y:10},{multiplier:3,type:c.BONUS_CHARACTER,x:12,y:10},{multiplier:2,type:c.BONUS_CHARACTER,x:3,y:11},{multiplier:2,type:c.BONUS_WORD,x:7,y:11},{multiplier:2,type:c.BONUS_CHARACTER,x:11,y:11},{multiplier:3,type:c.BONUS_WORD,x:0,y:12},{multiplier:3,type:c.BONUS_CHARACTER,x:4,y:12},{multiplier:3,type:c.BONUS_CHARACTER,x:10,y:12},{multiplier:3,type:c.BONUS_WORD,x:14,y:12},{multiplier:3,type:c.BONUS_CHARACTER,x:1,y:13},{multiplier:2,type:c.BONUS_WORD,x:5,y:13},{multiplier:2,type:c.BONUS_WORD,x:9,y:13},{multiplier:3,type:c.BONUS_CHARACTER,x:13,y:13},{multiplier:3,type:c.BONUS_WORD,x:2,y:14},{multiplier:2,type:c.BONUS_CHARACTER,x:6,y:14},{multiplier:2,type:c.BONUS_CHARACTER,x:8,y:14},{multiplier:3,type:c.BONUS_WORD,x:12,y:14}]}},3590:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.turkishScrabble=t.turkishKelimelik=void 0;let c=r(9604),i=r(6706);t.turkishKelimelik=new c.Config({...i.kelimelik,locale:c.Locale.TR_TR,tiles:[{character:"a",count:12,score:1},{character:"b",count:2,score:3},{character:"c",count:2,score:4},{character:"\xe7",count:2,score:4},{character:"d",count:2,score:3},{character:"e",count:8,score:1},{character:"f",count:1,score:7},{character:"g",count:1,score:5},{character:"ğ",count:1,score:8},{character:"h",count:1,score:5},{character:"ı",count:4,score:2},{character:"i",count:7,score:1},{character:"j",count:1,score:10},{character:"k",count:7,score:1},{character:"l",count:7,score:1},{character:"m",count:4,score:2},{character:"n",count:5,score:1},{character:"o",count:3,score:2},{character:"\xf6",count:1,score:7},{character:"p",count:1,score:5},{character:"r",count:6,score:1},{character:"s",count:3,score:2},{character:"ş",count:2,score:4},{character:"t",count:5,score:1},{character:"u",count:3,score:2},{character:"\xfc",count:2,score:3},{character:"v",count:1,score:7},{character:"y",count:2,score:3},{character:"z",count:2,score:4}]}),t.turkishScrabble=new c.Config({...i.scrabble,locale:c.Locale.TR_TR,tiles:[{character:"a",count:12,score:1},{character:"b",count:2,score:3},{character:"c",count:2,score:4},{character:"\xe7",count:2,score:4},{character:"d",count:2,score:3},{character:"e",count:8,score:1},{character:"f",count:1,score:7},{character:"g",count:1,score:5},{character:"ğ",count:1,score:8},{character:"h",count:1,score:5},{character:"ı",count:4,score:2},{character:"i",count:7,score:1},{character:"j",count:1,score:10},{character:"k",count:7,score:1},{character:"l",count:7,score:1},{character:"m",count:4,score:2},{character:"n",count:5,score:1},{character:"o",count:3,score:2},{character:"\xf6",count:1,score:7},{character:"p",count:1,score:5},{character:"r",count:6,score:1},{character:"s",count:3,score:2},{character:"ş",count:2,score:4},{character:"t",count:5,score:1},{character:"u",count:3,score:2},{character:"\xfc",count:2,score:3},{character:"v",count:1,score:7},{character:"y",count:2,score:3},{character:"z",count:2,score:4}]})},3669:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isBingo=void 0;let c=r(7384),i=r(8763);t.isBingo=e=>(0,i.isScoreBingo)(e)||(0,c.isMultiplierBingo)(e)},3734:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.englishUsWordfeud=t.englishUsSuperScrabble=t.englishUsScrabbleDuel=t.englishUsScrabble=t.englishUsLiteraki=t.englishUsLetterLeague=t.englishUsCrossplay=t.englishGbWordfeud=t.englishGbSuperScrabble=t.englishGbScrabbleDuel=t.englishGbScrabble=t.englishGbLiteraki=t.englishGbLetterLeague=t.englishGbCrossplay=void 0;let c=r(9604),i=r(6706);t.englishGbCrossplay=new c.Config({...i.crossplay,locale:c.Locale.EN_GB,tiles:[{character:"a",score:1},{character:"b",score:4},{character:"c",score:3},{character:"d",score:2},{character:"e",score:1},{character:"f",score:4},{character:"g",score:4},{character:"h",score:3},{character:"i",score:1},{character:"j",score:10},{character:"k",score:6},{character:"l",score:2},{character:"m",score:3},{character:"n",score:1},{character:"o",score:1},{character:"p",score:3},{character:"q",score:10},{character:"r",score:1},{character:"s",score:1},{character:"t",score:1},{character:"u",score:2},{character:"v",score:6},{character:"w",score:5},{character:"x",score:8},{character:"y",score:4},{character:"z",score:10}]}),t.englishGbLetterLeague=new c.Config({...i.letterLeague,locale:c.Locale.EN_GB,tiles:[{character:"a",score:1},{character:"b",score:3},{character:"c",score:3},{character:"d",score:2},{character:"e",score:1},{character:"f",score:4},{character:"g",score:2},{character:"h",score:4},{character:"i",score:1},{character:"j",score:8},{character:"k",score:5},{character:"l",score:2},{character:"m",score:3},{character:"n",score:1},{character:"o",score:1},{character:"p",score:3},{character:"q",score:10},{character:"r",score:1},{character:"s",score:1},{character:"t",score:1},{character:"u",score:1},{character:"v",score:4},{character:"w",score:4},{character:"x",score:8},{character:"y",score:4},{character:"z",score:10}]}),t.englishGbLiteraki=new c.Config({...i.literaki,locale:c.Locale.EN_GB,name:"Literaxx",tiles:[{character:"a",count:9,score:1},{character:"b",count:2,score:3},{character:"c",count:2,score:3},{character:"d",count:4,score:2},{character:"e",count:12,score:1},{character:"f",count:2,score:4},{character:"g",count:3,score:2},{character:"h",count:2,score:4},{character:"i",count:9,score:1},{character:"j",count:1,score:8},{character:"k",count:1,score:5},{character:"l",count:4,score:1},{character:"m",count:2,score:3},{character:"n",count:6,score:1},{character:"o",count:8,score:1},{character:"p",count:2,score:3},{character:"q",count:1,score:10},{character:"r",count:6,score:1},{character:"s",count:4,score:1},{character:"t",count:6,score:1},{character:"u",count:4,score:1},{character:"v",count:2,score:4},{character:"w",count:2,score:4},{character:"x",count:1,score:8},{character:"y",count:2,score:4},{character:"z",count:1,score:10}]}),t.englishGbScrabble=new c.Config({...i.scrabble,locale:c.Locale.EN_GB,tiles:[{character:"a",count:9,score:1},{character:"b",count:2,score:3},{character:"c",count:2,score:3},{character:"d",count:4,score:2},{character:"e",count:12,score:1},{character:"f",count:2,score:4},{character:"g",count:3,score:2},{character:"h",count:2,score:4},{character:"i",count:9,score:1},{character:"j",count:1,score:8},{character:"k",count:1,score:5},{character:"l",count:4,score:1},{character:"m",count:2,score:3},{character:"n",count:6,score:1},{character:"o",count:8,score:1},{character:"p",count:2,score:3},{character:"q",count:1,score:10},{character:"r",count:6,score:1},{character:"s",count:4,score:1},{character:"t",count:6,score:1},{character:"u",count:4,score:1},{character:"v",count:2,score:4},{character:"w",count:2,score:4},{character:"x",count:1,score:8},{character:"y",count:2,score:4},{character:"z",count:1,score:10}]}),t.englishGbScrabbleDuel=new c.Config({...i.scrabbleDuel,locale:c.Locale.EN_GB,tiles:[{character:"a",count:9,score:1},{character:"b",count:2,score:3},{character:"c",count:2,score:3},{character:"d",count:4,score:2},{character:"e",count:12,score:1},{character:"f",count:2,score:4},{character:"g",count:3,score:2},{character:"h",count:2,score:4},{character:"i",count:9,score:1},{character:"j",count:1,score:8},{character:"k",count:1,score:5},{character:"l",count:4,score:1},{character:"m",count:2,score:3},{character:"n",count:6,score:1},{character:"o",count:8,score:1},{character:"p",count:2,score:3},{character:"q",count:1,score:10},{character:"r",count:6,score:1},{character:"s",count:4,score:1},{character:"t",count:6,score:1},{character:"u",count:4,score:1},{character:"v",count:2,score:4},{character:"w",count:2,score:4},{character:"x",count:1,score:8},{character:"y",count:2,score:4},{character:"z",count:1,score:10}]}),t.englishGbSuperScrabble=new c.Config({...i.superScrabble,locale:c.Locale.EN_GB,tiles:[{character:"a",count:16,score:1},{character:"b",count:4,score:3},{character:"c",count:6,score:3},{character:"d",count:8,score:2},{character:"e",count:24,score:1},{character:"f",count:4,score:4},{character:"g",count:5,score:2},{character:"h",count:5,score:4},{character:"i",count:13,score:1},{character:"j",count:2,score:8},{character:"k",count:2,score:5},{character:"l",count:7,score:1},{character:"m",count:6,score:3},{character:"n",count:13,score:1},{character:"o",count:15,score:1},{character:"p",count:4,score:3},{character:"q",count:2,score:10},{character:"r",count:13,score:1},{character:"s",count:10,score:1},{character:"t",count:15,score:1},{character:"u",count:7,score:1},{character:"v",count:3,score:4},{character:"w",count:4,score:4},{character:"x",count:2,score:8},{character:"y",count:4,score:4},{character:"z",count:2,score:10}]}),t.englishGbWordfeud=new c.Config({...i.wordfeud,locale:c.Locale.EN_GB,tiles:[{character:"a",count:10,score:1},{character:"b",count:2,score:4},{character:"c",count:2,score:4},{character:"d",count:5,score:2},{character:"e",count:12,score:1},{character:"f",count:2,score:4},{character:"g",count:3,score:3},{character:"h",count:3,score:4},{character:"i",count:9,score:1},{character:"j",count:1,score:10},{character:"k",count:1,score:5},{character:"l",count:4,score:1},{character:"m",count:2,score:3},{character:"n",count:6,score:1},{character:"o",count:7,score:1},{character:"p",count:2,score:4},{character:"q",count:1,score:10},{character:"r",count:6,score:1},{character:"s",count:5,score:1},{character:"t",count:7,score:1},{character:"u",count:4,score:2},{character:"v",count:2,score:4},{character:"w",count:2,score:4},{character:"x",count:1,score:8},{character:"y",count:2,score:4},{character:"z",count:1,score:10}]}),t.englishUsCrossplay=new c.Config({...i.crossplay,locale:c.Locale.EN_US,tiles:[{character:"a",score:1},{character:"b",score:4},{character:"c",score:3},{character:"d",score:2},{character:"e",score:1},{character:"f",score:4},{character:"g",score:4},{character:"h",score:3},{character:"i",score:1},{character:"j",score:10},{character:"k",score:6},{character:"l",score:2},{character:"m",score:3},{character:"n",score:1},{character:"o",score:1},{character:"p",score:3},{character:"q",score:10},{character:"r",score:1},{character:"s",score:1},{character:"t",score:1},{character:"u",score:2},{character:"v",score:6},{character:"w",score:5},{character:"x",score:8},{character:"y",score:4},{character:"z",score:10}]}),t.englishUsLetterLeague=new c.Config({...i.letterLeague,locale:c.Locale.EN_US,tiles:[{character:"a",score:1},{character:"b",score:3},{character:"c",score:3},{character:"d",score:2},{character:"e",score:1},{character:"f",score:4},{character:"g",score:2},{character:"h",score:4},{character:"i",score:1},{character:"j",score:8},{character:"k",score:5},{character:"l",score:2},{character:"m",score:3},{character:"n",score:1},{character:"o",score:1},{character:"p",score:3},{character:"q",score:10},{character:"r",score:1},{character:"s",score:1},{character:"t",score:1},{character:"u",score:1},{character:"v",score:4},{character:"w",score:4},{character:"x",score:8},{character:"y",score:4},{character:"z",score:10}]}),t.englishUsLiteraki=new c.Config({...i.literaki,locale:c.Locale.EN_US,name:"Literaxx",tiles:[{character:"a",count:9,score:1},{character:"b",count:2,score:3},{character:"c",count:2,score:3},{character:"d",count:4,score:2},{character:"e",count:12,score:1},{character:"f",count:2,score:4},{character:"g",count:3,score:2},{character:"h",count:2,score:4},{character:"i",count:9,score:1},{character:"j",count:1,score:8},{character:"k",count:1,score:5},{character:"l",count:4,score:1},{character:"m",count:2,score:3},{character:"n",count:6,score:1},{character:"o",count:8,score:1},{character:"p",count:2,score:3},{character:"q",count:1,score:10},{character:"r",count:6,score:1},{character:"s",count:4,score:1},{character:"t",count:6,score:1},{character:"u",count:4,score:1},{character:"v",count:2,score:4},{character:"w",count:2,score:4},{character:"x",count:1,score:8},{character:"y",count:2,score:4},{character:"z",count:1,score:10}]}),t.englishUsScrabble=new c.Config({...i.scrabble,locale:c.Locale.EN_US,tiles:[{character:"a",count:9,score:1},{character:"b",count:2,score:3},{character:"c",count:2,score:3},{character:"d",count:4,score:2},{character:"e",count:12,score:1},{character:"f",count:2,score:4},{character:"g",count:3,score:2},{character:"h",count:2,score:4},{character:"i",count:9,score:1},{character:"j",count:1,score:8},{character:"k",count:1,score:5},{character:"l",count:4,score:1},{character:"m",count:2,score:3},{character:"n",count:6,score:1},{character:"o",count:8,score:1},{character:"p",count:2,score:3},{character:"q",count:1,score:10},{character:"r",count:6,score:1},{character:"s",count:4,score:1},{character:"t",count:6,score:1},{character:"u",count:4,score:1},{character:"v",count:2,score:4},{character:"w",count:2,score:4},{character:"x",count:1,score:8},{character:"y",count:2,score:4},{character:"z",count:1,score:10}]}),t.englishUsScrabbleDuel=new c.Config({...i.scrabbleDuel,locale:c.Locale.EN_US,tiles:[{character:"a",count:9,score:1},{character:"b",count:2,score:3},{character:"c",count:2,score:3},{character:"d",count:4,score:2},{character:"e",count:12,score:1},{character:"f",count:2,score:4},{character:"g",count:3,score:2},{character:"h",count:2,score:4},{character:"i",count:9,score:1},{character:"j",count:1,score:8},{character:"k",count:1,score:5},{character:"l",count:4,score:1},{character:"m",count:2,score:3},{character:"n",count:6,score:1},{character:"o",count:8,score:1},{character:"p",count:2,score:3},{character:"q",count:1,score:10},{character:"r",count:6,score:1},{character:"s",count:4,score:1},{character:"t",count:6,score:1},{character:"u",count:4,score:1},{character:"v",count:2,score:4},{character:"w",count:2,score:4},{character:"x",count:1,score:8},{character:"y",count:2,score:4},{character:"z",count:1,score:10}]}),t.englishUsSuperScrabble=new c.Config({...i.superScrabble,locale:c.Locale.EN_US,tiles:[{character:"a",count:16,score:1},{character:"b",count:4,score:3},{character:"c",count:6,score:3},{character:"d",count:8,score:2},{character:"e",count:24,score:1},{character:"f",count:4,score:4},{character:"g",count:5,score:2},{character:"h",count:5,score:4},{character:"i",count:13,score:1},{character:"j",count:2,score:8},{character:"k",count:2,score:5},{character:"l",count:7,score:1},{character:"m",count:6,score:3},{character:"n",count:13,score:1},{character:"o",count:15,score:1},{character:"p",count:4,score:3},{character:"q",count:2,score:10},{character:"r",count:13,score:1},{character:"s",count:10,score:1},{character:"t",count:15,score:1},{character:"u",count:7,score:1},{character:"v",count:3,score:4},{character:"w",count:4,score:4},{character:"x",count:2,score:8},{character:"y",count:4,score:4},{character:"z",count:2,score:10}]}),t.englishUsWordfeud=new c.Config({...i.wordfeud,locale:c.Locale.EN_US,tiles:[{character:"a",count:10,score:1},{character:"b",count:2,score:4},{character:"c",count:2,score:4},{character:"d",count:5,score:2},{character:"e",count:12,score:1},{character:"f",count:2,score:4},{character:"g",count:3,score:3},{character:"h",count:3,score:4},{character:"i",count:9,score:1},{character:"j",count:1,score:10},{character:"k",count:1,score:5},{character:"l",count:4,score:1},{character:"m",count:2,score:3},{character:"n",count:6,score:1},{character:"o",count:7,score:1},{character:"p",count:2,score:4},{character:"q",count:1,score:10},{character:"r",count:6,score:1},{character:"s",count:5,score:1},{character:"t",count:7,score:1},{character:"u",count:4,score:2},{character:"v",count:2,score:4},{character:"w",count:2,score:4},{character:"x",count:1,score:8},{character:"y",count:2,score:4},{character:"z",count:1,score:10}]})},3771:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.polishWyrazy=t.polishLiteraki=t.polishScrabble=void 0;let c=r(9604),i=r(6706);t.polishScrabble=new c.Config({...i.scrabble,locale:c.Locale.PL_PL,tiles:[{character:"a",count:9,score:1},{character:"ą",count:1,score:5},{character:"b",count:2,score:3},{character:"c",count:3,score:2},{character:"ć",count:1,score:6},{character:"d",count:3,score:2},{character:"e",count:7,score:1},{character:"ę",count:1,score:5},{character:"f",count:1,score:5},{character:"g",count:2,score:3},{character:"h",count:2,score:3},{character:"i",count:8,score:1},{character:"j",count:2,score:3},{character:"k",count:3,score:2},{character:"l",count:3,score:2},{character:"ł",count:2,score:3},{character:"m",count:3,score:2},{character:"n",count:5,score:1},{character:"ń",count:1,score:7},{character:"o",count:6,score:1},{character:"\xf3",count:1,score:5},{character:"p",count:3,score:2},{character:"r",count:4,score:1},{character:"s",count:4,score:1},{character:"ś",count:1,score:5},{character:"t",count:3,score:2},{character:"u",count:2,score:3},{character:"w",count:4,score:1},{character:"y",count:4,score:2},{character:"z",count:5,score:1},{character:"ź",count:1,score:9},{character:"ż",count:1,score:5}]}),t.polishLiteraki=new c.Config({...i.literaki,locale:c.Locale.PL_PL,tiles:[{character:"a",count:9,score:1},{character:"ą",count:1,score:5},{character:"b",count:2,score:3},{character:"c",count:3,score:2},{character:"ć",count:1,score:5},{character:"d",count:3,score:2},{character:"e",count:7,score:1},{character:"ę",count:1,score:5},{character:"f",count:1,score:5},{character:"g",count:2,score:3},{character:"h",count:2,score:3},{character:"i",count:8,score:1},{character:"j",count:2,score:3},{character:"k",count:3,score:2},{character:"l",count:3,score:2},{character:"ł",count:2,score:3},{character:"m",count:3,score:2},{character:"n",count:5,score:1},{character:"ń",count:1,score:5},{character:"o",count:6,score:1},{character:"\xf3",count:1,score:5},{character:"p",count:3,score:2},{character:"r",count:4,score:1},{character:"s",count:4,score:1},{character:"ś",count:1,score:5},{character:"t",count:3,score:2},{character:"u",count:2,score:3},{character:"w",count:4,score:1},{character:"y",count:4,score:2},{character:"z",count:5,score:1},{character:"ź",count:1,score:5},{character:"ż",count:1,score:5}]}),t.polishWyrazy=new c.Config({...i.wyrazy,locale:c.Locale.PL_PL,tiles:[{character:"a",count:9,score:1},{character:"ą",count:1,score:5},{character:"b",count:2,score:3},{character:"c",count:3,score:2},{character:"ć",count:1,score:5},{character:"d",count:3,score:2},{character:"e",count:7,score:1},{character:"ę",count:1,score:5},{character:"f",count:1,score:5},{character:"g",count:2,score:3},{character:"h",count:2,score:3},{character:"i",count:8,score:1},{character:"j",count:2,score:3},{character:"k",count:3,score:2},{character:"l",count:3,score:2},{character:"ł",count:2,score:3},{character:"m",count:3,score:2},{character:"n",count:5,score:1},{character:"ń",count:1,score:5},{character:"o",count:6,score:1},{character:"\xf3",count:1,score:5},{character:"p",count:3,score:2},{character:"r",count:4,score:1},{character:"s",count:4,score:1},{character:"ś",count:1,score:5},{character:"t",count:3,score:2},{character:"u",count:2,score:3},{character:"w",count:4,score:1},{character:"y",count:4,score:2},{character:"z",count:5,score:1},{character:"ź",count:1,score:5},{character:"ż",count:1,score:5}]})},4053:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.superScrabble=void 0;let c=r(900);t.superScrabble={bingo:{score:50},blankScore:0,blanksCount:4,boardHeight:21,boardWidth:21,game:r(9604).Game.SuperScrabble,name:"Super Scrabble",rackSize:7,bonuses:[{multiplier:4,type:c.BONUS_WORD,x:0,y:0},{multiplier:2,type:c.BONUS_CHARACTER,x:3,y:0},{multiplier:3,type:c.BONUS_WORD,x:7,y:0},{multiplier:2,type:c.BONUS_CHARACTER,x:10,y:0},{multiplier:3,type:c.BONUS_WORD,x:13,y:0},{multiplier:2,type:c.BONUS_CHARACTER,x:17,y:0},{multiplier:4,type:c.BONUS_WORD,x:20,y:0},{multiplier:2,type:c.BONUS_WORD,x:1,y:1},{multiplier:3,type:c.BONUS_CHARACTER,x:4,y:1},{multiplier:2,type:c.BONUS_WORD,x:8,y:1},{multiplier:2,type:c.BONUS_WORD,x:12,y:1},{multiplier:3,type:c.BONUS_CHARACTER,x:16,y:1},{multiplier:2,type:c.BONUS_WORD,x:19,y:1},{multiplier:2,type:c.BONUS_WORD,x:2,y:2},{multiplier:4,type:c.BONUS_CHARACTER,x:5,y:2},{multiplier:2,type:c.BONUS_WORD,x:9,y:2},{multiplier:2,type:c.BONUS_WORD,x:11,y:2},{multiplier:4,type:c.BONUS_CHARACTER,x:15,y:2},{multiplier:2,type:c.BONUS_WORD,x:18,y:2},{multiplier:2,type:c.BONUS_CHARACTER,x:0,y:3},{multiplier:3,type:c.BONUS_WORD,x:3,y:3},{multiplier:2,type:c.BONUS_CHARACTER,x:6,y:3},{multiplier:3,type:c.BONUS_WORD,x:10,y:3},{multiplier:2,type:c.BONUS_CHARACTER,x:14,y:3},{multiplier:3,type:c.BONUS_WORD,x:17,y:3},{multiplier:2,type:c.BONUS_CHARACTER,x:20,y:3},{multiplier:3,type:c.BONUS_CHARACTER,x:1,y:4},{multiplier:2,type:c.BONUS_WORD,x:4,y:4},{multiplier:3,type:c.BONUS_CHARACTER,x:8,y:4},{multiplier:3,type:c.BONUS_CHARACTER,x:12,y:4},{multiplier:2,type:c.BONUS_WORD,x:16,y:4},{multiplier:3,type:c.BONUS_CHARACTER,x:19,y:4},{multiplier:4,type:c.BONUS_CHARACTER,x:2,y:5},{multiplier:2,type:c.BONUS_WORD,x:5,y:5},{multiplier:2,type:c.BONUS_CHARACTER,x:9,y:5},{multiplier:2,type:c.BONUS_CHARACTER,x:11,y:5},{multiplier:2,type:c.BONUS_WORD,x:15,y:5},{multiplier:4,type:c.BONUS_CHARACTER,x:18,y:5},{multiplier:2,type:c.BONUS_CHARACTER,x:3,y:6},{multiplier:2,type:c.BONUS_WORD,x:6,y:6},{multiplier:2,type:c.BONUS_CHARACTER,x:10,y:6},{multiplier:2,type:c.BONUS_WORD,x:14,y:6},{multiplier:2,type:c.BONUS_CHARACTER,x:17,y:6},{multiplier:3,type:c.BONUS_WORD,x:0,y:7},{multiplier:2,type:c.BONUS_WORD,x:7,y:7},{multiplier:2,type:c.BONUS_WORD,x:13,y:7},{multiplier:3,type:c.BONUS_WORD,x:20,y:7},{multiplier:2,type:c.BONUS_WORD,x:1,y:8},{multiplier:3,type:c.BONUS_CHARACTER,x:4,y:8},{multiplier:3,type:c.BONUS_CHARACTER,x:8,y:8},{multiplier:3,type:c.BONUS_CHARACTER,x:12,y:8},{multiplier:3,type:c.BONUS_CHARACTER,x:16,y:8},{multiplier:2,type:c.BONUS_WORD,x:19,y:8},{multiplier:2,type:c.BONUS_WORD,x:2,y:9},{multiplier:2,type:c.BONUS_CHARACTER,x:5,y:9},{multiplier:2,type:c.BONUS_CHARACTER,x:9,y:9},{multiplier:2,type:c.BONUS_CHARACTER,x:11,y:9},{multiplier:2,type:c.BONUS_CHARACTER,x:15,y:9},{multiplier:2,type:c.BONUS_WORD,x:18,y:9},{multiplier:2,type:c.BONUS_CHARACTER,x:0,y:10},{multiplier:3,type:c.BONUS_WORD,x:3,y:10},{multiplier:2,type:c.BONUS_CHARACTER,x:6,y:10},{multiplier:2,type:c.BONUS_CHARACTER,x:14,y:10},{multiplier:3,type:c.BONUS_WORD,x:17,y:10},{multiplier:2,type:c.BONUS_CHARACTER,x:20,y:10},{multiplier:2,type:c.BONUS_WORD,x:2,y:11},{multiplier:2,type:c.BONUS_CHARACTER,x:5,y:11},{multiplier:2,type:c.BONUS_CHARACTER,x:9,y:11},{multiplier:2,type:c.BONUS_CHARACTER,x:11,y:11},{multiplier:2,type:c.BONUS_CHARACTER,x:15,y:11},{multiplier:2,type:c.BONUS_WORD,x:18,y:11},{multiplier:2,type:c.BONUS_WORD,x:1,y:12},{multiplier:3,type:c.BONUS_CHARACTER,x:4,y:12},{multiplier:3,type:c.BONUS_CHARACTER,x:8,y:12},{multiplier:3,type:c.BONUS_CHARACTER,x:12,y:12},{multiplier:3,type:c.BONUS_CHARACTER,x:16,y:12},{multiplier:2,type:c.BONUS_WORD,x:19,y:12},{multiplier:3,type:c.BONUS_WORD,x:0,y:13},{multiplier:2,type:c.BONUS_WORD,x:7,y:13},{multiplier:2,type:c.BONUS_WORD,x:13,y:13},{multiplier:3,type:c.BONUS_WORD,x:20,y:13},{multiplier:2,type:c.BONUS_CHARACTER,x:3,y:14},{multiplier:2,type:c.BONUS_WORD,x:6,y:14},{multiplier:2,type:c.BONUS_CHARACTER,x:10,y:14},{multiplier:2,type:c.BONUS_WORD,x:14,y:14},{multiplier:2,type:c.BONUS_CHARACTER,x:17,y:14},{multiplier:4,type:c.BONUS_CHARACTER,x:2,y:15},{multiplier:2,type:c.BONUS_WORD,x:5,y:15},{multiplier:2,type:c.BONUS_CHARACTER,x:9,y:15},{multiplier:2,type:c.BONUS_CHARACTER,x:11,y:15},{multiplier:2,type:c.BONUS_WORD,x:15,y:15},{multiplier:4,type:c.BONUS_CHARACTER,x:18,y:15},{multiplier:3,type:c.BONUS_CHARACTER,x:1,y:16},{multiplier:2,type:c.BONUS_WORD,x:4,y:16},{multiplier:3,type:c.BONUS_CHARACTER,x:8,y:16},{multiplier:3,type:c.BONUS_CHARACTER,x:12,y:16},{multiplier:2,type:c.BONUS_WORD,x:16,y:16},{multiplier:3,type:c.BONUS_CHARACTER,x:19,y:16},{multiplier:2,type:c.BONUS_CHARACTER,x:0,y:17},{multiplier:3,type:c.BONUS_WORD,x:3,y:17},{multiplier:2,type:c.BONUS_CHARACTER,x:6,y:17},{multiplier:3,type:c.BONUS_WORD,x:10,y:17},{multiplier:2,type:c.BONUS_CHARACTER,x:14,y:17},{multiplier:3,type:c.BONUS_WORD,x:17,y:17},{multiplier:2,type:c.BONUS_CHARACTER,x:20,y:17},{multiplier:2,type:c.BONUS_WORD,x:2,y:18},{multiplier:4,type:c.BONUS_CHARACTER,x:5,y:18},{multiplier:2,type:c.BONUS_WORD,x:9,y:18},{multiplier:2,type:c.BONUS_WORD,x:11,y:18},{multiplier:4,type:c.BONUS_CHARACTER,x:15,y:18},{multiplier:2,type:c.BONUS_WORD,x:18,y:18},{multiplier:2,type:c.BONUS_WORD,x:1,y:19},{multiplier:3,type:c.BONUS_CHARACTER,x:4,y:19},{multiplier:2,type:c.BONUS_WORD,x:8,y:19},{multiplier:2,type:c.BONUS_WORD,x:12,y:19},{multiplier:3,type:c.BONUS_CHARACTER,x:16,y:19},{multiplier:2,type:c.BONUS_WORD,x:19,y:19},{multiplier:4,type:c.BONUS_WORD,x:0,y:20},{multiplier:2,type:c.BONUS_CHARACTER,x:3,y:20},{multiplier:3,type:c.BONUS_WORD,x:7,y:20},{multiplier:2,type:c.BONUS_CHARACTER,x:10,y:20},{multiplier:3,type:c.BONUS_WORD,x:13,y:20},{multiplier:2,type:c.BONUS_CHARACTER,x:17,y:20},{multiplier:4,type:c.BONUS_WORD,x:20,y:20}]}},4073:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getBoardWords=function(e){return[...(0,c.getWordsInRows)(e.rows,"horizontal"),...(0,c.getWordsInRows)((0,i.transpose)(e.rows),"vertical")]};let c=r(9459),i=r(5807)},4088:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.crossplay=void 0;let c=r(900);t.crossplay={bingo:{score:40},blankScore:0,blanksCount:3,boardHeight:15,boardWidth:15,game:r(9604).Game.Crossplay,name:"Crossplay",rackSize:7,bonuses:[{multiplier:3,type:c.BONUS_CHARACTER,x:0,y:0},{multiplier:3,type:c.BONUS_CHARACTER,x:14,y:0},{multiplier:3,type:c.BONUS_CHARACTER,x:0,y:14},{multiplier:3,type:c.BONUS_CHARACTER,x:14,y:14},{multiplier:3,type:c.BONUS_CHARACTER,x:6,y:1},{multiplier:3,type:c.BONUS_CHARACTER,x:8,y:1},{multiplier:3,type:c.BONUS_CHARACTER,x:6,y:13},{multiplier:3,type:c.BONUS_CHARACTER,x:8,y:13},{multiplier:3,type:c.BONUS_CHARACTER,x:1,y:6},{multiplier:3,type:c.BONUS_CHARACTER,x:13,y:6},{multiplier:3,type:c.BONUS_CHARACTER,x:1,y:8},{multiplier:3,type:c.BONUS_CHARACTER,x:13,y:8},{multiplier:3,type:c.BONUS_CHARACTER,x:5,y:4},{multiplier:3,type:c.BONUS_CHARACTER,x:9,y:4},{multiplier:3,type:c.BONUS_CHARACTER,x:5,y:10},{multiplier:3,type:c.BONUS_CHARACTER,x:9,y:10},{multiplier:3,type:c.BONUS_CHARACTER,x:4,y:5},{multiplier:3,type:c.BONUS_CHARACTER,x:10,y:5},{multiplier:3,type:c.BONUS_CHARACTER,x:4,y:9},{multiplier:3,type:c.BONUS_CHARACTER,x:10,y:9},{multiplier:2,type:c.BONUS_CHARACTER,x:4,y:2},{multiplier:2,type:c.BONUS_CHARACTER,x:10,y:2},{multiplier:2,type:c.BONUS_CHARACTER,x:4,y:12},{multiplier:2,type:c.BONUS_CHARACTER,x:10,y:12},{multiplier:2,type:c.BONUS_CHARACTER,x:2,y:4},{multiplier:2,type:c.BONUS_CHARACTER,x:12,y:4},{multiplier:2,type:c.BONUS_CHARACTER,x:2,y:10},{multiplier:2,type:c.BONUS_CHARACTER,x:12,y:10},{multiplier:2,type:c.BONUS_CHARACTER,x:3,y:3},{multiplier:2,type:c.BONUS_CHARACTER,x:11,y:3},{multiplier:2,type:c.BONUS_CHARACTER,x:3,y:11},{multiplier:2,type:c.BONUS_CHARACTER,x:11,y:11},{multiplier:2,type:c.BONUS_CHARACTER,x:0,y:7},{multiplier:2,type:c.BONUS_CHARACTER,x:14,y:7},{multiplier:2,type:c.BONUS_CHARACTER,x:7,y:0},{multiplier:2,type:c.BONUS_CHARACTER,x:7,y:14},{multiplier:2,type:c.BONUS_CHARACTER,x:7,y:5},{multiplier:2,type:c.BONUS_CHARACTER,x:7,y:9},{multiplier:2,type:c.BONUS_CHARACTER,x:5,y:7},{multiplier:2,type:c.BONUS_CHARACTER,x:9,y:7},{multiplier:2,type:c.BONUS_WORD,x:1,y:1},{multiplier:2,type:c.BONUS_WORD,x:13,y:1},{multiplier:2,type:c.BONUS_WORD,x:1,y:13},{multiplier:2,type:c.BONUS_WORD,x:13,y:13},{multiplier:2,type:c.BONUS_WORD,x:3,y:7},{multiplier:2,type:c.BONUS_WORD,x:11,y:7},{multiplier:2,type:c.BONUS_WORD,x:7,y:3},{multiplier:2,type:c.BONUS_WORD,x:7,y:11},{multiplier:3,type:c.BONUS_WORD,x:3,y:0},{multiplier:3,type:c.BONUS_WORD,x:11,y:0},{multiplier:3,type:c.BONUS_WORD,x:3,y:14},{multiplier:3,type:c.BONUS_WORD,x:11,y:14},{multiplier:3,type:c.BONUS_WORD,x:0,y:3},{multiplier:3,type:c.BONUS_WORD,x:14,y:3},{multiplier:3,type:c.BONUS_WORD,x:0,y:11},{multiplier:3,type:c.BONUS_WORD,x:14,y:11}]}},4197:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.kelimelik=void 0;let c=r(900);t.kelimelik={bingo:{score:30},blankScore:0,blanksCount:2,boardHeight:15,boardWidth:15,game:r(9604).Game.Kelimelik,name:"Kelimelik",rackSize:7,bonuses:[{multiplier:3,type:c.BONUS_WORD,x:2,y:0},{multiplier:2,type:c.BONUS_CHARACTER,x:5,y:0},{multiplier:2,type:c.BONUS_CHARACTER,x:9,y:0},{multiplier:3,type:c.BONUS_WORD,x:12,y:0},{multiplier:3,type:c.BONUS_CHARACTER,x:1,y:1},{multiplier:2,type:c.BONUS_CHARACTER,x:6,y:1},{multiplier:2,type:c.BONUS_CHARACTER,x:8,y:1},{multiplier:3,type:c.BONUS_CHARACTER,x:13,y:1},{multiplier:3,type:c.BONUS_WORD,x:0,y:2},{multiplier:2,type:c.BONUS_WORD,x:7,y:2},{multiplier:3,type:c.BONUS_WORD,x:14,y:2},{multiplier:2,type:c.BONUS_WORD,x:3,y:3},{multiplier:2,type:c.BONUS_WORD,x:11,y:3},{multiplier:3,type:c.BONUS_CHARACTER,x:4,y:4},{multiplier:3,type:c.BONUS_CHARACTER,x:10,y:4},{multiplier:2,type:c.BONUS_CHARACTER,x:0,y:5},{multiplier:2,type:c.BONUS_CHARACTER,x:5,y:5},{multiplier:2,type:c.BONUS_CHARACTER,x:9,y:5},{multiplier:2,type:c.BONUS_CHARACTER,x:14,y:5},{multiplier:2,type:c.BONUS_CHARACTER,x:1,y:6},{multiplier:2,type:c.BONUS_CHARACTER,x:6,y:6},{multiplier:2,type:c.BONUS_CHARACTER,x:8,y:6},{multiplier:2,type:c.BONUS_CHARACTER,x:13,y:6},{multiplier:2,type:c.BONUS_WORD,x:2,y:7},{multiplier:2,type:c.BONUS_WORD,x:12,y:7},{multiplier:2,type:c.BONUS_CHARACTER,x:1,y:8},{multiplier:2,type:c.BONUS_CHARACTER,x:6,y:8},{multiplier:2,type:c.BONUS_CHARACTER,x:8,y:8},{multiplier:2,type:c.BONUS_CHARACTER,x:13,y:8},{multiplier:2,type:c.BONUS_CHARACTER,x:0,y:9},{multiplier:2,type:c.BONUS_CHARACTER,x:5,y:9},{multiplier:2,type:c.BONUS_CHARACTER,x:9,y:9},{multiplier:2,type:c.BONUS_CHARACTER,x:14,y:9},{multiplier:3,type:c.BONUS_CHARACTER,x:4,y:10},{multiplier:3,type:c.BONUS_CHARACTER,x:10,y:10},{multiplier:2,type:c.BONUS_WORD,x:3,y:11},{multiplier:2,type:c.BONUS_WORD,x:11,y:11},{multiplier:3,type:c.BONUS_WORD,x:0,y:12},{multiplier:2,type:c.BONUS_WORD,x:7,y:12},{multiplier:3,type:c.BONUS_WORD,x:14,y:12},{multiplier:3,type:c.BONUS_CHARACTER,x:1,y:13},{multiplier:2,type:c.BONUS_CHARACTER,x:6,y:13},{multiplier:2,type:c.BONUS_CHARACTER,x:8,y:13},{multiplier:3,type:c.BONUS_CHARACTER,x:13,y:13},{multiplier:3,type:c.BONUS_WORD,x:2,y:14},{multiplier:2,type:c.BONUS_CHARACTER,x:5,y:14},{multiplier:2,type:c.BONUS_CHARACTER,x:9,y:14},{multiplier:3,type:c.BONUS_WORD,x:12,y:14}]}},4260:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isCellJson=void 0;let c=r(7197),i=r(4684);t.isCellJson=e=>(0,c.isObject)(e)&&"boolean"==typeof e.isEmpty&&((0,i.isTileJson)(e.tile)||null===e.tile)&&"number"==typeof e.x&&"number"==typeof e.y},4365:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getCollisions=function(e,t,r){let i=[];for(let l of t){if(l.isFilled())continue;let t=(0,c.getCollision)(l,e,r);t.length>1&&i.push(t)}return i};let c=r(5796)},4467:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.letterLeague=void 0;let c=r(900);t.letterLeague={bingo:{multiplier:2},blankScore:0,blanksCount:2,boardHeight:19,boardWidth:27,game:r(9604).Game.LetterLeague,name:"Letter League",rackSize:7,bonuses:[{multiplier:2,type:c.BONUS_CHARACTER,x:3,y:0},{multiplier:2,type:c.BONUS_CHARACTER,x:6,y:0},{multiplier:2,type:c.BONUS_CHARACTER,x:8,y:0},{multiplier:2,type:c.BONUS_CHARACTER,x:11,y:0},{multiplier:2,type:c.BONUS_CHARACTER,x:15,y:0},{multiplier:2,type:c.BONUS_CHARACTER,x:18,y:0},{multiplier:2,type:c.BONUS_CHARACTER,x:20,y:0},{multiplier:2,type:c.BONUS_CHARACTER,x:23,y:0},{multiplier:2,type:c.BONUS_CHARACTER,x:1,y:1},{multiplier:2,type:c.BONUS_WORD,x:5,y:1},{multiplier:2,type:c.BONUS_WORD,x:9,y:1},{multiplier:2,type:c.BONUS_CHARACTER,x:13,y:1},{multiplier:2,type:c.BONUS_WORD,x:17,y:1},{multiplier:2,type:c.BONUS_WORD,x:21,y:1},{multiplier:2,type:c.BONUS_CHARACTER,x:25,y:1},{multiplier:2,type:c.BONUS_CHARACTER,x:4,y:2},{multiplier:3,type:c.BONUS_CHARACTER,x:6,y:2},{multiplier:3,type:c.BONUS_CHARACTER,x:8,y:2},{multiplier:2,type:c.BONUS_CHARACTER,x:10,y:2},{multiplier:2,type:c.BONUS_CHARACTER,x:16,y:2},{multiplier:3,type:c.BONUS_CHARACTER,x:18,y:2},{multiplier:3,type:c.BONUS_CHARACTER,x:20,y:2},{multiplier:2,type:c.BONUS_CHARACTER,x:22,y:2},{multiplier:2,type:c.BONUS_CHARACTER,x:0,y:3},{multiplier:2,type:c.BONUS_WORD,x:1,y:3},{multiplier:2,type:c.BONUS_CHARACTER,x:2,y:3},{multiplier:3,type:c.BONUS_WORD,x:7,y:3},{multiplier:2,type:c.BONUS_CHARACTER,x:12,y:3},{multiplier:2,type:c.BONUS_WORD,x:13,y:3},{multiplier:2,type:c.BONUS_CHARACTER,x:14,y:3},{multiplier:3,type:c.BONUS_WORD,x:19,y:3},{multiplier:2,type:c.BONUS_CHARACTER,x:24,y:3},{multiplier:2,type:c.BONUS_WORD,x:25,y:3},{multiplier:2,type:c.BONUS_CHARACTER,x:26,y:3},{multiplier:2,type:c.BONUS_CHARACTER,x:4,y:4},{multiplier:3,type:c.BONUS_CHARACTER,x:6,y:4},{multiplier:3,type:c.BONUS_CHARACTER,x:8,y:4},{multiplier:2,type:c.BONUS_CHARACTER,x:10,y:4},{multiplier:2,type:c.BONUS_CHARACTER,x:16,y:4},{multiplier:3,type:c.BONUS_CHARACTER,x:18,y:4},{multiplier:3,type:c.BONUS_CHARACTER,x:20,y:4},{multiplier:2,type:c.BONUS_CHARACTER,x:22,y:4},{multiplier:2,type:c.BONUS_CHARACTER,x:1,y:5},{multiplier:2,type:c.BONUS_WORD,x:5,y:5},{multiplier:2,type:c.BONUS_WORD,x:9,y:5},{multiplier:2,type:c.BONUS_CHARACTER,x:13,y:5},{multiplier:2,type:c.BONUS_WORD,x:17,y:5},{multiplier:2,type:c.BONUS_WORD,x:21,y:5},{multiplier:2,type:c.BONUS_CHARACTER,x:25,y:5},{multiplier:2,type:c.BONUS_CHARACTER,x:3,y:6},{multiplier:2,type:c.BONUS_CHARACTER,x:6,y:6},{multiplier:2,type:c.BONUS_CHARACTER,x:8,y:6},{multiplier:2,type:c.BONUS_CHARACTER,x:11,y:6},{multiplier:2,type:c.BONUS_CHARACTER,x:15,y:6},{multiplier:2,type:c.BONUS_CHARACTER,x:18,y:6},{multiplier:2,type:c.BONUS_CHARACTER,x:20,y:6},{multiplier:2,type:c.BONUS_CHARACTER,x:23,y:6},{multiplier:2,type:c.BONUS_WORD,x:4,y:7},{multiplier:2,type:c.BONUS_WORD,x:10,y:7},{multiplier:2,type:c.BONUS_WORD,x:16,y:7},{multiplier:2,type:c.BONUS_WORD,x:22,y:7},{multiplier:3,type:c.BONUS_CHARACTER,x:0,y:8},{multiplier:3,type:c.BONUS_CHARACTER,x:2,y:8},{multiplier:2,type:c.BONUS_CHARACTER,x:7,y:8},{multiplier:3,type:c.BONUS_CHARACTER,x:12,y:8},{multiplier:3,type:c.BONUS_CHARACTER,x:14,y:8},{multiplier:2,type:c.BONUS_CHARACTER,x:19,y:8},{multiplier:3,type:c.BONUS_CHARACTER,x:24,y:8},{multiplier:3,type:c.BONUS_CHARACTER,x:26,y:8},{multiplier:2,type:c.BONUS_WORD,x:3,y:9},{multiplier:2,type:c.BONUS_WORD,x:7,y:9},{multiplier:2,type:c.BONUS_WORD,x:11,y:9},{multiplier:2,type:c.BONUS_WORD,x:15,y:9},{multiplier:2,type:c.BONUS_WORD,x:19,y:9},{multiplier:2,type:c.BONUS_WORD,x:23,y:9},{multiplier:3,type:c.BONUS_CHARACTER,x:0,y:10},{multiplier:3,type:c.BONUS_CHARACTER,x:2,y:10},{multiplier:2,type:c.BONUS_CHARACTER,x:7,y:10},{multiplier:3,type:c.BONUS_CHARACTER,x:12,y:10},{multiplier:3,type:c.BONUS_CHARACTER,x:14,y:10},{multiplier:2,type:c.BONUS_CHARACTER,x:19,y:10},{multiplier:3,type:c.BONUS_CHARACTER,x:24,y:10},{multiplier:3,type:c.BONUS_CHARACTER,x:26,y:10},{multiplier:2,type:c.BONUS_WORD,x:4,y:11},{multiplier:2,type:c.BONUS_WORD,x:10,y:11},{multiplier:2,type:c.BONUS_WORD,x:16,y:11},{multiplier:2,type:c.BONUS_WORD,x:22,y:11},{multiplier:2,type:c.BONUS_CHARACTER,x:3,y:12},{multiplier:2,type:c.BONUS_CHARACTER,x:6,y:12},{multiplier:2,type:c.BONUS_CHARACTER,x:8,y:12},{multiplier:2,type:c.BONUS_CHARACTER,x:11,y:12},{multiplier:2,type:c.BONUS_CHARACTER,x:15,y:12},{multiplier:2,type:c.BONUS_CHARACTER,x:18,y:12},{multiplier:2,type:c.BONUS_CHARACTER,x:20,y:12},{multiplier:2,type:c.BONUS_CHARACTER,x:23,y:12},{multiplier:2,type:c.BONUS_CHARACTER,x:1,y:13},{multiplier:2,type:c.BONUS_WORD,x:5,y:13},{multiplier:2,type:c.BONUS_WORD,x:9,y:13},{multiplier:2,type:c.BONUS_CHARACTER,x:13,y:13},{multiplier:2,type:c.BONUS_WORD,x:17,y:13},{multiplier:2,type:c.BONUS_WORD,x:21,y:13},{multiplier:2,type:c.BONUS_CHARACTER,x:25,y:13},{multiplier:2,type:c.BONUS_CHARACTER,x:4,y:14},{multiplier:3,type:c.BONUS_CHARACTER,x:6,y:14},{multiplier:3,type:c.BONUS_CHARACTER,x:8,y:14},{multiplier:2,type:c.BONUS_CHARACTER,x:10,y:14},{multiplier:2,type:c.BONUS_CHARACTER,x:16,y:14},{multiplier:3,type:c.BONUS_CHARACTER,x:18,y:14},{multiplier:3,type:c.BONUS_CHARACTER,x:20,y:14},{multiplier:2,type:c.BONUS_CHARACTER,x:22,y:14},{multiplier:2,type:c.BONUS_CHARACTER,x:0,y:15},{multiplier:2,type:c.BONUS_WORD,x:1,y:15},{multiplier:2,type:c.BONUS_CHARACTER,x:2,y:15},{multiplier:3,type:c.BONUS_WORD,x:7,y:15},{multiplier:2,type:c.BONUS_CHARACTER,x:12,y:15},{multiplier:2,type:c.BONUS_WORD,x:13,y:15},{multiplier:2,type:c.BONUS_CHARACTER,x:14,y:15},{multiplier:3,type:c.BONUS_WORD,x:19,y:15},{multiplier:2,type:c.BONUS_CHARACTER,x:24,y:15},{multiplier:2,type:c.BONUS_WORD,x:25,y:15},{multiplier:2,type:c.BONUS_CHARACTER,x:26,y:15},{multiplier:2,type:c.BONUS_CHARACTER,x:4,y:16},{multiplier:3,type:c.BONUS_CHARACTER,x:6,y:16},{multiplier:3,type:c.BONUS_CHARACTER,x:8,y:16},{multiplier:2,type:c.BONUS_CHARACTER,x:10,y:16},{multiplier:2,type:c.BONUS_CHARACTER,x:16,y:16},{multiplier:3,type:c.BONUS_CHARACTER,x:18,y:16},{multiplier:3,type:c.BONUS_CHARACTER,x:20,y:16},{multiplier:2,type:c.BONUS_CHARACTER,x:22,y:16},{multiplier:2,type:c.BONUS_CHARACTER,x:1,y:17},{multiplier:2,type:c.BONUS_WORD,x:5,y:17},{multiplier:2,type:c.BONUS_WORD,x:9,y:17},{multiplier:2,type:c.BONUS_CHARACTER,x:13,y:17},{multiplier:2,type:c.BONUS_WORD,x:17,y:17},{multiplier:2,type:c.BONUS_WORD,x:21,y:17},{multiplier:2,type:c.BONUS_CHARACTER,x:25,y:17},{multiplier:2,type:c.BONUS_CHARACTER,x:3,y:18},{multiplier:2,type:c.BONUS_CHARACTER,x:6,y:18},{multiplier:2,type:c.BONUS_CHARACTER,x:8,y:18},{multiplier:2,type:c.BONUS_CHARACTER,x:11,y:18},{multiplier:2,type:c.BONUS_CHARACTER,x:15,y:18},{multiplier:2,type:c.BONUS_CHARACTER,x:18,y:18},{multiplier:2,type:c.BONUS_CHARACTER,x:20,y:18},{multiplier:2,type:c.BONUS_CHARACTER,x:23,y:18}]}},4554:(e,t)=>{"use strict";var r,c;Object.defineProperty(t,"__esModule",{value:!0}),t.Locale=void 0,(c=r||(t.Locale=r={})).DE_DE="de-DE",c.EN_GB="en-GB",c.EN_US="en-US",c.ES_ES="es-ES",c.FA_IR="fa-IR",c.FR_FR="fr-FR",c.PL_PL="pl-PL",c.RO_RO="ro-RO",c.TR_TR="tr-TR"},4684:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isTileJson=void 0;let c=r(7197);t.isTileJson=e=>(0,c.isObject)(e)&&"string"==typeof e.character&&"boolean"==typeof e.isBlank},4704:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Cell=void 0;let c=r(7076);class i{constructor({isEmpty:e=!0,tile:t=c.Tile.Null,x:r,y:i}){this.isEmpty=e,this.tile=t,this.x=r,this.y=i}clone(){return new i({isEmpty:this.isEmpty,tile:this.tile.clone(),x:this.x,y:this.y})}equals(e){return this.x===e.x&&this.y===e.y&&this.isEmpty===e.isEmpty&&this.tile.equals(e.tile)}hasTile(){return this.tile!==c.Tile.Null}isCandidate(){return this.isEmpty&&this.hasTile()}isFilled(){return!this.isEmpty&&this.hasTile()}toJson(){return{isEmpty:this.isEmpty,tile:this.tile.toJson(),x:this.x,y:this.y}}toString(){return this.tile.toString()}}t.Cell=i,i.fromJson=e=>new i({isEmpty:e.isEmpty,tile:c.Tile.fromJson(e.tile),x:e.x,y:e.y})},4774:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.spanishScrabble=void 0;let c=r(9604),i=r(6706);t.spanishScrabble=new c.Config({...i.scrabble,locale:c.Locale.ES_ES,tiles:[{character:"a",count:12,score:1},{character:"b",count:2,score:3},{character:"c",count:4,score:3},{character:"ch",count:1,score:5},{character:"d",count:5,score:2},{character:"e",count:12,score:1},{character:"f",count:1,score:4},{character:"g",count:2,score:2},{character:"h",count:2,score:4},{character:"i",count:6,score:1},{character:"j",count:1,score:8},{character:"ll",count:1,score:8},{character:"l",count:4,score:1},{character:"m",count:2,score:3},{character:"n",count:5,score:1},{character:"\xf1",count:1,score:8},{character:"o",count:9,score:1},{character:"p",count:2,score:3},{character:"q",count:1,score:5},{character:"r",count:5,score:1},{character:"rr",count:1,score:8},{character:"s",count:6,score:1},{character:"t",count:4,score:1},{character:"u",count:5,score:1},{character:"v",count:1,score:4},{character:"x",count:1,score:8},{character:"y",count:1,score:4},{character:"z",count:1,score:10}]})},4880:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Board=void 0;let c=r(900),i=r(4704),l=r(5644),o=r(7076);class a{static fromStringArray(e){return new a({rows:e.map((e,t)=>e.split("").map((e,r)=>new i.Cell({isEmpty:!e||e===c.EMPTY_CELL,tile:e===c.EMPTY_CELL?o.Tile.Null:new o.Tile({character:e}),x:r,y:t})))})}constructor({rows:e}){this.rows=e,this.columnsCount=e[0].length,this.rowsCount=e.length}get center(){let e=Math.floor(this.columnsCount/2),t=Math.floor(this.rowsCount/2);return this.rows[t][e]}clone(){return new a({rows:this.rows.map(e=>e.map(e=>e.clone()))})}collides(e){return this.collidesUp(e)||this.collidesDown(e)||this.collidesLeft(e)||this.collidesRight(e)}collidesDown({x:e,y:t}){return t<this.rowsCount-1&&!this.rows[t+1][e].isEmpty}collidesLeft({x:e,y:t}){return e>0&&!this.rows[t][e-1].isEmpty}collidesRight({x:e,y:t}){return e<this.columnsCount-1&&!this.rows[t][e+1].isEmpty}collidesUp({x:e,y:t}){return t>0&&!this.rows[t-1][e].isEmpty}equals(e){return this.columnsCount===e.columnsCount&&this.rowsCount===e.rowsCount&&this.rows.every((t,r)=>t.every((t,c)=>t.equals(e.rows[r][c])))}getBlanksCount(){return this.rows.reduce((e,t)=>e+t.reduce((e,t)=>e+ +!!t.tile.isBlank,0),0)}getCollidingWords(e){return(0,l.getCollidingWords)(this,e)}getColumn(e){return this.rows.map(t=>t[e])}getRow(e){return this.rows[e]}getTilesCount(){return this.rows.reduce((e,t)=>e+t.reduce((e,t)=>e+ +!!t.hasTile(),0),0)}getWords(){return(0,l.getBoardWords)(this)}isEmpty(){return this.rows.every(e=>e.every(({isEmpty:e})=>e))}toJson(){return this.rows.map(e=>e.map(e=>e.toJson()))}toString(){return this.rows.map(e=>e.map(String).join("")).join("\n")}updateCell(e,t,r){this.rows[t][e]=r(this.rows[t][e])}updateRow(e,t){this.rows[e]=t(this.rows[e])}}t.Board=a,a.create=(e,t)=>{let r=Array(t),c=Array(e).fill(" ").join(""),i=r.fill(c);return a.fromStringArray(i)},a.fromJson=e=>new a({rows:e.map(e=>e.map(i.Cell.fromJson))})},5350:(e,t)=>{"use strict";var r,c;Object.defineProperty(t,"__esModule",{value:!0}),t.Game=void 0,(c=r||(t.Game=r={})).Crossplay="crossplay",c.Kelimelik="kelimelik",c.LetterLeague="letter-league",c.Literaki="literaki",c.Scrabble="scrabble",c.ScrabbleDuel="scrabble-duel",c.SuperScrabble="super-scrabble",c.Wordfeud="wordfeud",c.Wyrazy="wyrazy"},5422:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MoveGenerator=void 0;let c=r(6976),i=r(900),l=r(9604);class o{constructor(e,t,r,c){this.blanksLeft=0,this.rackTotal=0,this.boardIsEmpty=!0,this.isHorizontal=!0,this.lineLength=0,this.linesCount=0,this.line=0,this.lineBase=0,this.anchorPos=0,this.limit=0,this.anchorRightOpen=!1,this.leftMost=0,this.placedCount=0,this.seenSingleTiles=new Set,this.results=[],this.sortKeys=[],this.rankKeys=[],this.blankRackIndex=0,this.gaddag=e,this.config=t,this.width=r.columnsCount,this.height=r.rowsCount,this.cellsCount=this.width*this.height,this.blankScore=t.blankScore,this.rackSize=t.rackSize,this.digraphs=t.twoCharacterTiles;let l=t.alphabet;if(l.length>64)throw Error("Alphabets larger than 64 tiles are not supported");if(this.width>32||this.height>32)throw Error("Boards larger than 32x32 are not supported");this.alphaSize=l.length,this.alphaChars=l,this.alphaLetter1=new Int32Array(this.alphaSize),this.alphaLetter2=new Int32Array(this.alphaSize),this.alphaPoints=new Int32Array(this.alphaSize);for(let r=0;r<this.alphaSize;++r){let c=l[r];this.alphaLetter1[r]=e.getLetter(c.charCodeAt(0)),this.alphaLetter2[r]=c.length>1?e.getLetter(c.charCodeAt(1)):0,this.alphaPoints[r]=t.pointsMap[c]||0}this.leftAlphaStart=new Int32Array(65),this.rightAlphaStart=new Int32Array(65),this.leftAlphaList=new Int32Array(this.alphaSize),this.rightAlphaList=new Int32Array(this.alphaSize),this.alphaSecondLeft=new Int32Array(this.alphaSize),this.alphaSecondRight=new Int32Array(this.alphaSize);for(let e=0;e<2;++e){for(let t=0;t<this.alphaSize;++t){let r=this.alphaLetter1[t],c=this.alphaLetter2[t];if(r<=0||c<0)continue;let i=0===c?r:c;0===e?(++this.leftAlphaStart[i+1],++this.rightAlphaStart[r+1]):(this.leftAlphaList[this.leftAlphaStart[i]++]=t,this.rightAlphaList[this.rightAlphaStart[r]++]=t,this.alphaSecondLeft[t]=0===c?0:r,this.alphaSecondRight[t]=c)}if(0===e)for(let e=0;e<64;++e)this.leftAlphaStart[e+1]+=this.leftAlphaStart[e],this.rightAlphaStart[e+1]+=this.rightAlphaStart[e]}for(let e=64;e>0;--e)this.leftAlphaStart[e]=this.leftAlphaStart[e-1],this.rightAlphaStart[e]=this.rightAlphaStart[e-1];this.leftAlphaStart[0]=0,this.rightAlphaStart[0]=0,this.rackCounts=new Int32Array(this.alphaSize),this.alphaFirstRackIndex=new Int32Array(this.alphaSize).fill(c.length),this.blankRackIndex=c.length;for(let e=0;e<c.length;++e){let t=c[e];if(t.isBlank){0===this.blanksLeft&&(this.blankRackIndex=e),++this.blanksLeft,++this.rackTotal;continue}let r=l.indexOf(t.character);-1!==r&&(0===this.rackCounts[r]&&(this.alphaFirstRackIndex[r]=e),++this.rackCounts[r],++this.rackTotal)}this.bonusType=new Uint8Array(this.cellsCount),this.bonusMult=new Int32Array(this.cellsCount),this.bonusReq=new Int32Array(this.cellsCount).fill(-1);for(let e=t.bonuses.length-1;e>=0;--e){let r=t.bonuses[e];if(r.x<0||r.x>=this.width||r.y<0||r.y>=this.height)continue;let c=r.y*this.width+r.x;r.type===i.BONUS_CHARACTER?this.bonusType[c]=1:r.type===i.BONUS_WORD?this.bonusType[c]=2:this.bonusType[c]=0,this.bonusMult[c]=r.multiplier,this.bonusReq[c]="number"==typeof r.score?r.score:-1}this.boardFilled=new Uint8Array(this.cellsCount),this.boardChar=Array.from({length:this.cellsCount}),this.boardIsBlank=new Uint8Array(this.cellsCount),this.boardScore=new Int32Array(this.cellsCount),this.boardLetter1=new Int32Array(this.cellsCount),this.boardLetter2=new Int32Array(this.cellsCount),this.anchor=new Uint8Array(this.cellsCount);for(let c=0;c<this.height;++c){let i=r.rows[c];for(let r=0;r<this.width;++r){let l=i[r];if(!l.isFilled())continue;let o=c*this.width+r,a=l.tile.character;this.boardIsEmpty=!1,this.boardFilled[o]=1,this.boardChar[o]=a,this.boardIsBlank[o]=+!!l.tile.isBlank,this.boardScore[o]=l.tile.isBlank?this.blankScore:t.pointsMap[a]||0,this.boardLetter1[o]=e.getLetter(a.charCodeAt(0)),this.boardLetter2[o]=a.length>1?e.getLetter(a.charCodeAt(1)):0}}for(let e=0;e<this.height;++e)for(let t=0;t<this.width;++t){let r=e*this.width+t;if(1===this.boardFilled[r])continue;let c=e>0&&1===this.boardFilled[r-this.width],i=e<this.height-1&&1===this.boardFilled[r+this.width],l=t>0&&1===this.boardFilled[r-1],o=t<this.width-1&&1===this.boardFilled[r+1];this.anchor[r]=c||i||l||o?1:0}this.passFilled=new Uint8Array(this.cellsCount),this.passLetter1=new Int32Array(this.cellsCount),this.passLetter2=new Int32Array(this.cellsCount),this.passScore=new Int32Array(this.cellsCount),this.passGlobal=new Int32Array(this.cellsCount),this.passAnchor=new Uint8Array(this.cellsCount),this.maskLo=new Int32Array(this.cellsCount),this.maskHi=new Int32Array(this.cellsCount),this.crossBase=new Int32Array(this.cellsCount),this.hasCross=new Uint8Array(this.cellsCount);let o=Math.max(this.width,this.height);this.placedAt=new Int32Array(o).fill(-1),this.placedBlankAt=new Uint8Array(o)}run(){if(0===this.rackTotal)return this.results;this.runPass(!0),this.runPass(!1);let e=this.results.map((e,t)=>t),{rankKeys:t,sortKeys:r}=this;return e.sort((e,c)=>{let i=r[e]-r[c];if(0!==i)return i;let l=t[e],o=t[c];return l<o?-1:+(l>o)}),e.map((e,t)=>{let r=this.results[e];return r.id=t,r})}runPass(e){this.isHorizontal=e,this.linesCount=e?this.height:this.width,this.lineLength=e?this.width:this.height,this.setupPass();let t=e?Math.floor(this.height/2):Math.floor(this.width/2),r=e?Math.floor(this.width/2):Math.floor(this.height/2);for(let e=0;e<this.linesCount;++e){this.line=e,this.lineBase=e*this.lineLength;for(let c=0;c<this.lineLength;++c){if(!(this.boardIsEmpty?e===t&&c===r:1===this.passAnchor[this.lineBase+c]))continue;this.anchorPos=c,this.anchorRightOpen=c+1>=this.lineLength||0===this.passFilled[this.lineBase+c+1];let i=0,l=this.rackTotal-1;for(let e=c-1;e>=0&&i<l;--e){let t=this.lineBase+e;if(1===this.passFilled[t]||!this.boardIsEmpty&&1===this.passAnchor[t])break;++i}this.limit=i,this.generateLeft(c,this.gaddag.rootRef)}}}setupPass(){let{lineLength:e,linesCount:t}=this;for(let r=0;r<t;++r){let t=r*e;for(let c=0;c<e;++c){let e=t+c,i=this.isHorizontal?e:c*this.width+r;this.passGlobal[e]=i,this.passFilled[e]=this.boardFilled[i],this.passLetter1[e]=this.boardLetter1[i],this.passLetter2[e]=this.boardLetter2[i],this.passScore[e]=this.boardScore[i],this.passAnchor[e]=this.anchor[i]}}this.computeCrossChecks()}computeCrossChecks(){let{gaddag:e,lineLength:t,linesCount:r}=this,c=[],i=[];for(let l=0;l<r;++l)for(let o=0;o<t;++o){let a=l*t+o;if(1===this.passFilled[a])continue;let s=l>0&&1===this.passFilled[a-t],u=l<r-1&&1===this.passFilled[a+t];if(!s&&!u){this.maskLo[a]=-1,this.maskHi[a]=-1,this.hasCross[a]=0;continue}let n=l;for(;n>0&&1===this.passFilled[(n-1)*t+o];)--n;let p=l;for(;p<r-1&&1===this.passFilled[(p+1)*t+o];)++p;let y=this.digraphs.length>0,h=y&&n<l?this.boardChar[this.passGlobal[a-t]]:"",R=y&&p>l?this.boardChar[this.passGlobal[a+t]]:"";c.length=0,i.length=0;let O=0,C=!0,A=!0,m="";for(let e=n;e<=p;++e){if(e===l)continue;let r=e*t+o;if(O+=this.passScore[r],y){let t=this.boardChar[this.passGlobal[r]];""!==m&&this.digraphs.includes(m+t)&&(A=!1),m=e===l-1?"":t}let a=e<l?c:i,s=this.passLetter1[r],u=this.passLetter2[r];(s<=0||u<0)&&(C=!1),a.push(s),0!==u&&a.push(u)}this.hasCross[a]=1,this.crossBase[a]=O;let _=0,S=0;if(C&&A){let t=e.rootRef;for(let r=i.length-1;r>=0&&0!==t;--r)t=e.getArc(t,i[r]);if(0!==t)for(let r=0;r<this.alphaSize;++r){let i=this.alphaLetter1[r],l=this.alphaLetter2[r];if(i<=0||l<0||y&&this.spellsDigraphWithNeighbor(r,h,R))continue;let o=t;if(0===l||0!==(o=e.getArc(o,l))){o=e.getArc(o,i);for(let t=c.length-1;t>=0&&0!==o;--t)o=e.getArc(o,c[t]);(1&o)==1&&(r<32?_|=1<<r:S|=1<<r-32)}}}this.maskLo[a]=_,this.maskHi[a]=S}}spellsDigraphWithNeighbor(e,t,r){let c=this.alphaChars[e];return""!==t&&this.digraphs.includes(t+c)||""!==r&&this.digraphs.includes(c+r)}isOpen(e){return e<0||e>=this.lineLength||0===this.passFilled[this.lineBase+e]}generateLeft(e,t){let{gaddag:r,lineBase:i}=this,l=e>=0,o=i+e;if(l&&1===this.passFilled[o]){let c=this.passLetter2[o],i=t;if(0!==c&&0===(i=c>0?r.getArc(i,c):0))return;let l=this.passLetter1[o];if(0===(i=l>0?r.getArc(i,l):0))return;this.recordLeftIfWord(i,e),this.generateLeft(e-1,i);return}let a=r.getArc(t,c.SEPARATOR);0!==a&&(this.leftMost=e+1,this.generateRight(this.anchorPos+1,a)),l&&(e===this.anchorPos||!(this.anchorPos-e>this.limit))&&this.placeAt(e,o,t,!0)}generateRight(e,t){let{gaddag:r,lineBase:c}=this,i=e<this.lineLength,l=c+e;if(i&&1===this.passFilled[l]){let c=this.passLetter1[l],i=c>0?r.getArc(t,c):0;if(0===i)return;let o=this.passLetter2[l];if(0!==o&&0===(i=o>0?r.getArc(i,o):0))return;(1&i)==1&&this.isOpen(e+1)&&this.record(this.leftMost,e),this.generateRight(e+1,i);return}i&&this.placeAt(e,l,t,!1)}placeAt(e,t,r,i){let l=r>>>1;if(0===l||this.placedCount>=this.rackTotal)return;let o=this.maskLo[t],a=this.maskHi[t];if(0===o&&0===a)return;let{gaddag:s}=this,u=s.arcLabels,n=s.arcTargets,p=i?this.leftAlphaStart:this.rightAlphaStart,y=i?this.leftAlphaList:this.rightAlphaList,h=i?this.alphaSecondLeft:this.alphaSecondRight,R=this.blanksLeft>0;for(;;){let t=u[l],r=t&c.LETTER_MASK;if(r!==c.SEPARATOR){let t=n[l],c=p[r+1];for(let l=p[r];l<c;++l){let r=y[l],c=this.rackCounts[r]>0;if(!c&&!R||!(r<32?(o&1<<r)!=0:(a&1<<r-32)!=0))continue;let u=h[r],n=0===u?t:s.getArc(t,u);0!==n&&(c&&(--this.rackCounts[r],this.pushPlacement(e,r,!1),this.afterPlacement(e,n,i),this.popPlacement(e),++this.rackCounts[r]),R&&(--this.blanksLeft,this.pushPlacement(e,r,!0),this.afterPlacement(e,n,i),this.popPlacement(e),++this.blanksLeft))}}if(t>=c.LAST_ARC_FLAG)return;++l}}pushPlacement(e,t,r){this.placedAt[e]=t,this.placedBlankAt[e]=+!!r,++this.placedCount}popPlacement(e){this.placedAt[e]=-1,--this.placedCount}afterPlacement(e,t,r){r?(this.recordLeftIfWord(t,e),this.generateLeft(e-1,t)):((1&t)==1&&this.isOpen(e+1)&&this.record(this.leftMost,e),this.generateRight(e+1,t))}recordLeftIfWord(e,t){(1&e)==1&&this.anchorRightOpen&&t<this.anchorPos&&this.isOpen(t-1)&&this.record(t,this.anchorPos)}record(e,t){let{lineBase:r}=this;if(this.digraphs.length>0&&this.hasInvalidDigraph(e,t))return;if(1===this.placedCount){let t=e;for(;1===this.passFilled[r+t];)++t;let c=128*this.passGlobal[r+t]+2*this.placedAt[t]+this.placedBlankAt[t];if(this.seenSingleTiles.has(c))return;this.seenSingleTiles.add(c)}let c=0,i=1,o=0,a=[],s=[];for(let l=e;l<=t;++l){let e=r+l;if(1===this.passFilled[e]){c+=this.passScore[e];continue}let t=this.passGlobal[e],u=this.placedAt[l],n=1===this.placedBlankAt[l],p=n?this.blankScore:this.alphaPoints[u],y=1,h=1,R=this.bonusType[t];if(1===R){let e=this.bonusReq[t];(-1===e||e===this.alphaPoints[u])&&(y=this.bonusMult[t])}else 2===R&&(h=this.bonusMult[t]);c+=p*y,i*=h,n&&s.push(a.length),a.push(this.alphaChars[u]),1===this.hasCross[e]&&(o+=(this.crossBase[e]+p*y)*h)}let u=c*i+o;if(this.placedCount===this.rackSize){let e=this.config.bingo;(0,l.isScoreBingo)(e)?u+=e.score:(0,l.isMultiplierBingo)(e)&&(u=c*i*e.multiplier+o)}let n="";for(let c=e;c<=t;++c)if(0===this.passFilled[r+c]){let e=this.placedAt[c],t=1===this.placedBlankAt[c];n+=String.fromCharCode(64*(t?this.blankRackIndex:this.alphaFirstRackIndex[e])+(t?e:0))}this.sortKeys.push(1048576*!this.isHorizontal|this.line<<15|e<<8|t),this.rankKeys.push(n),this.results.push({blankIndices:s,id:this.results.length,isHorizontal:this.isHorizontal,points:u,tiles:a,x:this.isHorizontal?e:this.line,y:this.isHorizontal?this.line:e})}hasInvalidDigraph(e,t){let r=this.characterAt(e);for(let c=e+1;c<=t;++c){let e=this.characterAt(c);if(this.digraphs.includes(r+e))return!0;r=e}return!1}characterAt(e){let t=this.lineBase+e;return 1===this.passFilled[t]?this.boardChar[this.passGlobal[t]]:this.alphaChars[this.placedAt[e]]}}t.MoveGenerator=o},5524:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.scrabbleDuel=void 0;let c=r(900);t.scrabbleDuel={bingo:{score:50},blankScore:0,blanksCount:2,boardHeight:11,boardWidth:11,game:r(9604).Game.ScrabbleDuel,name:"Scrabble Duel",rackSize:7,bonuses:[{multiplier:2,type:c.BONUS_WORD,x:5,y:5},{multiplier:3,type:c.BONUS_WORD,x:0,y:0},{multiplier:3,type:c.BONUS_WORD,x:10,y:0},{multiplier:3,type:c.BONUS_WORD,x:0,y:10},{multiplier:3,type:c.BONUS_WORD,x:10,y:10},{multiplier:2,type:c.BONUS_WORD,x:1,y:1},{multiplier:2,type:c.BONUS_WORD,x:2,y:2},{multiplier:2,type:c.BONUS_WORD,x:9,y:1},{multiplier:2,type:c.BONUS_WORD,x:8,y:2},{multiplier:2,type:c.BONUS_WORD,x:1,y:9},{multiplier:2,type:c.BONUS_WORD,x:2,y:8},{multiplier:2,type:c.BONUS_WORD,x:9,y:9},{multiplier:2,type:c.BONUS_WORD,x:8,y:8},{multiplier:3,type:c.BONUS_CHARACTER,x:3,y:3},{multiplier:3,type:c.BONUS_CHARACTER,x:3,y:7},{multiplier:3,type:c.BONUS_CHARACTER,x:7,y:3},{multiplier:3,type:c.BONUS_CHARACTER,x:7,y:7},{multiplier:2,type:c.BONUS_CHARACTER,x:4,y:10},{multiplier:2,type:c.BONUS_CHARACTER,x:5,y:9},{multiplier:2,type:c.BONUS_CHARACTER,x:6,y:10},{multiplier:2,type:c.BONUS_CHARACTER,x:10,y:4},{multiplier:2,type:c.BONUS_CHARACTER,x:9,y:5},{multiplier:2,type:c.BONUS_CHARACTER,x:10,y:6},{multiplier:2,type:c.BONUS_CHARACTER,x:4,y:0},{multiplier:2,type:c.BONUS_CHARACTER,x:5,y:1},{multiplier:2,type:c.BONUS_CHARACTER,x:6,y:0},{multiplier:2,type:c.BONUS_CHARACTER,x:0,y:4},{multiplier:2,type:c.BONUS_CHARACTER,x:1,y:5},{multiplier:2,type:c.BONUS_CHARACTER,x:0,y:6},{multiplier:2,type:c.BONUS_CHARACTER,x:4,y:4},{multiplier:2,type:c.BONUS_CHARACTER,x:6,y:4},{multiplier:2,type:c.BONUS_CHARACTER,x:4,y:6},{multiplier:2,type:c.BONUS_CHARACTER,x:6,y:6}]}},5644:function(e,t,r){"use strict";var c=this&&this.__createBinding||(Object.create?function(e,t,r,c){void 0===c&&(c=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,c,i)}:function(e,t,r,c){void 0===c&&(c=r),e[c]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||c(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(4073),t),i(r(1733),t),i(r(6114),t),i(r(4365),t),i(r(3054),t)},5796:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getCollision=function(e,t,r){let c=+!r,i=+!!r,l=e.x-c,o=e.y-i;for(;l>=0&&o>=0&&t.rows[o][l].isFilled();)l-=c,o-=i;l+=c,o+=i;let a=[];for(;o<t.rowsCount&&l<t.columnsCount;){if(l===e.x&&o===e.y)a.push(e);else{let e=t.rows[o][l];if(!e.isFilled())break;a.push(e.clone())}l+=c,o+=i}return a}},5807:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.transpose=function(e){let t=e.length,r=e[0].length,c=Array(r).fill(null).map(()=>Array(t));for(let i=0;i<t;++i)for(let t=0;t<r;++t)c[t][i]=e[i][t];return c}},6114:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getCollidingWords=function(e,t){let r="horizontal"===t.direction,i=r?"vertical":"horizontal",l=[],{x:o,y:a}=t;for(;o<e.columnsCount&&a<e.rowsCount&&!e.rows[a][o].isEmpty;){let t=(0,c.getWordThrough)(e,o,a,i);t&&l.push(t),o+=+!!r,a+=+!r}return l};let c=r(7033)},6338:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Config=void 0;let c=r(900),i=r(7962),l=r(9495);class o{constructor(e){this.bonuses=a(e),this.config=e,this.pointsMap=u(this.config)}get alphabet(){return s(this.config)}get bingo(){return this.config.bingo}get blankScore(){return this.config.blankScore}get blanksCount(){return this.config.blanksCount}get boardHeight(){return this.config.boardHeight}get boardWidth(){return this.config.boardWidth}get game(){return this.config.game}get locale(){return this.config.locale}get twoCharacterTiles(){return this.config.tiles.filter(e=>2===e.character.length).map(e=>e.character)}getCellBonus(e){return this.bonuses.find(t=>t.matchesCellCoordinates(e))}getCellBonusValue(e){return this.getCellBonus(e)?.value||c.NO_BONUS}getCharacterPoints(e){if(null!==e)return e===c.BLANK?this.blankScore:this.pointsMap[e]}getTwoCharacterTileByPrefix(e){if(1===e.length)return this.twoCharacterTiles.find(t=>t.startsWith(e.toLocaleLowerCase()))}getTilePoints(e){if(null!==e)return e.isBlank?this.blankScore:this.getCharacterPoints(e.character)}hasCharacter(e){return e in this.pointsMap}isTwoCharacterTilePrefix(e){return void 0!==this.getTwoCharacterTileByPrefix(e)}get rackSize(){return this.config.rackSize}get supportsRemainingTiles(){return this.tiles.every(e=>"number"==typeof e.count)}get tiles(){return this.config.tiles}toJson(){return this.config}}t.Config=o,o.fromJson=e=>new o(e);let a=e=>e.bonuses.map(e=>{if(e.type===c.BONUS_CHARACTER)return new i.CharacterBonus(e);if(e.type===c.BONUS_WORD)return new l.WordBonus(e);throw Error(`Unsupported Bonus type: "${e.type}"`)}),s=e=>e.tiles.map(({character:e})=>e),u=e=>e.tiles.reduce((e,{character:t,score:r})=>({...e,[t]:r}),{})},6552:function(e,t,r){"use strict";var c,i=this&&this.__createBinding||(Object.create?function(e,t,r,c){void 0===c&&(c=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,c,i)}:function(e,t,r,c){void 0===c&&(c=r),e[c]=t[r]}),l=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),o=this&&this.__importStar||(c=function(e){return(c=Object.getOwnPropertyNames||function(e){var t=[];for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[t.length]=r);return t})(e)},function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r=c(e),o=0;o<r.length;o++)"default"!==r[o]&&i(t,e,r[o]);return l(t,e),t});Object.defineProperty(t,"__esModule",{value:!0}),t.hasConfig=void 0;let a=o(r(930));t.hasConfig=(e,t)=>Object.values(a).some(r=>r.game===e&&r.locale===t)},6706:function(e,t,r){"use strict";var c=this&&this.__createBinding||(Object.create?function(e,t,r,c){void 0===c&&(c=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,c,i)}:function(e,t,r,c){void 0===c&&(c=r),e[c]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||c(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(4088),t),i(r(4197),t),i(r(4467),t),i(r(7627),t),i(r(1898),t),i(r(5524),t),i(r(4053),t),i(r(3090),t),i(r(3158),t)},7033:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getWordThrough=function(e,t,r,i){let l=+("horizontal"===i),o=+("horizontal"!==i),a=t,s=r;for(;a-l>=0&&s-o>=0&&!e.rows[s-o][a-l].isEmpty;)a-=l,s-=o;let u=[],n=a,p=s;for(;n<e.columnsCount&&p<e.rowsCount&&!e.rows[p][n].isEmpty;)u.push(e.rows[p][n]),n+=l,p+=o;return u.length>1?(0,c.toBoardWord)(u,i):void 0};let c=r(1027)},7076:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Tile=void 0;let c=r(900);class i{constructor({character:e,isBlank:t=!1}){this.character=e,this.isBlank=t}clone(){return new i({character:this.character,isBlank:this.isBlank})}equals(e){return this.character===e.character&&this.isBlank===e.isBlank}toJson(){return{character:this.character,isBlank:this.isBlank}}toString(){return this.character}}t.Tile=i,i.fromJson=e=>e?new i({character:e.character,isBlank:e.isBlank}):i.Null,i.Null=Object.freeze({character:c.EMPTY_CELL,isBlank:!1,clone:()=>i.Null,equals:e=>e===i.Null,toJson:()=>null,toString:()=>c.EMPTY_CELL})},7154:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isTileJson=t.isScoreBingo=t.isObject=t.isMultiplierBingo=t.isLocale=t.isGame=t.isError=t.isCellJson=t.isBoardJson=t.isBingo=void 0;var c=r(3669);Object.defineProperty(t,"isBingo",{enumerable:!0,get:function(){return c.isBingo}});var i=r(2856);Object.defineProperty(t,"isBoardJson",{enumerable:!0,get:function(){return i.isBoardJson}});var l=r(4260);Object.defineProperty(t,"isCellJson",{enumerable:!0,get:function(){return l.isCellJson}});var o=r(988);Object.defineProperty(t,"isError",{enumerable:!0,get:function(){return o.isError}});var a=r(2024);Object.defineProperty(t,"isGame",{enumerable:!0,get:function(){return a.isGame}});var s=r(7792);Object.defineProperty(t,"isLocale",{enumerable:!0,get:function(){return s.isLocale}});var u=r(7384);Object.defineProperty(t,"isMultiplierBingo",{enumerable:!0,get:function(){return u.isMultiplierBingo}});var n=r(7197);Object.defineProperty(t,"isObject",{enumerable:!0,get:function(){return n.isObject}});var p=r(8763);Object.defineProperty(t,"isScoreBingo",{enumerable:!0,get:function(){return p.isScoreBingo}});var y=r(4684);Object.defineProperty(t,"isTileJson",{enumerable:!0,get:function(){return y.isTileJson}})},7197:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isObject=void 0,t.isObject=e=>"object"==typeof e&&null!==e},7384:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isMultiplierBingo=void 0;let c=r(7197);t.isMultiplierBingo=e=>(0,c.isObject)(e)&&"multiplier"in e&&"number"==typeof e.multiplier},7627:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.literaki=void 0;let c=r(900);t.literaki={bingo:{score:50},blankScore:0,blanksCount:2,boardHeight:15,boardWidth:15,game:r(9604).Game.Literaki,name:"Literaki",rackSize:7,bonuses:[{multiplier:3,score:5,type:c.BONUS_CHARACTER,x:0,y:0},{multiplier:3,type:c.BONUS_WORD,x:2,y:0},{multiplier:3,score:2,type:c.BONUS_CHARACTER,x:5,y:0},{multiplier:3,score:5,type:c.BONUS_CHARACTER,x:7,y:0},{multiplier:3,score:2,type:c.BONUS_CHARACTER,x:9,y:0},{multiplier:3,type:c.BONUS_WORD,x:12,y:0},{multiplier:3,score:5,type:c.BONUS_CHARACTER,x:14,y:0},{multiplier:3,score:2,type:c.BONUS_CHARACTER,x:4,y:1},{multiplier:3,score:5,type:c.BONUS_CHARACTER,x:6,y:1},{multiplier:3,score:5,type:c.BONUS_CHARACTER,x:8,y:1},{multiplier:3,score:2,type:c.BONUS_CHARACTER,x:10,y:1},{multiplier:3,type:c.BONUS_WORD,x:0,y:2},{multiplier:3,score:2,type:c.BONUS_CHARACTER,x:3,y:2},{multiplier:2,type:c.BONUS_WORD,x:5,y:2},{multiplier:3,score:1,type:c.BONUS_CHARACTER,x:7,y:2},{multiplier:2,type:c.BONUS_WORD,x:9,y:2},{multiplier:3,score:2,type:c.BONUS_CHARACTER,x:11,y:2},{multiplier:3,type:c.BONUS_WORD,x:14,y:2},{multiplier:3,score:2,type:c.BONUS_CHARACTER,x:2,y:3},{multiplier:2,type:c.BONUS_WORD,x:4,y:3},{multiplier:3,score:1,type:c.BONUS_CHARACTER,x:6,y:3},{multiplier:3,score:1,type:c.BONUS_CHARACTER,x:8,y:3},{multiplier:2,type:c.BONUS_WORD,x:10,y:3},{multiplier:3,score:2,type:c.BONUS_CHARACTER,x:12,y:3},{multiplier:3,score:2,type:c.BONUS_CHARACTER,x:1,y:4},{multiplier:2,type:c.BONUS_WORD,x:3,y:4},{multiplier:3,score:1,type:c.BONUS_CHARACTER,x:5,y:4},{multiplier:3,score:1,type:c.BONUS_CHARACTER,x:9,y:4},{multiplier:2,type:c.BONUS_WORD,x:11,y:4},{multiplier:3,score:2,type:c.BONUS_CHARACTER,x:13,y:4},{multiplier:3,score:2,type:c.BONUS_CHARACTER,x:0,y:5},{multiplier:2,type:c.BONUS_WORD,x:2,y:5},{multiplier:3,score:1,type:c.BONUS_CHARACTER,x:4,y:5},{multiplier:3,score:3,type:c.BONUS_CHARACTER,x:7,y:5},{multiplier:3,score:1,type:c.BONUS_CHARACTER,x:10,y:5},{multiplier:2,type:c.BONUS_WORD,x:12,y:5},{multiplier:3,score:2,type:c.BONUS_CHARACTER,x:14,y:5},{multiplier:3,score:5,type:c.BONUS_CHARACTER,x:1,y:6},{multiplier:3,score:1,type:c.BONUS_CHARACTER,x:3,y:6},{multiplier:3,score:3,type:c.BONUS_CHARACTER,x:6,y:6},{multiplier:3,score:3,type:c.BONUS_CHARACTER,x:8,y:6},{multiplier:3,score:1,type:c.BONUS_CHARACTER,x:11,y:6},{multiplier:3,score:5,type:c.BONUS_CHARACTER,x:13,y:6},{multiplier:3,score:5,type:c.BONUS_CHARACTER,x:0,y:7},{multiplier:3,score:1,type:c.BONUS_CHARACTER,x:2,y:7},{multiplier:3,score:3,type:c.BONUS_CHARACTER,x:5,y:7},{multiplier:3,score:5,type:c.BONUS_CHARACTER,x:7,y:7},{multiplier:3,score:3,type:c.BONUS_CHARACTER,x:9,y:7},{multiplier:3,score:1,type:c.BONUS_CHARACTER,x:12,y:7},{multiplier:3,score:5,type:c.BONUS_CHARACTER,x:14,y:7},{multiplier:3,score:5,type:c.BONUS_CHARACTER,x:1,y:8},{multiplier:3,score:1,type:c.BONUS_CHARACTER,x:3,y:8},{multiplier:3,score:3,type:c.BONUS_CHARACTER,x:6,y:8},{multiplier:3,score:3,type:c.BONUS_CHARACTER,x:8,y:8},{multiplier:3,score:1,type:c.BONUS_CHARACTER,x:11,y:8},{multiplier:3,score:5,type:c.BONUS_CHARACTER,x:13,y:8},{multiplier:3,score:2,type:c.BONUS_CHARACTER,x:0,y:9},{multiplier:2,type:c.BONUS_WORD,x:2,y:9},{multiplier:3,score:1,type:c.BONUS_CHARACTER,x:4,y:9},{multiplier:3,score:3,type:c.BONUS_CHARACTER,x:7,y:9},{multiplier:3,score:1,type:c.BONUS_CHARACTER,x:10,y:9},{multiplier:2,type:c.BONUS_WORD,x:12,y:9},{multiplier:3,score:2,type:c.BONUS_CHARACTER,x:14,y:9},{multiplier:3,score:2,type:c.BONUS_CHARACTER,x:1,y:10},{multiplier:2,type:c.BONUS_WORD,x:3,y:10},{multiplier:3,score:1,type:c.BONUS_CHARACTER,x:5,y:10},{multiplier:3,score:1,type:c.BONUS_CHARACTER,x:9,y:10},{multiplier:2,type:c.BONUS_WORD,x:11,y:10},{multiplier:3,score:2,type:c.BONUS_CHARACTER,x:13,y:10},{multiplier:3,score:2,type:c.BONUS_CHARACTER,x:2,y:11},{multiplier:2,type:c.BONUS_WORD,x:4,y:11},{multiplier:3,score:1,type:c.BONUS_CHARACTER,x:6,y:11},{multiplier:3,score:1,type:c.BONUS_CHARACTER,x:8,y:11},{multiplier:2,type:c.BONUS_WORD,x:10,y:11},{multiplier:3,score:2,type:c.BONUS_CHARACTER,x:12,y:11},{multiplier:3,type:c.BONUS_WORD,x:0,y:12},{multiplier:3,score:2,type:c.BONUS_CHARACTER,x:3,y:12},{multiplier:2,type:c.BONUS_WORD,x:5,y:12},{multiplier:3,score:1,type:c.BONUS_CHARACTER,x:7,y:12},{multiplier:2,type:c.BONUS_WORD,x:9,y:12},{multiplier:3,score:2,type:c.BONUS_CHARACTER,x:11,y:12},{multiplier:3,type:c.BONUS_WORD,x:14,y:12},{multiplier:3,score:2,type:c.BONUS_CHARACTER,x:4,y:13},{multiplier:3,score:5,type:c.BONUS_CHARACTER,x:6,y:13},{multiplier:3,score:5,type:c.BONUS_CHARACTER,x:8,y:13},{multiplier:3,score:2,type:c.BONUS_CHARACTER,x:10,y:13},{multiplier:3,score:5,type:c.BONUS_CHARACTER,x:0,y:14},{multiplier:3,type:c.BONUS_WORD,x:2,y:14},{multiplier:3,score:2,type:c.BONUS_CHARACTER,x:5,y:14},{multiplier:3,score:5,type:c.BONUS_CHARACTER,x:7,y:14},{multiplier:3,score:2,type:c.BONUS_CHARACTER,x:9,y:14},{multiplier:3,type:c.BONUS_WORD,x:12,y:14},{multiplier:3,score:5,type:c.BONUS_CHARACTER,x:14,y:14}]}},7792:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isLocale=void 0;let c=Object.values(r(4554).Locale);t.isLocale=e=>c.includes(e)},7897:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getPlacedCell=function(e,t,r,l){let o=e.tiles[t],a=e.blankIndices.includes(t);return new c.Cell({isEmpty:!0,tile:new i.Tile({character:o,isBlank:a}),x:r,y:l})};let c=r(4704),i=r(7076)},7962:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CharacterBonus=void 0;let c=r(900),i=r(2131);class l extends i.Bonus{constructor(){super(...arguments),this.type=c.BONUS_CHARACTER}canApply(e,t){return super.canApply(e,t)&&this.matchesCellTileScore(e,t)}matchesCellTileScore(e,t){return void 0===this.score||this.score===e.pointsMap[t.tile.character]}get value(){return{characterMultiplier:this.multiplier,wordMultiplier:1}}}t.CharacterBonus=l},8763:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isScoreBingo=void 0;let c=r(7197);t.isScoreBingo=e=>(0,c.isObject)(e)&&"score"in e&&"number"==typeof e.score},9256:(e,t,r)=>{"use strict";var c=r(1790),i=r(900),l=r(232),o=r(9604);let a="dictionary-api-cache",s="dictionary-revalidated-at",u=new(r(6583)).A(a,{maxAgeSeconds:2592e3}),n=e=>`/api/dictionary/${e}`,p={};async function y(e){let t=p[e];if(void 0!==t)return t;let r=await O(e);return p[e]??=r}async function h(e,t){p[e]=t;let r=await caches.open(s);await r.put(n(e),new Response(String(t)))}async function R(e){p[e]=0;let t=await caches.open(s);await t.delete(n(e))}async function O(e){let t=await caches.open(s),r=await t.match(n(e)),c=Number(await r?.text());return Number.isFinite(c)?c:0}let C={},A=new Set;function m(e){let t=C[e];if(t)return t;let r=S(e).finally(()=>{C[e]=void 0});return C[e]=r,r}async function _(e){A.add(e),await R(e)}async function S(e){!(Date.now()-await y(e)<36e5)&&(A.delete(e),await B(e),A.has(e)||await h(e,Date.now()))}async function B(e){await u.expireEntries();let t=n(e),r=await caches.open(a),c=await r.match(t),i=c?.headers.get("etag"),l=await fetch(t,{cache:"no-cache",headers:i?{"If-None-Match":i}:{}});if(304===l.status)return void await u.updateTimestamp(t);if(!l.ok)throw Error(`HTTP ${l.status}: ${l.statusText}`);await r.put(t,l),await u.updateTimestamp(t)}var x=r(1182);async function N(e){return(await caches.open(a)).match(n(e))}async function U(e){let t=await caches.open(a);await t.delete(n(e)),await _(e)}let d={};async function f(e){let t=await N(e);if(void 0===t)return;let r=function(e){let t=e.headers.get("etag");if(null!==t)return t;let r=["date","content-length"].map(t=>e.headers.get(t)??"");return r.every(e=>""===e)?void 0:r.join("|")}(t),c=d[e];if(c&&c.version===r)return c.gaddag;try{let c=x.JG.deserialize(new Uint8Array(await t.arrayBuffer()));return void 0!==r&&(d[e]={gaddag:c,version:r}),c}catch{delete d[e],await U(e);return}}let E=0;async function T(e,t){let{board:r,characters:a,game:s,locale:u}=t,n=await f(u);if(H(u),!n)return{id:e,outcome:"unavailable"};if(await new Promise(e=>{let{port1:t,port2:r}=new MessageChannel;t.onmessage=()=>e(),r.postMessage(null)}),E!==e)return{id:e,outcome:"superseded"};let p=(0,c.getConfig)(s,u),y=a.map(e=>new o.Tile({character:e,isBlank:e===i.BLANK}));return{data:(0,l.k)(n,p,o.Board.fromJson(r),y),id:e,outcome:"answered"}}async function b(e,t){let{board:r,locale:c}=t,i=await f(c);if(H(c),!i)return{id:e,outcome:"unavailable"};let l=o.Board.fromJson(r).getWords().sort((e,t)=>e.word.localeCompare(t.word,c)),a=[],s=[];for(let e of l)i.has(e.word)?s.push({...e,isValid:!0}):a.push({...e,isValid:!1});return{data:{invalidWords:a,validWords:s},id:e,outcome:"answered"}}async function g(e){try{await m(e)}catch{}await f(e)}function H(e){m(e).catch(()=>void 0)}async function W(e,t){try{self.postMessage(await t())}catch{self.postMessage({id:e,outcome:"unavailable"})}}self.addEventListener("message",e=>{let{data:t}=e;"solve"===t.type?(E=t.id,W(t.id,()=>T(t.id,t.payload))):"verify"===t.type?W(t.id,()=>b(t.id,t.payload)):"prefetch"===t.type&&g(t.locale).catch(()=>void 0)})},9459:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getWordsInRows=function(e,t){let r=[];for(let i of e){let e=[];for(let l of i)l.isEmpty?e.length>0&&(e.length>1&&r.push((0,c.toBoardWord)(e,t)),e=[]):e.push(l);e.length>1&&r.push((0,c.toBoardWord)(e,t))}return r};let c=r(1027)},9480:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.germanScrabble=void 0;let c=r(9604),i=r(6706);t.germanScrabble=new c.Config({...i.scrabble,locale:c.Locale.DE_DE,tiles:[{character:"a",count:5,score:1},{character:"\xe4",count:1,score:6},{character:"b",count:2,score:3},{character:"c",count:2,score:4},{character:"d",count:4,score:1},{character:"e",count:15,score:1},{character:"f",count:2,score:4},{character:"g",count:3,score:2},{character:"h",count:4,score:2},{character:"i",count:6,score:1},{character:"j",count:1,score:6},{character:"k",count:2,score:4},{character:"l",count:3,score:2},{character:"m",count:4,score:3},{character:"n",count:9,score:1},{character:"o",count:3,score:2},{character:"\xf6",count:1,score:8},{character:"p",count:1,score:4},{character:"q",count:1,score:10},{character:"r",count:6,score:1},{character:"s",count:7,score:1},{character:"t",count:6,score:1},{character:"u",count:6,score:1},{character:"\xfc",count:1,score:6},{character:"v",count:1,score:6},{character:"w",count:1,score:3},{character:"x",count:1,score:8},{character:"y",count:1,score:10},{character:"z",count:1,score:3}]})},9495:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WordBonus=void 0;let c=r(900),i=r(2131);class l extends i.Bonus{constructor(){super(...arguments),this.type=c.BONUS_WORD}get value(){return{characterMultiplier:1,wordMultiplier:this.multiplier}}}t.WordBonus=l},9604:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WordDefinition=t.WordBonus=t.isTileJson=t.isScoreBingo=t.isObject=t.isMultiplierBingo=t.isLocale=t.isGame=t.isError=t.isCellJson=t.isBoardJson=t.isBingo=t.Tile=t.Result=t.Locale=t.isSameBoardWord=t.Game=t.Config=t.CharacterBonus=t.Cell=t.Bonus=t.Board=void 0;var c=r(4880);Object.defineProperty(t,"Board",{enumerable:!0,get:function(){return c.Board}});var i=r(2131);Object.defineProperty(t,"Bonus",{enumerable:!0,get:function(){return i.Bonus}});var l=r(4704);Object.defineProperty(t,"Cell",{enumerable:!0,get:function(){return l.Cell}});var o=r(7962);Object.defineProperty(t,"CharacterBonus",{enumerable:!0,get:function(){return o.CharacterBonus}});var a=r(6338);Object.defineProperty(t,"Config",{enumerable:!0,get:function(){return a.Config}});var s=r(5350);Object.defineProperty(t,"Game",{enumerable:!0,get:function(){return s.Game}});var u=r(5644);Object.defineProperty(t,"isSameBoardWord",{enumerable:!0,get:function(){return u.isSameBoardWord}});var n=r(4554);Object.defineProperty(t,"Locale",{enumerable:!0,get:function(){return n.Locale}});var p=r(9769);Object.defineProperty(t,"Result",{enumerable:!0,get:function(){return p.Result}});var y=r(7076);Object.defineProperty(t,"Tile",{enumerable:!0,get:function(){return y.Tile}});var h=r(7154);Object.defineProperty(t,"isBingo",{enumerable:!0,get:function(){return h.isBingo}}),Object.defineProperty(t,"isBoardJson",{enumerable:!0,get:function(){return h.isBoardJson}}),Object.defineProperty(t,"isCellJson",{enumerable:!0,get:function(){return h.isCellJson}}),Object.defineProperty(t,"isError",{enumerable:!0,get:function(){return h.isError}}),Object.defineProperty(t,"isGame",{enumerable:!0,get:function(){return h.isGame}}),Object.defineProperty(t,"isLocale",{enumerable:!0,get:function(){return h.isLocale}}),Object.defineProperty(t,"isMultiplierBingo",{enumerable:!0,get:function(){return h.isMultiplierBingo}}),Object.defineProperty(t,"isObject",{enumerable:!0,get:function(){return h.isObject}}),Object.defineProperty(t,"isScoreBingo",{enumerable:!0,get:function(){return h.isScoreBingo}}),Object.defineProperty(t,"isTileJson",{enumerable:!0,get:function(){return h.isTileJson}});var R=r(9495);Object.defineProperty(t,"WordBonus",{enumerable:!0,get:function(){return R.WordBonus}});var O=r(1821);Object.defineProperty(t,"WordDefinition",{enumerable:!0,get:function(){return O.WordDefinition}})},9653:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.persianScrabble=void 0;let c=r(9604),i=r(6706);t.persianScrabble=new c.Config({...i.scrabble,locale:c.Locale.FA_IR,tiles:[{character:"ا",count:12,score:1},{character:"ب",count:4,score:1},{character:"پ",count:1,score:6},{character:"ت",count:4,score:1},{character:"ث",count:1,score:10},{character:"ج",count:2,score:5},{character:"چ",count:1,score:6},{character:"ح",count:1,score:6},{character:"خ",count:2,score:5},{character:"د",count:6,score:1},{character:"ذ",count:1,score:10},{character:"ر",count:7,score:1},{character:"ز",count:3,score:4},{character:"ژ",count:1,score:10},{character:"س",count:3,score:2},{character:"ش",count:3,score:3},{character:"ص",count:1,score:6},{character:"ض",count:1,score:8},{character:"ط",count:1,score:8},{character:"ظ",count:1,score:10},{character:"ع",count:2,score:5},{character:"غ",count:1,score:8},{character:"ف",count:2,score:4},{character:"ق",count:2,score:5},{character:"ک",count:3,score:3},{character:"گ",count:2,score:4},{character:"ل",count:3,score:2},{character:"م",count:5,score:1},{character:"ن",count:6,score:1},{character:"و",count:5,score:1},{character:"ه",count:5,score:1},{character:"ی",count:8,score:1}]})},9769:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Result=void 0;let c=r(900),i=r(5644);class l{constructor({cells:e,id:t,collisions:r,points:c}){let i=n(e);this.blanksCount=o(i).length,this.cells=e,this.collisions=r,this.consonantsCount=a(i).length,this.id=t,this.length=e.length,this.points=c,this.pointsRatio=u(i,c),this.tiles=i,this.tilesCount=i.length,this.vowelsCount=s(i).length,this.word=p(e),this.words=y(e,r),this.wordsCount=1+this.collisions.length}toJson(){let e=this.cells.filter(e=>e.isEmpty);return{blankIndices:e.flatMap((e,t)=>e.tile.isBlank?[t]:[]),id:this.id,isHorizontal:this.isHorizontal(),points:this.points,tiles:e.map(e=>e.tile.character),x:this.cells[0].x,y:this.cells[0].y}}isHorizontal(){return this.cells[0].y===this.cells[1].y}isVertical(){return this.cells[0].x===this.cells[1].x}}t.Result=l,l.fromJson=(e,t)=>{let r=(0,i.getCells)(t,e);return new l({cells:r,collisions:(0,i.getCollisions)(t,r,e.isHorizontal),id:e.id,points:e.points})};let o=e=>e.filter(({isBlank:e})=>e),a=e=>e.filter(h),s=e=>e.filter(R),u=(e,t)=>t/e.length,n=e=>e.filter(({isEmpty:e})=>e).map(({tile:e})=>e),p=e=>e.reduce((e,t)=>e+t.toString(),""),y=(e,t)=>[e,...t].map(p),h=({character:e,isBlank:t})=>c.CONSONANTS.includes(e)&&!t,R=({character:e,isBlank:t})=>c.VOWELS.includes(e)&&!t}},a={};function s(e){var t=a[e];if(void 0!==t)return t.exports;var r=a[e]={exports:{}},c=!0;try{o[e].call(r.exports,r,r.exports,s),c=!1}finally{c&&delete a[e]}return r.exports}s.m=o,s.x=()=>{var e=s.O(void 0,[827],()=>s(9256));return s.O(e)},e=[],s.O=(t,r,c,i)=>{if(r){i=i||0;for(var l=e.length;l>0&&e[l-1][2]>i;l--)e[l]=e[l-1];e[l]=[r,c,i];return}for(var o=1/0,l=0;l<e.length;l++){for(var[r,c,i]=e[l],a=!0,u=0;u<r.length;u++)(!1&i||o>=i)&&Object.keys(s.O).every(e=>s.O[e](r[u]))?r.splice(u--,1):(a=!1,i<o&&(o=i));if(a){e.splice(l--,1);var n=c();void 0!==n&&(t=n)}}return t},s.d=(e,t)=>{for(var r in t)s.o(t,r)&&!s.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},s.f={},s.e=e=>Promise.all(Object.keys(s.f).reduce((t,r)=>(s.f[r](e,t),t),[])),s.u=e=>"static/chunks/"+e+".d01b6d69af340ba4.js",s.miniCssF=e=>{},s.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),s.tt=()=>(void 0===t&&(t={createScriptURL:e=>e},"u">typeof trustedTypes&&trustedTypes.createPolicy&&(t=trustedTypes.createPolicy("nextjs#bundler",t))),t),s.tu=e=>s.tt().createScriptURL(e),s.p="/_next/",r={256:1},s.f.i=(e,t)=>{r[e]||importScripts(s.tu(s.p+s.u(e)))},i=(c=self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push.bind(c),c.push=e=>{var[t,c,l]=e;for(var o in c)s.o(c,o)&&(s.m[o]=c[o]);for(l&&l(s);t.length;)r[t.pop()]=1;i(e)},l=s.x,s.x=()=>s.e(827).then(l),_N_E=s.x()})();
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[277],{2134:e=>{e.exports={modal:"Modal_modal__l4yBn",closeButton:"Modal_closeButton__Foob_",afterOpen:"Modal_afterOpen__yCc_m",container:"Modal_container__T5Dvn",beforeClose:"Modal_beforeClose__Q_ZUS",overlay:"Modal_overlay__nbJY5",header:"Modal_header__8HSvT",title:"Modal_title__oD_ne",content:"Modal_content__Fchkl",footer:"Modal_footer__Pw_CF"}},7136:(e,a,o)=>{"use strict";o.d(a,{a:()=>x});var n,t=o(6029),l=o(2988),s=o.n(l),c=o(5729),r=o(6341),i=o.n(r);function d(){return(d=Object.assign?Object.assign.bind():function(e){for(var a=1;a<arguments.length;a++){var o=arguments[a];for(var n in o)({}).hasOwnProperty.call(o,n)&&(e[n]=o[n])}return e}).apply(null,arguments)}let _=e=>c.createElement("svg",d({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16"},e),n||(n=c.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-2zm3.354 4.646L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 1 1 .708-.708"})));var m=o(5227),u=o(7809),h=o(8298),p=o(8713),v=o.n(p),f=o(2134),y=o.n(f);"u">typeof document&&i().setAppElement("#__next");let x=Object.assign(e=>{let{children:a,className:o,footer:n,isOpen:l,modalClassName:r,title:d,onClose:p}=e,v=(0,u.W)(),[f,x]=(0,c.useState)(!0),b=(0,c.useCallback)(e=>{"Escape"===e.key&&(x(!1),setTimeout(()=>{p()},0))},[p]);return(0,c.useEffect)(()=>(document.addEventListener("keydown",b),()=>{document.removeEventListener("keydown",b)}),[b]),(0,c.useEffect)(()=>{l&&x(!0)},[l]),(0,t.jsx)(i(),{aria:{modal:!0},className:{afterOpen:y().afterOpen,base:s()(y().modal,r),beforeClose:y().beforeClose},closeTimeoutMS:m.oK,contentLabel:d,isOpen:l,overlayClassName:y().overlay,role:"dialog",shouldReturnFocusAfterClose:f,onRequestClose:p,children:(0,t.jsxs)("div",{className:s()(y().container,o),children:[(0,t.jsxs)("div",{className:y().header,children:[(0,t.jsx)("h1",{className:y().title,children:d}),(0,t.jsx)(h.K,{"aria-label":v("common.close"),className:y().closeButton,Icon:_,tooltip:v("common.close"),onClick:p})]}),(0,t.jsx)("div",{className:y().content,children:a}),n&&(0,t.jsx)("div",{className:y().footer,children:n})]})})},{Section:e=>{let{children:a,className:o,label:n,title:l}=e;return(0,t.jsxs)("section",{"aria-label":n,className:s()(v().section,o),children:[(0,t.jsx)("h2",{className:v().heading,children:l}),(0,t.jsx)("div",{children:a})]})}})},8072:e=>{e.exports={content:"DictionaryModal_content___jXD2",dictionary:"DictionaryModal_dictionary__Eu9Sx",dictionaryInput:"DictionaryModal_dictionaryInput__CKiX5"}},8277:(e,a,o)=>{"use strict";o.r(a),o.d(a,{DictionaryModal:()=>_});var n=o(6029),t=o(5729),l=o(4056),s=o(6474),c=o(7136),r=o(7809),i=o(8072),d=o.n(i);let _=(0,t.memo)(e=>{let{className:a,isOpen:o,onClose:t}=e,i=(0,r.W)();return(0,n.jsx)(c.a,{className:a,isOpen:o,title:i("dictionary"),onClose:t,children:(0,n.jsxs)("div",{className:d().content,children:[(0,n.jsx)(l.b,{className:d().dictionary}),(0,n.jsx)(s.$,{className:d().dictionaryInput})]})})})},8713:e=>{e.exports={section:"Section_section__6Eczy",heading:"Section_heading__5Vnag"}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[307],{307:e=>{e.exports=JSON.parse('{"cell.enter-word":"Ingresar palabra","cell.filter-cell.exclude":"Excluir destino","cell.filter-cell.include":"Destino objetivo","cell.set-blank":"Marcar como en blanco","cell.set-not-blank":"Marcar como no en blanco","cell.tile.location":"Tablero: espacio {{coordinates}}","cell.toggle-direction":"Direcci\xf3n de escritura","common.arrows":"Teclas de flecha","common.blanks":"Blancos","common.clear":"Borrar","common.close":"Cerrar","common.consonants":"Consonantes","common.loading":"Cargando","common.next":"Siguiente","common.off":"Desactivado","common.on":"Activado","common.points":"Puntos","common.previous":"Anterior","common.space":"Barra espaciadora","common.tiles":"Longitud","common.two-letter-tiles":"Dos letras","common.vowels":"Vocales","common.word":"Palabra","common.words":"Palabras","dictionary.empty-state.no-definitions":"La palabra existe en el diccionario pero no tiene una definici\xf3n.","dictionary.empty-state.no-results":"No se puede encontrar la definici\xf3n de palabra en el diccionario.","dictionary.empty-state.not-allowed":"Esta palabra no es aceptable.","dictionary.empty-state.uninitialized":"Aqu\xed se mostrar\xe1 la definici\xf3n del diccionario.","dictionary.input.placeholder":"Busca el diccionario…","dictionary.input.title":"Palabras separadas por comas","dictionary":"Diccionario","empty-state.error":"Error","empty-state.info":"Info","empty-state.success":"S\xed!","empty-state.warning":"Vaya!","github":"Ver este proyecto en GitHub","keyMap.board-and-rack.insert-two-letter-tile":"Insertar mosaico de dos letras","keyMap.board-and-rack.navigate":"Navegar","keyMap.board-and-rack.remove-tile":"Quitar Letra","keyMap.board-and-rack.submit":"Resolver","keyMap.board-and-rack":"Tablero y estante","keyMap.board.toggle-blank":"Marcar / desmarcar un espacio en blanco","keyMap.board.toggle-cell-filter":"Alternar filtro de destino","keyMap.board.toggle-direction":"Alternar direcci\xf3n de escritura","keyMap.board":"Tablero","keyMap.rack.insert-blank":"Insertar espacio en blanco","keyMap.rack":"Estante","keyMap":"Atajos de teclado","menu":"Men\xfa","rack.placeholder":"Letras…","rack.tile.location":"Estante: espacio ({{index}})","rack.touchscreen.placeholder":"Letras… (p.ej. LLabcCHhRR)","remaining-tiles":"Casillas restantes","results.empty-state.no-results":"No hay resultados; no se pueden generar palabras","results.empty-state.outdated":"Los resultados est\xe1n desactualizados.","results.empty-state.uninitialized":"Aqu\xed se mostrar\xe1n las palabras generadas a partir de sus letras.","results.input.placeholder":"Busque una soluci\xf3n... (RegExp)","results.insert":"Insertar","results.preview":"Vista previa","results.select":"Seleccionar...","results.solve":"Resolver","results":"Resultados","settings.autoGroupTiles.left":"A la izquierda","settings.autoGroupTiles.null":"No agrupar","settings.autoGroupTiles.right":"A la derecha","settings.autoGroupTiles":"Agrupar casillas restantes","settings.game":"Juego","settings.highlightUnreachableCells":"Resaltar casillas inalcanzables","settings.inputMode.keyboard":"Teclado","settings.inputMode.touchscreen":"Pantalla t\xe1ctil","settings.inputMode":"Modo de entrada","settings.language":"Idioma","settings.removeCellFilters.always":"Siempre","settings.removeCellFilters.never":"Nunca","settings.removeCellFilters":"Eliminar autom\xe1ticamente los filtros del tablero","settings.showCoordinates.alternative":"Alternativa","settings.showCoordinates.original":"Original","settings.showCoordinates":"Coordenadas","settings":"Configuraci\xf3n","words.empty-state.no-words":"No hay palabras creadas; el tablero est\xe1 vac\xedo.","words.input.placeholder":"Busque una palabra... (RegExp)","words.invalid":"Incorrecto","words.preview":"Vista previa","words.valid":"Correcto","words.validity":"Validez","words":"Palabras creadas"}')}}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[341],{296:(e,t,o)=>{"use strict";function n(){var e=this.constructor.getDerivedStateFromProps(this.props,this.state);null!=e&&this.setState(e)}function r(e){this.setState((function(t){var o=this.constructor.getDerivedStateFromProps(e,t);return null!=o?o:null}).bind(this))}function a(e,t){try{var o=this.props,n=this.state;this.props=e,this.state=t,this.__reactInternalSnapshotFlag=!0,this.__reactInternalSnapshot=this.getSnapshotBeforeUpdate(o,n)}finally{this.props=o,this.state=n}}function l(e){var t=e.prototype;if(!t||!t.isReactComponent)throw Error("Can only polyfill class components");if("function"!=typeof e.getDerivedStateFromProps&&"function"!=typeof t.getSnapshotBeforeUpdate)return e;var o=null,l=null,s=null;if("function"==typeof t.componentWillMount?o="componentWillMount":"function"==typeof t.UNSAFE_componentWillMount&&(o="UNSAFE_componentWillMount"),"function"==typeof t.componentWillReceiveProps?l="componentWillReceiveProps":"function"==typeof t.UNSAFE_componentWillReceiveProps&&(l="UNSAFE_componentWillReceiveProps"),"function"==typeof t.componentWillUpdate?s="componentWillUpdate":"function"==typeof t.UNSAFE_componentWillUpdate&&(s="UNSAFE_componentWillUpdate"),null!==o||null!==l||null!==s)throw Error("Unsafe legacy lifecycles will not be called for components using new component APIs.\n\n"+(e.displayName||e.name)+" uses "+("function"==typeof e.getDerivedStateFromProps?"getDerivedStateFromProps()":"getSnapshotBeforeUpdate()")+" but also contains the following legacy lifecycles:"+(null!==o?"\n "+o:"")+(null!==l?"\n "+l:"")+(null!==s?"\n "+s:"")+"\n\nThe above lifecycles should be removed. Learn more about this warning here:\nhttps://fb.me/react-async-component-lifecycle-hooks");if("function"==typeof e.getDerivedStateFromProps&&(t.componentWillMount=n,t.componentWillReceiveProps=r),"function"==typeof t.getSnapshotBeforeUpdate){if("function"!=typeof t.componentDidUpdate)throw Error("Cannot polyfill getSnapshotBeforeUpdate() for components that do not define componentDidUpdate() on the prototype");t.componentWillUpdate=a;var i=t.componentDidUpdate;t.componentDidUpdate=function(e,t,o){var n=this.__reactInternalSnapshotFlag?this.__reactInternalSnapshot:o;i.call(this,e,t,n)}}return e}o.r(t),o.d(t,{polyfill:()=>l}),n.__suppressDeprecationWarning=!0,r.__suppressDeprecationWarning=!0,a.__suppressDeprecationWarning=!0},1518:(e,t,o)=>{var n;!function(){"use strict";var r=!!("u">typeof window&&window.document&&window.document.createElement),a={canUseDOM:r,canUseWorkers:"u">typeof Worker,canUseEventListeners:r&&!!(window.addEventListener||window.attachEvent),canUseViewport:r&&!!window.screen};void 0===(n=(function(){return a}).call(t,o,t,e))||(e.exports=n)}()},1847:(e,t,o)=>{"use strict";var n=o(4140);function r(){}function a(){}a.resetWarningCache=r,e.exports=function(){function e(e,t,o,r,a,l){if(l!==n){var s=Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function t(){return e}e.isRequired=e;var o={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:a,resetWarningCache:r};return o.PropTypes=o,o}},2603:(e,t,o)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.canUseDOM=t.SafeNodeList=t.SafeHTMLCollection=void 0;var n,r=((n=o(1518))&&n.__esModule?n:{default:n}).default,a=r.canUseDOM?window.HTMLElement:{};t.SafeHTMLCollection=r.canUseDOM?window.HTMLCollection:{},t.SafeNodeList=r.canUseDOM?window.NodeList:{},t.canUseDOM=r.canUseDOM,t.default=a},4140:e=>{"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},4999:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.resetState=function(){var e=document.getElementsByTagName("html")[0];for(var t in o)r(e,o[t]);var a=document.body;for(var l in n)r(a,n[l]);o={},n={}},t.log=function(){};var o={},n={};function r(e,t){e.classList.remove(t)}var a=function(e,t,o){o.forEach(function(o){t[o]||(t[o]=0),t[o]+=1,e.add(o)})},l=function(e,t,o){o.forEach(function(o){t[o]&&(t[o]-=1),0===t[o]&&e.remove(o)})};t.add=function(e,t){return a(e.classList,"html"==e.nodeName.toLowerCase()?o:n,t.split(" "))},t.remove=function(e,t){return l(e.classList,"html"==e.nodeName.toLowerCase()?o:n,t.split(" "))}},5066:(e,t,o)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.resetState=function(){for(var e=[a,l],t=0;t<e.length;t++){var o=e[t];o&&o.parentNode&&o.parentNode.removeChild(o)}a=l=null,s=[]},t.log=function(){console.log("bodyTrap ----------"),console.log(s.length);for(var e=[a,l],t=0;t<e.length;t++){var o=e[t]||{};console.log(o.nodeName,o.className,o.id)}console.log("edn bodyTrap ----------")};var n,r=(n=o(8497))&&n.__esModule?n:{default:n},a=void 0,l=void 0,s=[];function i(){0===s.length||s[s.length-1].focusContent()}r.default.subscribe(function(e,t){a||l||((a=document.createElement("div")).setAttribute("data-react-modal-body-trap",""),a.style.position="absolute",a.style.opacity="0",a.setAttribute("tabindex","0"),a.addEventListener("focus",i),(l=a.cloneNode()).addEventListener("focus",i)),(s=t).length>0?(document.body.firstChild!==a&&document.body.insertBefore(a,document.body.firstChild),document.body.lastChild!==l&&document.body.appendChild(l)):(a.parentElement&&a.parentElement.removeChild(a),l.parentElement&&l.parentElement.removeChild(l))})},5755:(e,t,o)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var o=arguments[t];for(var n in o)Object.prototype.hasOwnProperty.call(o,n)&&(e[n]=o[n])}return e},r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a=function(){function e(e,t){for(var o=0;o<t.length;o++){var n=t[o];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}return function(t,o,n){return o&&e(t.prototype,o),n&&e(t,n),t}}(),l=o(5729),s=y(o(6121)),i=m(o(6986)),u=y(o(6526)),c=m(o(8431)),f=m(o(4999)),d=o(2603),p=y(d),h=y(o(8497));function m(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t.default=e,t}function y(e){return e&&e.__esModule?e:{default:e}}o(5066);var v={overlay:"ReactModal__Overlay",content:"ReactModal__Content"},b=0,O=function(e){if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function, not "+typeof e);function t(e){if(!(this instanceof t))throw TypeError("Cannot call a class as a function");var o=function(e,t){if(!e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return t&&("object"==typeof t||"function"==typeof t)?t:e}(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e));return o.setOverlayRef=function(e){o.overlay=e,o.props.overlayRef&&o.props.overlayRef(e)},o.setContentRef=function(e){o.content=e,o.props.contentRef&&o.props.contentRef(e)},o.afterClose=function(){var e=o.props,t=e.appElement,n=e.ariaHideApp,r=e.htmlOpenClassName,a=e.bodyOpenClassName,l=e.parentSelector,s=l&&l().ownerDocument||document;a&&f.remove(s.body,a),r&&f.remove(s.getElementsByTagName("html")[0],r),n&&b>0&&0==(b-=1)&&c.show(t),o.props.shouldFocusAfterRender&&(o.props.shouldReturnFocusAfterClose?(i.returnFocus(o.props.preventScroll),i.teardownScopedFocus()):i.popWithoutFocus()),o.props.onAfterClose&&o.props.onAfterClose(),h.default.deregister(o)},o.open=function(){o.beforeOpen(),o.state.afterOpen&&o.state.beforeClose?(clearTimeout(o.closeTimer),o.setState({beforeClose:!1})):(o.props.shouldFocusAfterRender&&(i.setupScopedFocus(o.node),i.markForFocusLater()),o.setState({isOpen:!0},function(){o.openAnimationFrame=requestAnimationFrame(function(){o.setState({afterOpen:!0}),o.props.isOpen&&o.props.onAfterOpen&&o.props.onAfterOpen({overlayEl:o.overlay,contentEl:o.content})})}))},o.close=function(){o.props.closeTimeoutMS>0?o.closeWithTimeout():o.closeWithoutTimeout()},o.focusContent=function(){return o.content&&!o.contentHasFocus()&&o.content.focus({preventScroll:!0})},o.closeWithTimeout=function(){var e=Date.now()+o.props.closeTimeoutMS;o.setState({beforeClose:!0,closesAt:e},function(){o.closeTimer=setTimeout(o.closeWithoutTimeout,o.state.closesAt-Date.now())})},o.closeWithoutTimeout=function(){o.setState({beforeClose:!1,isOpen:!1,afterOpen:!1,closesAt:null},o.afterClose)},o.handleKeyDown=function(e){("Tab"===e.code||9===e.keyCode)&&(0,u.default)(o.content,e),o.props.shouldCloseOnEsc&&("Escape"===e.code||27===e.keyCode)&&(e.stopPropagation(),o.requestClose(e))},o.handleOverlayOnClick=function(e){null===o.shouldClose&&(o.shouldClose=!0),o.shouldClose&&o.props.shouldCloseOnOverlayClick&&(o.ownerHandlesClose()?o.requestClose(e):o.focusContent()),o.shouldClose=null},o.handleContentOnMouseUp=function(){o.shouldClose=!1},o.handleOverlayOnMouseDown=function(e){o.props.shouldCloseOnOverlayClick||e.target!=o.overlay||e.preventDefault()},o.handleContentOnClick=function(){o.shouldClose=!1},o.handleContentOnMouseDown=function(){o.shouldClose=!1},o.requestClose=function(e){return o.ownerHandlesClose()&&o.props.onRequestClose(e)},o.ownerHandlesClose=function(){return o.props.onRequestClose},o.shouldBeClosed=function(){return!o.state.isOpen&&!o.state.beforeClose},o.contentHasFocus=function(){return document.activeElement===o.content||o.content.contains(document.activeElement)},o.buildClassName=function(e,t){var n=(void 0===t?"undefined":r(t))==="object"?t:{base:v[e],afterOpen:v[e]+"--after-open",beforeClose:v[e]+"--before-close"},a=n.base;return o.state.afterOpen&&(a=a+" "+n.afterOpen),o.state.beforeClose&&(a=a+" "+n.beforeClose),"string"==typeof t&&t?a+" "+t:a},o.attributesFromObject=function(e,t){return Object.keys(t).reduce(function(o,n){return o[e+"-"+n]=t[n],o},{})},o.state={afterOpen:!1,beforeClose:!1},o.shouldClose=null,o.moveFromContentToOverlay=null,o}return t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e),a(t,[{key:"componentDidMount",value:function(){this.props.isOpen&&this.open()}},{key:"componentDidUpdate",value:function(e,t){this.props.isOpen&&!e.isOpen?this.open():!this.props.isOpen&&e.isOpen&&this.close(),this.props.shouldFocusAfterRender&&this.state.isOpen&&!t.isOpen&&this.focusContent()}},{key:"componentWillUnmount",value:function(){this.state.isOpen&&this.afterClose(),clearTimeout(this.closeTimer),cancelAnimationFrame(this.openAnimationFrame)}},{key:"beforeOpen",value:function(){var e=this.props,t=e.appElement,o=e.ariaHideApp,n=e.htmlOpenClassName,r=e.bodyOpenClassName,a=e.parentSelector,l=a&&a().ownerDocument||document;r&&f.add(l.body,r),n&&f.add(l.getElementsByTagName("html")[0],n),o&&(b+=1,c.hide(t)),h.default.register(this)}},{key:"render",value:function(){var e=this.props,t=e.id,o=e.className,r=e.overlayClassName,a=e.defaultStyles,l=e.children,s=o?{}:a.content,i=r?{}:a.overlay;if(this.shouldBeClosed())return null;var u={ref:this.setOverlayRef,className:this.buildClassName("overlay",r),style:n({},i,this.props.style.overlay),onClick:this.handleOverlayOnClick,onMouseDown:this.handleOverlayOnMouseDown},c=n({id:t,ref:this.setContentRef,style:n({},s,this.props.style.content),className:this.buildClassName("content",o),tabIndex:"-1",onKeyDown:this.handleKeyDown,onMouseDown:this.handleContentOnMouseDown,onMouseUp:this.handleContentOnMouseUp,onClick:this.handleContentOnClick,role:this.props.role,"aria-label":this.props.contentLabel},this.attributesFromObject("aria",n({modal:!0},this.props.aria)),this.attributesFromObject("data",this.props.data||{}),{"data-testid":this.props.testId}),f=this.props.contentElement(c,l);return this.props.overlayElement(u,f)}}]),t}(l.Component);O.defaultProps={style:{overlay:{},content:{}},defaultStyles:{}},O.propTypes={isOpen:s.default.bool.isRequired,defaultStyles:s.default.shape({content:s.default.object,overlay:s.default.object}),style:s.default.shape({content:s.default.object,overlay:s.default.object}),className:s.default.oneOfType([s.default.string,s.default.object]),overlayClassName:s.default.oneOfType([s.default.string,s.default.object]),parentSelector:s.default.func,bodyOpenClassName:s.default.string,htmlOpenClassName:s.default.string,ariaHideApp:s.default.bool,appElement:s.default.oneOfType([s.default.instanceOf(p.default),s.default.instanceOf(d.SafeHTMLCollection),s.default.instanceOf(d.SafeNodeList),s.default.arrayOf(s.default.instanceOf(p.default))]),onAfterOpen:s.default.func,onAfterClose:s.default.func,onRequestClose:s.default.func,closeTimeoutMS:s.default.number,shouldFocusAfterRender:s.default.bool,shouldCloseOnOverlayClick:s.default.bool,shouldReturnFocusAfterClose:s.default.bool,preventScroll:s.default.bool,role:s.default.string,contentLabel:s.default.string,aria:s.default.object,data:s.default.object,children:s.default.node,shouldCloseOnEsc:s.default.bool,overlayRef:s.default.func,contentRef:s.default.func,id:s.default.string,overlayElement:s.default.func,contentElement:s.default.func,testId:s.default.string},t.default=O,e.exports=t.default},6121:(e,t,o)=>{e.exports=o(1847)()},6341:(e,t,o)=>{"use strict";var n;Object.defineProperty(t,"__esModule",{value:!0}),t.default=((n=o(9253))&&n.__esModule?n:{default:n}).default,e.exports=t.default},6526:(e,t,o)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){var o=(0,r.default)(e);if(!o.length)return void t.preventDefault();var n=void 0,a=t.shiftKey,l=o[0],s=o[o.length-1],i=function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:document;return t.activeElement.shadowRoot?e(t.activeElement.shadowRoot):t.activeElement}();if(e===i){if(!a)return;n=s}if(s!==i||a||(n=l),l===i&&a&&(n=s),n){t.preventDefault(),n.focus();return}var u=/(\bChrome\b|\bSafari\b)\//.exec(navigator.userAgent);if(null!=u&&"Chrome"!=u[1]&&null==/\biPod\b|\biPad\b/g.exec(navigator.userAgent)){var c=o.indexOf(i);if(c>-1&&(c+=a?-1:1),void 0===(n=o[c])){t.preventDefault(),(n=a?s:l).focus();return}t.preventDefault(),n.focus()}};var n,r=(n=o(8382))&&n.__esModule?n:{default:n};e.exports=t.default},6558:e=>{"use strict";e.exports=function(){}},6986:(e,t,o)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.resetState=function(){a=[]},t.log=function(){},t.handleBlur=i,t.handleFocus=u,t.markForFocusLater=function(){a.push(document.activeElement)},t.returnFocus=function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=null;try{0!==a.length&&(t=a.pop()).focus({preventScroll:e});return}catch(e){console.warn(["You tried to return focus to",t,"but it is not in the DOM anymore"].join(" "))}},t.popWithoutFocus=function(){a.length>0&&a.pop()},t.setupScopedFocus=function(e){l=e,window.addEventListener?(window.addEventListener("blur",i,!1),document.addEventListener("focus",u,!0)):(window.attachEvent("onBlur",i),document.attachEvent("onFocus",u))},t.teardownScopedFocus=function(){l=null,window.addEventListener?(window.removeEventListener("blur",i),document.removeEventListener("focus",u)):(window.detachEvent("onBlur",i),document.detachEvent("onFocus",u))};var n,r=(n=o(8382))&&n.__esModule?n:{default:n},a=[],l=null,s=!1;function i(){s=!0}function u(){s&&(s=!1,l&&setTimeout(function(){l.contains(document.activeElement)||((0,r.default)(l)[0]||l).focus()},0))}},8382:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t){return[].slice.call(t.querySelectorAll("*"),0).reduce(function(t,o){return t.concat(o.shadowRoot?e(o.shadowRoot):[o])},[]).filter(n)};var o=/^(input|select|textarea|button|object|iframe)$/;function n(e){var t,n,r=e.getAttribute("tabindex");null===r&&(r=void 0);var a=isNaN(r);return(a||r>=0)&&(t=!a,n=e.nodeName.toLowerCase(),(o.test(n)&&!e.disabled||"a"===n&&e.href||t)&&function(e){for(var t=e,o=e.getRootNode&&e.getRootNode();t&&t!==document.body;){if(o&&t===o&&(t=o.host.parentNode),function(e){var t=e.offsetWidth<=0&&e.offsetHeight<=0;if(t&&!e.innerHTML)return!0;try{var o=window.getComputedStyle(e),n=o.getPropertyValue("display");return t?"contents"!==n&&("visible"!==o.getPropertyValue("overflow")||e.scrollWidth<=0&&e.scrollHeight<=0):"none"===n}catch(e){return console.warn("Failed to inspect element style"),!1}}(t))return!1;t=t.parentNode}return!0}(e))}e.exports=t.default},8431:(e,t,o)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.resetState=function(){l&&(l.removeAttribute?l.removeAttribute("aria-hidden"):null!=l.length?l.forEach(function(e){return e.removeAttribute("aria-hidden")}):document.querySelectorAll(l).forEach(function(e){return e.removeAttribute("aria-hidden")})),l=null},t.log=function(){},t.assertNodeList=s,t.setElement=function(e){var t=e;if("string"==typeof t&&a.canUseDOM){var o=document.querySelectorAll(t);s(o,t),t=o}return l=t||l},t.validateElement=i,t.hide=function(e){var t=!0,o=!1,n=void 0;try{for(var r,a=i(e)[Symbol.iterator]();!(t=(r=a.next()).done);t=!0)r.value.setAttribute("aria-hidden","true")}catch(e){o=!0,n=e}finally{try{!t&&a.return&&a.return()}finally{if(o)throw n}}},t.show=function(e){var t=!0,o=!1,n=void 0;try{for(var r,a=i(e)[Symbol.iterator]();!(t=(r=a.next()).done);t=!0)r.value.removeAttribute("aria-hidden")}catch(e){o=!0,n=e}finally{try{!t&&a.return&&a.return()}finally{if(o)throw n}}},t.documentNotReadyOrSSRTesting=function(){l=null};var n,r=(n=o(6558))&&n.__esModule?n:{default:n},a=o(2603),l=null;function s(e,t){if(!e||!e.length)throw Error("react-modal: No elements were found for selector "+t+".")}function i(e){var t=e||l;return t?Array.isArray(t)||t instanceof HTMLCollection||t instanceof NodeList?t:[t]:((0,r.default)(!1,"react-modal: App element is not defined. Please use `Modal.setAppElement(el)` or set `appElement={el}`. This is needed so screen readers don't see main content when modal is opened. It is not recommended, but you can opt-out by setting `ariaHideApp={false}`."),[])}},8497:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.log=function(){console.log("portalOpenInstances ----------"),console.log(n.openInstances.length),n.openInstances.forEach(function(e){return console.log(e)}),console.log("end portalOpenInstances ----------")},t.resetState=function(){n=new o};var o=function e(){var t=this;if(!(this instanceof e))throw TypeError("Cannot call a class as a function");this.register=function(e){-1!==t.openInstances.indexOf(e)||(t.openInstances.push(e),t.emit("register"))},this.deregister=function(e){var o=t.openInstances.indexOf(e);-1===o||(t.openInstances.splice(o,1),t.emit("deregister"))},this.subscribe=function(e){t.subscribers.push(e)},this.emit=function(e){t.subscribers.forEach(function(o){return o(e,t.openInstances.slice())})},this.openInstances=[],this.subscribers=[]},n=new o;t.default=n},9253:(e,t,o)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.bodyOpenClassName=t.portalClassName=void 0;var n=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var o=arguments[t];for(var n in o)Object.prototype.hasOwnProperty.call(o,n)&&(e[n]=o[n])}return e},r=function(){function e(e,t){for(var o=0;o<t.length;o++){var n=t[o];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}return function(t,o,n){return o&&e(t.prototype,o),n&&e(t,n),t}}(),a=o(5729),l=h(a),s=h(o(6760)),i=h(o(6121)),u=h(o(5755)),c=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t.default=e,t}(o(8431)),f=o(2603),d=h(f),p=o(296);function h(e){return e&&e.__esModule?e:{default:e}}function m(e,t){if(!e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return t&&("object"==typeof t||"function"==typeof t)?t:e}var y=t.portalClassName="ReactModalPortal",v=t.bodyOpenClassName="ReactModal__Body--open",b=f.canUseDOM&&void 0!==s.default.createPortal,O=function(e){return document.createElement(e)},C=function(){return b?s.default.createPortal:s.default.unstable_renderSubtreeIntoContainer},g=function(e){if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function, not "+typeof e);function t(){if(!(this instanceof t))throw TypeError("Cannot call a class as a function");for(var e,o,r,a=arguments.length,i=Array(a),c=0;c<a;c++)i[c]=arguments[c];return o=r=m(this,(e=t.__proto__||Object.getPrototypeOf(t)).call.apply(e,[this].concat(i))),r.removePortal=function(){b||s.default.unmountComponentAtNode(r.node);var e=(0,r.props.parentSelector)();e&&e.contains(r.node)?e.removeChild(r.node):console.warn('React-Modal: "parentSelector" prop did not returned any DOM element. Make sure that the parent element is unmounted to avoid any memory leaks.')},r.portalRef=function(e){r.portal=e},r.renderPortal=function(e){var o=C()(r,l.default.createElement(u.default,n({defaultStyles:t.defaultStyles},e)),r.node);r.portalRef(o)},m(r,o)}return t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e),r(t,[{key:"componentDidMount",value:function(){f.canUseDOM&&(b||(this.node=O("div")),this.node.className=this.props.portalClassName,(0,this.props.parentSelector)().appendChild(this.node),b||this.renderPortal(this.props))}},{key:"getSnapshotBeforeUpdate",value:function(e){return{prevParent:(0,e.parentSelector)(),nextParent:(0,this.props.parentSelector)()}}},{key:"componentDidUpdate",value:function(e,t,o){if(f.canUseDOM){var n=this.props,r=n.isOpen,a=n.portalClassName;e.portalClassName!==a&&(this.node.className=a);var l=o.prevParent,s=o.nextParent;s!==l&&(l.removeChild(this.node),s.appendChild(this.node)),(e.isOpen||r)&&(b||this.renderPortal(this.props))}}},{key:"componentWillUnmount",value:function(){if(f.canUseDOM&&this.node&&this.portal){var e=this.portal.state,t=Date.now(),o=e.isOpen&&this.props.closeTimeoutMS&&(e.closesAt||t+this.props.closeTimeoutMS);o?(e.beforeClose||this.portal.closeWithTimeout(),setTimeout(this.removePortal,o-t)):this.removePortal()}}},{key:"render",value:function(){return f.canUseDOM&&b?(!this.node&&b&&(this.node=O("div")),C()(l.default.createElement(u.default,n({ref:this.portalRef,defaultStyles:t.defaultStyles},this.props)),this.node)):null}}],[{key:"setAppElement",value:function(e){c.setElement(e)}}]),t}(a.Component);g.propTypes={isOpen:i.default.bool.isRequired,style:i.default.shape({content:i.default.object,overlay:i.default.object}),portalClassName:i.default.string,bodyOpenClassName:i.default.string,htmlOpenClassName:i.default.string,className:i.default.oneOfType([i.default.string,i.default.shape({base:i.default.string.isRequired,afterOpen:i.default.string.isRequired,beforeClose:i.default.string.isRequired})]),overlayClassName:i.default.oneOfType([i.default.string,i.default.shape({base:i.default.string.isRequired,afterOpen:i.default.string.isRequired,beforeClose:i.default.string.isRequired})]),appElement:i.default.oneOfType([i.default.instanceOf(d.default),i.default.instanceOf(f.SafeHTMLCollection),i.default.instanceOf(f.SafeNodeList),i.default.arrayOf(i.default.instanceOf(d.default))]),onAfterOpen:i.default.func,onRequestClose:i.default.func,closeTimeoutMS:i.default.number,ariaHideApp:i.default.bool,shouldFocusAfterRender:i.default.bool,shouldCloseOnOverlayClick:i.default.bool,shouldReturnFocusAfterClose:i.default.bool,preventScroll:i.default.bool,parentSelector:i.default.func,aria:i.default.object,data:i.default.object,role:i.default.string,contentLabel:i.default.string,shouldCloseOnEsc:i.default.bool,overlayRef:i.default.func,contentRef:i.default.func,id:i.default.string,overlayElement:i.default.func,contentElement:i.default.func},g.defaultProps={isOpen:!1,portalClassName:y,bodyOpenClassName:v,role:"dialog",ariaHideApp:!0,closeTimeoutMS:0,shouldFocusAfterRender:!0,shouldCloseOnEsc:!0,shouldCloseOnOverlayClick:!0,shouldReturnFocusAfterClose:!0,preventScroll:!1,parentSelector:function(){return document.body},overlayElement:function(e,t){return l.default.createElement("div",e,t)},contentElement:function(e,t){return l.default.createElement("div",e,t)}},g.defaultStyles={overlay:{position:"fixed",top:0,left:0,right:0,bottom:0,backgroundColor:"rgba(255, 255, 255, 0.75)"},content:{position:"absolute",top:"40px",left:"40px",right:"40px",bottom:"40px",border:"1px solid #ccc",background:"#fff",overflow:"auto",WebkitOverflowScrolling:"touch",borderRadius:"4px",outline:"none",padding:"20px"}},(0,p.polyfill)(g),t.default=g}}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[363],{2134:e=>{e.exports={modal:"Modal_modal__l4yBn",closeButton:"Modal_closeButton__Foob_",afterOpen:"Modal_afterOpen__yCc_m",container:"Modal_container__T5Dvn",beforeClose:"Modal_beforeClose__Q_ZUS",overlay:"Modal_overlay__nbJY5",header:"Modal_header__8HSvT",title:"Modal_title__oD_ne",content:"Modal_content__Fchkl",footer:"Modal_footer__Pw_CF"}},4333:(e,t,a)=>{"use strict";a.d(t,{_:()=>ed});var h,r,l,n,s,m,o,v,c,d,i,f,p,E,M,g,_,u,k,w,y,W,b,H,x,O,j,V,F,z,L,B,C,U,N,P,S,R,D,T,A,Z,I,K,q,G,J,Q,Y,X,$,ee,et=a(9604),ea=a(5729);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 h in a)({}).hasOwnProperty.call(a,h)&&(e[h]=a[h])}return e}).apply(null,arguments)}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 h in a)({}).hasOwnProperty.call(a,h)&&(e[h]=a[h])}return e}).apply(null,arguments)}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 h in a)({}).hasOwnProperty.call(a,h)&&(e[h]=a[h])}return e}).apply(null,arguments)}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 h in a)({}).hasOwnProperty.call(a,h)&&(e[h]=a[h])}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 h in a)({}).hasOwnProperty.call(a,h)&&(e[h]=a[h])}return e}).apply(null,arguments)}function em(){return(em=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var h in a)({}).hasOwnProperty.call(a,h)&&(e[h]=a[h])}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 h in a)({}).hasOwnProperty.call(a,h)&&(e[h]=a[h])}return e}).apply(null,arguments)}function ev(){return(ev=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var h in a)({}).hasOwnProperty.call(a,h)&&(e[h]=a[h])}return e}).apply(null,arguments)}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 h in a)({}).hasOwnProperty.call(a,h)&&(e[h]=a[h])}return e}).apply(null,arguments)}let ed={[et.Locale.DE_DE]:e=>ea.createElement("svg",eh({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 12"},e),h||(h=ea.createElement("path",{d:"M0 0h20v4H0z"})),r||(r=ea.createElement("path",{fill:"red",d:"M0 4h20v4H0z"})),l||(l=ea.createElement("path",{fill:"#fc0",d:"M0 8h20v4H0z"}))),[et.Locale.EN_GB]:e=>ea.createElement("svg",es({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 60 30"},e),B||(B=ea.createElement("path",{fill:"#00247d",d:"M0 0v30h60V0z"})),C||(C=ea.createElement("path",{stroke:"#fff",strokeWidth:6,d:"m0 0 60 30m0-30L0 30"})),U||(U=ea.createElement("path",{stroke:"#cf142b",strokeWidth:4,d:"m0 0 60 30m0-30L0 30"})),N||(N=ea.createElement("path",{stroke:"#fff",strokeWidth:10,d:"M30 0v30M0 15h60"})),P||(P=ea.createElement("path",{stroke:"#cf142b",strokeWidth:6,d:"M30 0v30M0 15h60"}))),[et.Locale.EN_US]:e=>ea.createElement("svg",ec({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 7410 3900"},e),K||(K=ea.createElement("path",{fill:"#b22234",d:"M0 0h7410v3900H0z"})),q||(q=ea.createElement("path",{stroke:"#fff",strokeWidth:300,d:"M0 450h7410m0 600H0m0 600h7410m0 600H0m0 600h7410m0 600H0"})),G||(G=ea.createElement("path",{fill:"#3c3b6e",d:"M0 0h2964v2100H0z"})),J||(J=ea.createElement("g",{fill:"#fff"},ea.createElement("g",{id:"FlagUs_svg__d"},ea.createElement("g",{id:"FlagUs_svg__c"},ea.createElement("g",{id:"FlagUs_svg__e"},ea.createElement("g",{id:"FlagUs_svg__b"},ea.createElement("path",{id:"FlagUs_svg__a",d:"m247 90 70.534 217.082-184.66-134.164h228.253L176.466 307.082z"}),ea.createElement("use",{y:420,href:"#FlagUs_svg__a"}),ea.createElement("use",{y:840,href:"#FlagUs_svg__a"}),ea.createElement("use",{y:1260,href:"#FlagUs_svg__a"})),ea.createElement("use",{y:1680,href:"#FlagUs_svg__a"})),ea.createElement("use",{x:247,y:210,href:"#FlagUs_svg__b"})),ea.createElement("use",{x:494,href:"#FlagUs_svg__c"})),ea.createElement("use",{x:988,href:"#FlagUs_svg__d"}),ea.createElement("use",{x:1976,href:"#FlagUs_svg__c"}),ea.createElement("use",{x:2470,href:"#FlagUs_svg__e"}))),Q||(Q=ea.createElement("path",{fill:"#00247d",d:"M0 0v30h60V0z"})),Y||(Y=ea.createElement("path",{stroke:"#fff",strokeWidth:6,d:"m0 0 60 30m0-30L0 30"})),X||(X=ea.createElement("path",{stroke:"#cf142b",strokeWidth:4,d:"m0 0 60 30m0-30L0 30"})),$||($=ea.createElement("path",{stroke:"#fff",strokeWidth:10,d:"M30 0v30M0 15h60"})),ee||(ee=ea.createElement("path",{stroke:"#cf142b",strokeWidth:6,d:"M30 0v30M0 15h60"}))),[et.Locale.ES_ES]:e=>ea.createElement("svg",er({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 750 500"},e),n||(n=ea.createElement("path",{fill:"#c60b1e",d:"M0 0h750v500H0z"})),s||(s=ea.createElement("path",{fill:"#ffc400",d:"M0 125h750v250H0z"}))),[et.Locale.FA_IR]:e=>ea.createElement("svg",el({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 630 360"},e),ea.createElement("path",{d:"M0 0h630v360H0Z",style:{fill:"#da0000"}}),ea.createElement("path",{d:"M0 0h630v240H0Z",style:{fill:"#fff"}}),ea.createElement("path",{d:"M0 0h630v120H0Z",style:{fill:"#239f40"}}),ea.createElement("g",{fill:"none",stroke:"#fff",strokeWidth:2},m||(m=ea.createElement("path",{strokeWidth:2.8,d:"M8.4 101.8h36.4m-35 12.6v-7H21v5.6h11.2v-5.6h-7M14 113h2.8m28 0h-7v-5.6H49m0-7V113h11.2v-12.6m-5.6 0V113"})),o||(o=ea.createElement("path",{strokeWidth:5.6,d:"M8.4 120h25.2m2.8 0h25.2"})),ea.createElement("path",{d:"M0 139.6h25.2m2.8 0h25.2",style:{strokeWidth:5.6},transform:"translate(8.4 100.4)"}),ea.createElement("path",{d:"M0 146.6h36.4m-35 12.6v-7h11.2v5.6h11.2v-5.6h-7m-11.2 5.6h2.8m28 0h-7v-5.6h11.2m0-7v12.6h11.2v-12.6m-5.6 0v12.6",style:{strokeWidth:2.8},transform:"translate(8.4 100.4)"}),v||(v=ea.createElement("path",{strokeWidth:2.8,d:"M64.4 101.8h36.4m-35 12.6v-7H77v5.6h11.2v-5.6h-7M70 113h2.8m28 0h-7v-5.6H105m0-7V113h11.2v-12.6m-5.6 0V113"})),c||(c=ea.createElement("path",{strokeWidth:5.6,d:"M64.4 120h25.2m2.8 0h25.2"})),ea.createElement("path",{d:"M0 139.6h25.2m2.8 0h25.2",style:{strokeWidth:5.6},transform:"translate(64.4 100.4)"}),ea.createElement("path",{d:"M0 146.6h36.4m-35 12.6v-7h11.2v5.6h11.2v-5.6h-7m-11.2 5.6h2.8m28 0h-7v-5.6h11.2m0-7v12.6h11.2v-12.6m-5.6 0v12.6",style:{strokeWidth:2.8},transform:"translate(64.4 100.4)"}),d||(d=ea.createElement("path",{strokeWidth:2.8,d:"M120.4 101.8h36.4m-35 12.6v-7H133v5.6h11.2v-5.6h-7M126 113h2.8m28 0h-7v-5.6H161m0-7V113h11.2v-12.6m-5.6 0V113"})),i||(i=ea.createElement("path",{strokeWidth:5.6,d:"M120.4 120h25.2m2.8 0h25.2"})),ea.createElement("path",{d:"M0 139.6h25.2m2.8 0h25.2",style:{strokeWidth:5.6},transform:"translate(120.4 100.4)"}),ea.createElement("path",{d:"M0 146.6h36.4m-35 12.6v-7h11.2v5.6h11.2v-5.6h-7m-11.2 5.6h2.8m28 0h-7v-5.6h11.2m0-7v12.6h11.2v-12.6m-5.6 0v12.6",style:{strokeWidth:2.8},transform:"translate(120.4 100.4)"}),f||(f=ea.createElement("path",{strokeWidth:2.8,d:"M176.4 101.8h36.4m-35 12.6v-7H189v5.6h11.2v-5.6h-7M182 113h2.8m28 0h-7v-5.6H217m0-7V113h11.2v-12.6m-5.6 0V113"})),p||(p=ea.createElement("path",{strokeWidth:5.6,d:"M176.4 120h25.2m2.8 0h25.2"})),ea.createElement("path",{d:"M0 139.6h25.2m2.8 0h25.2",style:{strokeWidth:5.6},transform:"translate(176.4 100.4)"}),ea.createElement("path",{d:"M0 146.6h36.4m-35 12.6v-7h11.2v5.6h11.2v-5.6h-7m-11.2 5.6h2.8m28 0h-7v-5.6h11.2m0-7v12.6h11.2v-12.6m-5.6 0v12.6",style:{strokeWidth:2.8},transform:"translate(176.4 100.4)"}),E||(E=ea.createElement("path",{strokeWidth:2.8,d:"M232.4 101.8h36.4m-35 12.6v-7H245v5.6h11.2v-5.6h-7M238 113h2.8m28 0h-7v-5.6H273m0-7V113h11.2v-12.6m-5.6 0V113"})),M||(M=ea.createElement("path",{strokeWidth:5.6,d:"M232.4 120h25.2m2.8 0h25.2"})),ea.createElement("path",{d:"M0 139.6h25.2m2.8 0h25.2",style:{strokeWidth:5.6},transform:"translate(232.4 100.4)"}),ea.createElement("path",{d:"M0 146.6h36.4m-35 12.6v-7h11.2v5.6h11.2v-5.6h-7m-11.2 5.6h2.8m28 0h-7v-5.6h11.2m0-7v12.6h11.2v-12.6m-5.6 0v12.6",style:{strokeWidth:2.8},transform:"translate(232.4 100.4)"}),g||(g=ea.createElement("path",{strokeWidth:2.8,d:"M288.4 101.8h36.4m-35 12.6v-7H301v5.6h11.2v-5.6h-7M294 113h2.8m28 0h-7v-5.6H329m0-7V113h11.2v-12.6m-5.6 0V113"})),_||(_=ea.createElement("path",{strokeWidth:5.6,d:"M288.4 120h25.2m2.8 0h25.2"})),ea.createElement("path",{d:"M0 139.6h25.2m2.8 0h25.2",style:{strokeWidth:5.6},transform:"translate(288.4 100.4)"}),ea.createElement("path",{d:"M0 146.6h36.4m-35 12.6v-7h11.2v5.6h11.2v-5.6h-7m-11.2 5.6h2.8m28 0h-7v-5.6h11.2m0-7v12.6h11.2v-12.6m-5.6 0v12.6",style:{strokeWidth:2.8},transform:"translate(288.4 100.4)"}),u||(u=ea.createElement("path",{strokeWidth:2.8,d:"M344.4 101.8h36.4m-35 12.6v-7H357v5.6h11.2v-5.6h-7M350 113h2.8m28 0h-7v-5.6H385m0-7V113h11.2v-12.6m-5.6 0V113"})),k||(k=ea.createElement("path",{strokeWidth:5.6,d:"M344.4 120h25.2m2.8 0h25.2"})),ea.createElement("path",{d:"M0 139.6h25.2m2.8 0h25.2",style:{strokeWidth:5.6},transform:"translate(344.4 100.4)"}),ea.createElement("path",{d:"M0 146.6h36.4m-35 12.6v-7h11.2v5.6h11.2v-5.6h-7m-11.2 5.6h2.8m28 0h-7v-5.6h11.2m0-7v12.6h11.2v-12.6m-5.6 0v12.6",style:{strokeWidth:2.8},transform:"translate(344.4 100.4)"}),w||(w=ea.createElement("path",{strokeWidth:2.8,d:"M400.4 101.8h36.4m-35 12.6v-7H413v5.6h11.2v-5.6h-7M406 113h2.8m28 0h-7v-5.6H441m0-7V113h11.2v-12.6m-5.6 0V113"})),y||(y=ea.createElement("path",{strokeWidth:5.6,d:"M400.4 120h25.2m2.8 0h25.2"})),ea.createElement("path",{d:"M0 139.6h25.2m2.8 0h25.2",style:{strokeWidth:5.6},transform:"translate(400.4 100.4)"}),ea.createElement("path",{d:"M0 146.6h36.4m-35 12.6v-7h11.2v5.6h11.2v-5.6h-7m-11.2 5.6h2.8m28 0h-7v-5.6h11.2m0-7v12.6h11.2v-12.6m-5.6 0v12.6",style:{strokeWidth:2.8},transform:"translate(400.4 100.4)"}),W||(W=ea.createElement("path",{strokeWidth:2.8,d:"M456.4 101.8h36.4m-35 12.6v-7H469v5.6h11.2v-5.6h-7M462 113h2.8m28 0h-7v-5.6H497m0-7V113h11.2v-12.6m-5.6 0V113"})),b||(b=ea.createElement("path",{strokeWidth:5.6,d:"M456.4 120h25.2m2.8 0h25.2"})),ea.createElement("path",{d:"M0 139.6h25.2m2.8 0h25.2",style:{strokeWidth:5.6},transform:"translate(456.4 100.4)"}),ea.createElement("path",{d:"M0 146.6h36.4m-35 12.6v-7h11.2v5.6h11.2v-5.6h-7m-11.2 5.6h2.8m28 0h-7v-5.6h11.2m0-7v12.6h11.2v-12.6m-5.6 0v12.6",style:{strokeWidth:2.8},transform:"translate(456.4 100.4)"}),H||(H=ea.createElement("path",{strokeWidth:2.8,d:"M512.4 101.8h36.4m-35 12.6v-7H525v5.6h11.2v-5.6h-7M518 113h2.8m28 0h-7v-5.6H553m0-7V113h11.2v-12.6m-5.6 0V113"})),x||(x=ea.createElement("path",{strokeWidth:5.6,d:"M512.4 120h25.2m2.8 0h25.2"})),ea.createElement("path",{d:"M0 139.6h25.2m2.8 0h25.2",style:{strokeWidth:5.6},transform:"translate(512.4 100.4)"}),ea.createElement("path",{d:"M0 146.6h36.4m-35 12.6v-7h11.2v5.6h11.2v-5.6h-7m-11.2 5.6h2.8m28 0h-7v-5.6h11.2m0-7v12.6h11.2v-12.6m-5.6 0v12.6",style:{strokeWidth:2.8},transform:"translate(512.4 100.4)"}),O||(O=ea.createElement("path",{strokeWidth:2.8,d:"M568.4 101.8h36.4m-35 12.6v-7H581v5.6h11.2v-5.6h-7M574 113h2.8m28 0h-7v-5.6H609m0-7V113h11.2v-12.6m-5.6 0V113"})),j||(j=ea.createElement("path",{strokeWidth:5.6,d:"M568.4 120h25.2m2.8 0h25.2"})),ea.createElement("path",{d:"M0 139.6h25.2m2.8 0h25.2",style:{strokeWidth:5.6},transform:"translate(568.4 100.4)"}),ea.createElement("path",{d:"M0 146.6h36.4m-35 12.6v-7h11.2v5.6h11.2v-5.6h-7m-11.2 5.6h2.8m28 0h-7v-5.6h11.2m0-7v12.6h11.2v-12.6m-5.6 0v12.6",style:{strokeWidth:2.8},transform:"translate(568.4 100.4)"})),V||(V=ea.createElement("g",{fill:"#da0000"},ea.createElement("path",{d:"M290.333 217.637a41.042 41.042 0 0 0 39.451-70.144 45 45 0 0 1-39.45 70.144"}),ea.createElement("path",{d:"M342.825 209.763a34.377 34.377 0 0 0-8.851-63.11 45 45 0 0 1 8.851 63.11M315 225l-2.25-45 2.25-35.428a13.95 13.95 0 0 0 5.312 4.46v26.45l-1.81 44.699zM314.1 141.75l.9.845a6.494 6.494 0 0 0 11.343-6.142A6.138 6.138 0 0 1 315 138.391"}),ea.createElement("path",{d:"M339.667 217.637a41.042 41.042 0 0 1-39.451-70.144 45 45 0 0 0 39.45 70.144"}),ea.createElement("path",{d:"M287.175 209.763a34.377 34.377 0 0 1 8.851-63.11 45 45 0 0 0-8.851 63.11M315 225l2.25-45-2.25-35.428a13.95 13.95 0 0 1-5.312 4.46v26.45l1.81 44.699ZM315.9 141.75l-.9.845a6.494 6.494 0 0 1-11.343-6.142A6.138 6.138 0 0 0 315 138.391"})))),[et.Locale.FR_FR]:e=>ea.createElement("svg",en({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 15"},e),F||(F=ea.createElement("path",{fill:"#002395",d:"M0 0h8v15H0z"})),z||(z=ea.createElement("path",{fill:"#FFF",d:"M8 0h8v15H8z"})),L||(L=ea.createElement("path",{fill:"#ED2939",d:"M16 0h8v15h-8z"}))),[et.Locale.PL_PL]:e=>ea.createElement("svg",em({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 10"},e),S||(S=ea.createElement("path",{fill:"#fff",d:"M0 0h16v10H0z"})),R||(R=ea.createElement("path",{fill:"#dc143c",d:"M0 5h16v5H0z"}))),[et.Locale.RO_RO]:e=>ea.createElement("svg",eo({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 3 2"},e),D||(D=ea.createElement("path",{fill:"#002B7F",d:"M0 0h3v2H0z"})),T||(T=ea.createElement("path",{fill:"#FCD116",d:"M1 0h2v2H1z"})),A||(A=ea.createElement("path",{fill:"#CE1126",d:"M2 0h1v2H2z"}))),[et.Locale.TR_TR]:e=>ea.createElement("svg",ev({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 -30000 90000 60000"},e),Z||(Z=ea.createElement("path",{fill:"#e30a17",d:"M0-30000h90000v60000H0z"})),I||(I=ea.createElement("path",{fill:"#fff",d:"m41750 0 13568-4408-8386 11541V-7133l8386 11541zm925 8021a15000 15000 0 1 1 0-16042 12000 12000 0 1 0 0 16042"})))}},7136:(e,t,a)=>{"use strict";a.d(t,{a:()=>_});var h,r=a(6029),l=a(2988),n=a.n(l),s=a(5729),m=a(6341),o=a.n(m);function v(){return(v=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var h in a)({}).hasOwnProperty.call(a,h)&&(e[h]=a[h])}return e}).apply(null,arguments)}let c=e=>s.createElement("svg",v({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16"},e),h||(h=s.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-2zm3.354 4.646L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 1 1 .708-.708"})));var d=a(5227),i=a(7809),f=a(8298),p=a(8713),E=a.n(p),M=a(2134),g=a.n(M);"u">typeof document&&o().setAppElement("#__next");let _=Object.assign(e=>{let{children:t,className:a,footer:h,isOpen:l,modalClassName:m,title:v,onClose:p}=e,E=(0,i.W)(),[M,_]=(0,s.useState)(!0),u=(0,s.useCallback)(e=>{"Escape"===e.key&&(_(!1),setTimeout(()=>{p()},0))},[p]);return(0,s.useEffect)(()=>(document.addEventListener("keydown",u),()=>{document.removeEventListener("keydown",u)}),[u]),(0,s.useEffect)(()=>{l&&_(!0)},[l]),(0,r.jsx)(o(),{aria:{modal:!0},className:{afterOpen:g().afterOpen,base:n()(g().modal,m),beforeClose:g().beforeClose},closeTimeoutMS:d.oK,contentLabel:v,isOpen:l,overlayClassName:g().overlay,role:"dialog",shouldReturnFocusAfterClose:M,onRequestClose:p,children:(0,r.jsxs)("div",{className:n()(g().container,a),children:[(0,r.jsxs)("div",{className:g().header,children:[(0,r.jsx)("h1",{className:g().title,children:v}),(0,r.jsx)(f.K,{"aria-label":E("common.close"),className:g().closeButton,Icon:c,tooltip:E("common.close"),onClick:p})]}),(0,r.jsx)("div",{className:g().content,children:t}),h&&(0,r.jsx)("div",{className:g().footer,children:h})]})})},{Section:e=>{let{children:t,className:a,label:h,title:l}=e;return(0,r.jsxs)("section",{"aria-label":h,className:n()(E().section,a),children:[(0,r.jsx)("h2",{className:E().heading,children:l}),(0,r.jsx)("div",{children:t})]})}})},8713:e=>{e.exports={section:"Section_section__6Eczy",heading:"Section_heading__5Vnag"}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[422],{9422:e=>{e.exports=JSON.parse('{"cell.enter-word":"Wprowadź słowo","cell.filter-cell.exclude":"Wyklucz miejsce","cell.filter-cell.include":"Miejsce docelowe","cell.set-blank":"Oznacz jako blank","cell.set-not-blank":"Oznacz jako nie blank","cell.tile.location":"Plansza: płytka {{coordinates}}","cell.toggle-direction":"Kierunek wpisywania","common.arrows":"Klawisze strzałek","common.blanks":"Blanki","common.clear":"Wyczyść","common.close":"Zamknij","common.consonants":"Sp\xf3łgłoski","common.loading":"Ładowanie","common.next":"Następne","common.off":"Wyłączone","common.on":"Włączone","common.points":"Punkty","common.previous":"Poprzednie","common.space":"Spacja","common.tiles":"Płytki","common.two-letter-tiles":"Dwuliterowe","common.vowels":"Samogłoski","common.word":"Słowo","common.words":"Słowa","dictionary.empty-state.no-definitions":"Słowo istnieje w słowniku ale nie posiada definicji.","dictionary.empty-state.no-results":"Nie udało się znaleźć definicji słowa w słowniku.","dictionary.empty-state.not-allowed":"To słowo nie jest dopuszczalne w grach.","dictionary.empty-state.uninitialized":"Tu zostanie wyświetlona definicja słowa.","dictionary.input.placeholder":"Szukaj w słowniku…","dictionary.input.title":"Słowa rozdzielone przecinkiem","dictionary":"Słownik","empty-state.error":"Błąd","empty-state.info":"Info","empty-state.success":"Hurra!","empty-state.warning":"Ups!","github":"Zobacz ten projekt na GitHubie","keyMap.board-and-rack.insert-two-letter-tile":"Wstaw dwuliterową płytkę","keyMap.board-and-rack.navigate":"Nawigacja","keyMap.board-and-rack.remove-tile":"Zdejmij płytkę","keyMap.board-and-rack.submit":"Rozwiąż","keyMap.board-and-rack":"Plansza i stojak","keyMap.board.toggle-blank":"Oznacz/odznacz płytkę jako blank","keyMap.board.toggle-cell-filter":"Zmień filtr miejsca docelowego","keyMap.board.toggle-direction":"Zmień kierunek wpisywania","keyMap.board":"Plansza","keyMap.rack.insert-blank":"Wstaw blanka","keyMap.rack":"Stojak","keyMap":"Skr\xf3ty klawiszowe","menu":"Menu","rack.placeholder":"Literki","rack.tile.location":"Stojak: płytka ({{index}})","rack.touchscreen.placeholder":"Literki…","remaining-tiles":"Pozostałe płytki","results.empty-state.no-results":"Brak wynik\xf3w - nie można wygenerować żadnego słowa.","results.empty-state.outdated":"Wyniki są nieaktualne.","results.empty-state.uninitialized":"Tu zostaną wyświetlone słowa wygenerowane z Twoich liter.","results.input.placeholder":"Szukaj rozwiązania... (RegExp)","results.insert":"Wstaw","results.preview":"Podgląd","results.select":"Wybierz...","results.solve":"Rozwiąż","results":"Wyniki","settings.autoGroupTiles.left":"Po lewej","settings.autoGroupTiles.null":"Nie grupuj","settings.autoGroupTiles.right":"Po prawej","settings.autoGroupTiles":"Grupuj pozostałe płytki","settings.game":"Gra","settings.highlightUnreachableCells":"Wyr\xf3żnij nieosiągalne pola","settings.inputMode.keyboard":"Klawiatura","settings.inputMode.touchscreen":"Ekran dotykowy","settings.inputMode":"Tryb wpisywania","settings.language":"Język","settings.removeCellFilters.always":"Zawsze","settings.removeCellFilters.never":"Nigdy","settings.removeCellFilters":"Automatycznie usuwaj filtry z planszy","settings.showCoordinates.alternative":"Alternatywne","settings.showCoordinates.original":"Oryginalne","settings.showCoordinates":"Wsp\xf3łrzędne","settings":"Opcje","words.empty-state.no-words":"Brak utworzonych sł\xf3w - plansza jest pusta.","words.input.placeholder":"Szukaj sł\xf3w... (RegExp)","words.invalid":"Niepoprawne","words.preview":"Podgląd","words.valid":"Poprawne","words.validity":"Poprawność","words":"Utworzone słowa"}')}}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[541],{6541:(e,a,n)=>{"use strict";n.r(a),n.d(a,{MenuModal:()=>N});var l,s=n(6029),t=n(5729),i=n(3117),r=n(7136),o=n(4333);function c(){return(c=Object.assign?Object.assign.bind():function(e){for(var a=1;a<arguments.length;a++){var n=arguments[a];for(var l in n)({}).hasOwnProperty.call(n,l)&&(e[l]=n[l])}return e}).apply(null,arguments)}let d=e=>t.createElement("svg",c({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16"},e),l||(l=t.createElement("path",{fill:"currentColor",d:"M8.5 2.687c.654-.689 1.782-.886 3.112-.752 1.234.124 2.503.523 3.388.893v9.923c-.918-.35-2.107-.692-3.287-.81-1.094-.111-2.278-.039-3.213.492zM8 1.783C7.015.936 5.587.81 4.287.94c-1.514.153-3.042.672-3.994 1.105A.5.5 0 0 0 0 2.5v11a.5.5 0 0 0 .707.455c.882-.4 2.303-.881 3.68-1.02 1.409-.142 2.59.087 3.223.877a.5.5 0 0 0 .78 0c.633-.79 1.814-1.019 3.222-.877 1.378.139 2.8.62 3.681 1.02A.5.5 0 0 0 16 13.5v-11a.5.5 0 0 0-.293-.455c-.952-.433-2.48-.952-3.994-1.105C10.413.809 8.985.936 8 1.783"})));var u=n(8655),b=n(820),g=n(3812),m=n(9115),_=n(5227),h=n(7809),w=n(5526),v=n(8390),x=n(7736),M=n.n(x);let N=(0,t.memo)(e=>{let{className:a,isOpen:n,onClose:l,onShowDictionary:t,onShowRemainingTiles:c,onShowSettings:x,onShowWords:N}=e,f=(0,h.W)(),j=(0,w.N)(v.JV),p=o._[j];return(0,s.jsxs)(r.a,{className:a,isOpen:n,modalClassName:M().modal,title:f("menu"),onClose:l,children:[(0,s.jsx)(i.$,{"aria-label":f("remaining-tiles"),className:M().button,Icon:m.A,wide:!0,onClick:c,children:f("remaining-tiles")}),(0,s.jsx)(i.$,{"aria-label":f("words"),className:M().button,Icon:u.A,wide:!0,onClick:N,children:f("words")}),(0,s.jsx)(i.$,{"aria-label":f("dictionary"),className:M().button,Icon:d,wide:!0,onClick:t,children:f("dictionary")}),(0,s.jsx)(i.$.Link,{"aria-label":f("github"),className:M().button,href:_.g,Icon:g.A,rel:"noopener noreferrer",target:"_blank",wide:!0,children:f("github")}),(0,s.jsx)(i.$,{"aria-label":f("settings"),className:M().button,Icon:b.A,wide:!0,onClick:x,children:(0,s.jsxs)("div",{className:M().settings,children:[(0,s.jsx)("div",{className:M().settingsLabel,children:f("settings")}),(0,s.jsx)(p,{"aria-hidden":"true",className:M().flag,role:"img"})]})})]})})},7736:e=>{e.exports={modal:"MenuModal_modal__P3tb3",button:"MenuModal_button__x3zTR",settings:"MenuModal_settings__XE_P3",settingsLabel:"MenuModal_settingsLabel__xYRLv",flag:"MenuModal_flag__NGaHf"}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[601],{6363:e=>{e.exports=JSON.parse('{"cell.enter-word":"Entrez un mot","cell.filter-cell.exclude":"Exclure la destination","cell.filter-cell.include":"Destination cible","cell.set-blank":"Marquer comme vide","cell.set-not-blank":"Marquer comme non vide","cell.tile.location":"Plateau: la case {{coordinates}}","cell.toggle-direction":"Direction d\'\xe9criture","common.arrows":"Touches fl\xe9ch\xe9es","common.blanks":"Cases vides","common.clear":"Effacer","common.close":"Fermer","common.consonants":"Consonnes","common.loading":"Chargement","common.next":"Suivant","common.off":"D\xe9sactiv\xe9","common.on":"Activ\xe9","common.points":"Points","common.previous":"Pr\xe9c\xe9dent","common.space":"Barre d\'espace","common.tiles":"Cases","common.two-letter-tiles":"Deux lettres","common.vowels":"Voyelles","common.word":"Mot","common.words":"Mots","dictionary.empty-state.no-definitions":"Le mot existe dans le dictionary mais n\'a pas de d\xe9finition.","dictionary.empty-state.no-results":"Impossible de trouver une d\xe9finition pour ce mot dans le dictionaire.","dictionary.empty-state.not-allowed":"Ce mot n\'est pas pas acceptable.","dictionary.empty-state.uninitialized":"La d\xe9finition dictionaire sera affich\xe9e ici.","dictionary.input.placeholder":"Rechercher dans le dictionnaire…","dictionary.input.title":"Mots s\xe9par\xe9es par des virgules","dictionary":"Dictionnaire","empty-state.error":"Erreur","empty-state.info":"Info","empty-state.success":"Ouais!","empty-state.warning":"Oups!","github":"Voir ce projet sur GitHub","keyMap.board-and-rack.insert-two-letter-tile":"Ins\xe9rer une tuile de deux lettres","keyMap.board-and-rack.navigate":"Naviguer","keyMap.board-and-rack.remove-tile":"Supprimer une case","keyMap.board-and-rack.submit":"R\xe9soudre","keyMap.board-and-rack":"Plateau & chevalet","keyMap.board.toggle-blank":"Marqu\xe9/D\xe9marqu\xe9 la case en tant que vide","keyMap.board.toggle-cell-filter":"Basculer le filtre de destination","keyMap.board.toggle-direction":"Faire basculer la direction d\'\xe9criture","keyMap.board":"Plateau","keyMap.rack.insert-blank":"Inserer une case vide","keyMap.rack":"Chevalet","keyMap":"Raccourcis clavier","menu":"Menu","rack.placeholder":"Lettres","rack.tile.location":"Chevalet: la case ({{index}})","rack.touchscreen.placeholder":"Lettres…","remaining-tiles":"Cases restantes","results.empty-state.no-results":"Pas de r\xe9sultats - impossible de g\xe9n\xe9rer des mots.","results.empty-state.outdated":"Les r\xe9sultats sont d\xe9pass\xe9.","results.empty-state.uninitialized":"Les mots g\xe9n\xe9r\xe9s \xe0 partir de vos lettres seront affich\xe9s ici.","results.input.placeholder":"Rechercher les r\xe9sultats... (RegExp)","results.insert":"Inserer","results.preview":"Pr\xe9visualisation","results.select":"S\xe9lectionner...","results.solve":"R\xe9soudre","results":"R\xe9sultats","settings.autoGroupTiles.left":"Vers la droite","settings.autoGroupTiles.null":"Ne pas grouper","settings.autoGroupTiles.right":"Vers la gauche","settings.autoGroupTiles":"Grouper les cases restantes","settings.game":"Jeu","settings.highlightUnreachableCells":"Mettre en \xe9vidence les cases inatteignables","settings.inputMode.keyboard":"Clavier","settings.inputMode.touchscreen":"\xc9cran tactile","settings.inputMode":"Mode de saisie","settings.language":"Langue","settings.removeCellFilters.always":"Toujours","settings.removeCellFilters.never":"Jamais","settings.removeCellFilters":"Supprimer automatiquement les filtres du plateau","settings.showCoordinates.alternative":"Alternative","settings.showCoordinates.original":"Original","settings.showCoordinates":"Coordonn\xe9s","settings":"Options","words.empty-state.no-words":"Pas de mots cr\xe9\xe9s - le plateau est vide.","words.input.placeholder":"Rechercher les mots... (RegExp)","words.invalid":"Incorrect","words.preview":"Pr\xe9visualisation","words.valid":"Corriger","words.validity":"Validit\xe9","words":"Mots cr\xe9\xe9s"}')}}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[631],{1216:e=>{e.exports={option:"ConfigSetting_option__pvmMK",label:"ConfigSetting_label__CeZI1"}},1384:e=>{e.exports={option:"RemoveCellFiltersSetting_option__gZXNh",label:"RemoveCellFiltersSetting_label__FF1HC"}},3748:e=>{e.exports={option:"HighlightUnreachableCellsSetting_option__czzk8",label:"HighlightUnreachableCellsSetting_label__bs1CA"}},4340:e=>{e.exports={option:"InputModeSetting_option__9tdaY",label:"InputModeSetting_label__al6kL"}},4980:e=>{e.exports={option:"AutoGroupTilesSetting_option__dp8CH",label:"AutoGroupTilesSetting_label__MIKlN"}},7874:e=>{e.exports={radio:"Radio_radio__AX_QR",checked:"Radio_checked__DUhBG",iconContent:"Radio_iconContent__Zu4m7",disabled:"Radio_disabled__8bp0O",input:"Radio_input__eCm6J",icon:"Radio_icon__6ULF0",content:"Radio_content__2T1Tf"}},7888:e=>{e.exports={option:"LocaleSetting_option__3uVpq",label:"LocaleSetting_label__VqJH9",flag:"LocaleSetting_flag__cnMgQ"}},8631:(e,l,a)=>{"use strict";a.r(l),a.d(l,{SettingsModal:()=>Z});var t=a(6029),s=a(5729),n=a(7136),i=a(7445),o=a(7809),r=a(9604),c=a(9276),d=a(2988),u=a.n(d),h=a(7874),g=a.n(h);let v=e=>{let{checked:l,children:a,className:s,disabled:n,name:i,value:o,onChange:r}=e;return(0,t.jsxs)("label",{className:u()(g().radio,s,{[g().checked]:l,[g().disabled]:n}),children:[(0,t.jsx)("input",{checked:l,className:g().input,disabled:n,name:i,type:"radio",value:o,onChange:r}),(0,t.jsx)("div",{"aria-hidden":"true",className:g().icon,children:(0,t.jsx)("div",{className:g().iconContent})}),(0,t.jsx)("div",{className:g().content,children:a})]})};var b=a(5526),m=a(8390),_=a(2214),p=a(1216),x=a.n(p),j=a(1790);let C=e=>{let{className:l,disabled:a}=e,n=(0,c.wA)(),i=(0,b.N)(m.Vv),o=(0,b.N)(m.JV),d=(0,s.useMemo)(()=>{let e,l;return e=Object.values(j.games),l=Object.values(j.languages),e.map(e=>{let a=l.find(l=>l.game===e.game&&l.locale===o);return{disabled:!(0,j.hasConfig)(e.game,o),label:a?.config.name??e.name,value:e.game}})},[o]),u=e=>{(0,r.isGame)(e.target.value)&&n(_.s.actions.changeGame(e.target.value))};return(0,t.jsx)("div",{className:l,children:d.map(e=>(0,t.jsx)(v,{checked:i===e.value,className:x().option,disabled:a||e.disabled,name:"game",value:e.value,onChange:u,children:(0,t.jsx)("div",{className:x().label,children:e.label})},e.value))})};var N=a(1734),S=a(4333),f=a(7888),w=a.n(f);let k=Object.values(N.x).sort((e,l)=>e.name.localeCompare(l.name)),M=e=>{let{className:l,disabled:a}=e,s=(0,c.wA)(),n=(0,b.N)(m.JV),i=e=>{let l=e.target.value;s(_.s.actions.changeLocale(l))};return(0,t.jsx)("div",{className:l,children:k.map(e=>{let s=S._[e.locale];return(0,t.jsx)(v,{checked:n===e.locale,className:u()(w().option,l),disabled:a,name:"locale",value:e.locale,onChange:i,children:(0,t.jsxs)("span",{className:w().label,children:[(0,t.jsx)(s,{"aria-hidden":"true",className:w().flag,role:"img"}),(0,t.jsx)("span",{children:e.label})]})},e.locale)})})};var y=a(9394),A=a.n(y);let G=e=>{let{className:l,disabled:a}=e,s=(0,c.wA)(),n=(0,o.W)(),i=(0,b.N)(m.hN),r=[{label:n("settings.showCoordinates.original"),value:"original"},{label:n("settings.showCoordinates.alternative"),value:"alternative"}],d=e=>{let l=e.target.value;s(_.s.actions.changeShowCoordinates(l))};return(0,t.jsx)("div",{className:l,children:r.map(e=>(0,t.jsx)(v,{checked:String(i)===e.value,className:A().option,disabled:a,name:"showCoordinates",value:e.value,onChange:d,children:(0,t.jsx)("div",{className:A().label,children:e.label})},e.value))})};var R=a(4340),F=a.n(R);let T=e=>{let{className:l,disabled:a}=e,s=(0,c.wA)(),n=(0,o.W)(),i=(0,b.N)(m.QN),r=[{label:n("settings.inputMode.keyboard"),value:"keyboard"},{label:n("settings.inputMode.touchscreen"),value:"touchscreen"}],d=e=>{let l=(e=>{if("keyboard"===e)return"keyboard";if("touchscreen"===e)return"touchscreen";throw Error(`"${e}" is not valid. Should be "keyboard" or "touchscreen"`)})(e.target.value);s(_.s.actions.changeInputMode(l))};return(0,t.jsx)("div",{className:l,children:r.map(e=>(0,t.jsx)(v,{checked:i===e.value,className:F().option,disabled:a,name:"inputMode",value:e.value,onChange:d,children:(0,t.jsx)("div",{className:F().label,children:e.label})},e.value))})};var U=a(4980),I=a.n(U);let E="null",H=e=>{if("left"===e||"right"===e)return e;if(e===E)return null;throw Error(`"${e}" is not valid. Should be "left", "right", or "${E}"`)},L=e=>{let{className:l,disabled:a}=e,s=(0,c.wA)(),n=(0,o.W)(),i=(0,b.N)(m.up),r=[{label:n("settings.autoGroupTiles.null"),value:E},{label:n("settings.autoGroupTiles.left"),value:"left"},{label:n("settings.autoGroupTiles.right"),value:"right"}],d=e=>{let l=H(e.target.value);s(_.s.actions.changeAutoGroupTiles(l))};return(0,t.jsx)("div",{className:l,children:r.map(e=>(0,t.jsx)(v,{checked:i===H(e.value),className:I().option,disabled:a,name:"autoGroupTiles",value:e.value,onChange:d,children:(0,t.jsx)("div",{className:I().label,children:e.label})},e.value))})};var W=a(1384),J=a.n(W);let O=e=>{let{className:l,disabled:a}=e,s=(0,c.wA)(),n=(0,o.W)(),i=(0,b.N)(m.yI),r=[{label:n("settings.removeCellFilters.always"),value:"always"},{label:n("settings.removeCellFilters.never"),value:"never"}],d=e=>{let l=(e=>{if("always"===e)return"always";if("never"===e)return"never";throw Error(`"${e}" is not valid. Should be "always" or "never"`)})(e.target.value);s(_.s.actions.changeRemoveCellFilters(l))};return(0,t.jsx)("div",{className:l,children:r.map(e=>(0,t.jsx)(v,{checked:i===e.value,className:J().option,disabled:a,name:"removeCellFilters",value:e.value,onChange:d,children:(0,t.jsx)("div",{className:J().label,children:e.label})},e.value))})};var V=a(3748),$=a.n(V);let Q=e=>{let{className:l,disabled:a}=e,s=(0,c.wA)(),n=(0,o.W)(),i=(0,b.N)(m.u_),r=[{label:n("common.off"),value:"off"},{label:n("common.on"),value:"on"}],d=e=>{s(_.s.actions.changeHighlightUnreachableCells("on"===e.target.value))};return(0,t.jsx)("div",{className:l,children:r.map(e=>(0,t.jsx)(v,{checked:(i?"on":"off")===e.value,className:$().option,disabled:a,name:"highlightUnreachableCells",value:e.value,onChange:d,children:(0,t.jsx)("div",{className:$().label,children:e.label})},e.value))})},Z=(0,s.memo)(e=>{let{className:l,isOpen:a,onClose:s}=e,r=(0,o.W)(),c=(0,i.J)();return(0,t.jsxs)(n.a,{className:l,isOpen:a,title:r("settings"),onClose:s,children:[(0,t.jsx)(n.a.Section,{label:r("settings.game"),title:r("settings.game"),children:(0,t.jsx)(C,{disabled:!a})}),(0,t.jsx)(n.a.Section,{label:r("settings.language"),title:r("settings.language"),children:(0,t.jsx)(M,{disabled:!a})}),(0,t.jsx)(n.a.Section,{label:r("settings.showCoordinates"),title:r("settings.showCoordinates"),children:(0,t.jsx)(G,{disabled:!a})}),!c&&(0,t.jsx)(n.a.Section,{label:r("settings.inputMode"),title:r("settings.inputMode"),children:(0,t.jsx)(T,{disabled:!a})}),(0,t.jsx)(n.a.Section,{label:r("settings.autoGroupTiles"),title:r("settings.autoGroupTiles"),children:(0,t.jsx)(L,{disabled:!a})}),(0,t.jsx)(n.a.Section,{label:r("settings.removeCellFilters"),title:r("settings.removeCellFilters"),children:(0,t.jsx)(O,{disabled:!a})}),(0,t.jsx)(n.a.Section,{label:r("settings.highlightUnreachableCells"),title:r("settings.highlightUnreachableCells"),children:(0,t.jsx)(Q,{disabled:!a})})]})})},9394:e=>{e.exports={option:"ShowCoordinatesSetting_option__teifi",label:"ShowCoordinatesSetting_label__h0REI"}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[663],{8663:e=>{e.exports=JSON.parse('{"cell.enter-word":"کلمه را وارد کنید","cell.filter-cell.exclude":"مقصد را حذف کنید","cell.filter-cell.include":"مقصد مورد نظر","cell.set-blank":"علامت گذاری به عنوان خالی","cell.set-not-blank":"علامت گذاری به عنوان غیر خالی","cell.tile.location":"{{coordinates}} کاشی: صفحه","cell.toggle-direction":"جهت تایپ","common.arrows":"کلیدهای جهت دار","common.blanks":"خالی","common.clear":"پاک کردن","common.close":"بستن","common.consonants":"حروف صامت","common.loading":"در حال بارگزاری","common.next":"بعدی","common.off":"خاموش","common.on":"روشن","common.points":"امتیازات","common.previous":"قبلی","common.space":"دکمه اسپیس","common.tiles":"کاشی ها","common.two-letter-tiles":"دو حرفی","common.vowels":"حروف مصوت","common.word":"کلمه","common.words":"کلمات","dictionary.empty-state.no-definitions":"کلمه در فرهنگ لغت وجود دارد، ولی معنایی برای آن ثبت نشده است.","dictionary.empty-state.no-results":"کلمه در فرهنگ لغت یافت نشد.","dictionary.empty-state.not-allowed":"این کلمه مجاز نیست.","dictionary.empty-state.uninitialized":"معنی لغت اینجا نمایش داده خواهد شد.","dictionary.input.placeholder":"جستجو در فرهنگ لغت …","dictionary.input.title":"کلمات جدا شده با کاما","dictionary":"فرهنگ لغت","empty-state.error":"خطا","empty-state.info":"اطلاعات","empty-state.success":"حله!","empty-state.warning":"اوووخ!","github":"به این پروژه در گیتهاب سر بزنید","keyMap.board-and-rack.insert-two-letter-tile":"وارد کردن کاشی دو حرفی","keyMap.board-and-rack.navigate":"حرکت","keyMap.board-and-rack.remove-tile":"حذف کاشی","keyMap.board-and-rack.submit":"حل کردن","keyMap.board-and-rack":"صفحه و طاقچه","keyMap.board.toggle-blank":"علامت/عدم علامت گذاری کاشی به عنوان خالی","keyMap.board.toggle-cell-filter":"فیلتر هدف را تغییر دهید","keyMap.board.toggle-direction":"تغییر جهت تایپ","keyMap.board":"صفحه","keyMap.rack.insert-blank":"وارد کردن کاشی خالی","keyMap.rack":"طاقچه","keyMap":"میانبر های کیبورد","menu":"منو","rack.placeholder":"لیستحرف","rack.tile.location":"({{index}}) کاشی: طاقچه","rack.touchscreen.placeholder":"لیستحرف…","remaining-tiles":"کاشی های باقی مانده","results.empty-state.no-results":"کلمه قابل استفاده پیدا نشد.","results.empty-state.outdated":"نتایج به روز نیستند، برای بروز.","results.empty-state.uninitialized":"کلمات تولید شده از حروف شما اینجا نمایش داده خواهد شد.","results.input.placeholder":"جستجو در نتایج (RegExp)","results.insert":"وارد کردن","results.preview":"پیش نمایش","results.select":"انتخاب کنید...","results.solve":"حل کن","results":"نتایج","settings.autoGroupTiles.left":"در سمت چپ","settings.autoGroupTiles.null":"کنار هم قرار نده","settings.autoGroupTiles.right":"در سمت راست","settings.autoGroupTiles":"کاشی های باقی مانده ی طاقچه را کنار هم قرار بده","settings.game":"بازی","settings.highlightUnreachableCells":"خانه‌های غیرقابل دسترس را برجسته کن","settings.inputMode.keyboard":"صفحه کلید","settings.inputMode.touchscreen":"صفحه لمسی","settings.inputMode":"حالت ورودی","settings.language":"زبان","settings.removeCellFilters.always":"همیشه","settings.removeCellFilters.never":"هرگز","settings.removeCellFilters":"فیلترها را به‌صورت خودکار از صفحه بازی حذف کن","settings.showCoordinates.alternative":"بديل","settings.showCoordinates.original":"إبداعي","settings.showCoordinates":"مختصات","settings":"تنظیمات","words.empty-state.no-words":"کلمه‌ای ساخته نشده - صفحه خالی است.","words.input.placeholder":"جستجو در کلمات (RegExp)","words.invalid":"نا معتبر","words.preview":"پیش نمایش","words.valid":"معتبر","words.validity":"اعتبار","words":"کلمات ساخته شده"}')}}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[693],{1085:(e,a,t)=>{"use strict";t.d(a,{A:()=>l});var o,s,n=t(5729);function r(){return(r=Object.assign?Object.assign.bind():function(e){for(var a=1;a<arguments.length;a++){var t=arguments[a];for(var o in t)({}).hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e}).apply(null,arguments)}let l=e=>n.createElement("svg",r({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16"},e),o||(o=n.createElement("path",{fill:"currentColor",d:"M10.5 8a2.5 2.5 0 1 1-5 0 2.5 2.5 0 0 1 5 0"})),s||(s=n.createElement("path",{fill:"currentColor",d:"M0 8s3-5.5 8-5.5S16 8 16 8s-3 5.5-8 5.5S0 8 0 8m8 3.5a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7"})))},2134:e=>{e.exports={modal:"Modal_modal__l4yBn",closeButton:"Modal_closeButton__Foob_",afterOpen:"Modal_afterOpen__yCc_m",container:"Modal_container__T5Dvn",beforeClose:"Modal_beforeClose__Q_ZUS",overlay:"Modal_overlay__nbJY5",header:"Modal_header__8HSvT",title:"Modal_title__oD_ne",content:"Modal_content__Fchkl",footer:"Modal_footer__Pw_CF"}},3648:e=>{e.exports={words:"WordsTable_words__9Fe_C",content:"WordsTable_content__htEkE",listContainer:"WordsTable_listContainer__m77nO",list:"WordsTable_list__6OOxK",stat:"WordsTable_stat__zGg6G",coordinates:"WordsTable_coordinates___JcOZ",invalid:"WordsTable_invalid__Kuvk4",valid:"WordsTable_valid__I2Cke",icon:"WordsTable_icon__rdKDm",input:"WordsTable_input__qs49E",highlight:"WordsTable_highlight__1kQUf"}},5693:(e,a,t)=>{"use strict";t.r(a),t.d(a,{WordsModal:()=>Q});var o,s,n,r=t(6029),l=t(5729),i=t(9276),c=t(3117),d=t(4056),_=t(7136),h=t(7668),u=t(1085),v=t(7809),m=t(5526),w=t(3304),p=t(164),g=t(9604),f=t(2988),x=t.n(f),b=t(2735),j=t(7852),C=t(6905),N=t(8221),y=t(8334),E=t(7445),M=t(1734),O=t(7713);function k(){return(k=Object.assign?Object.assign.bind():function(e){for(var a=1;a<arguments.length;a++){var t=arguments[a];for(var o in t)({}).hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e}).apply(null,arguments)}let W=e=>l.createElement("svg",k({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16"},e),o||(o=l.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"})),s||(s=l.createElement("path",{fill:"currentColor",d:"M5.255 5.786a.237.237 0 0 0 .241.247h.825c.138 0 .248-.113.266-.25.09-.656.54-1.134 1.342-1.134.686 0 1.314.343 1.314 1.168 0 .635-.374.927-.965 1.371-.673.489-1.206 1.06-1.168 1.987l.003.217a.25.25 0 0 0 .25.246h.811a.25.25 0 0 0 .25-.25v-.105c0-.718.273-.927 1.01-1.486.609-.463 1.244-.977 1.244-2.056 0-1.511-1.276-2.241-2.673-2.241-1.267 0-2.655.59-2.75 2.286m1.557 5.763c0 .533.425.927 1.01.927.609 0 1.028-.394 1.028-.927 0-.552-.42-.94-1.029-.94-.584 0-1.009.388-1.009.94"})));var T=t(5227),S=t(8390),A=t(1667),L=t(166),B=t(8502),V=t(5141),K=t(8202),I=t(2242),Y=t(6205);function J(){return(J=Object.assign?Object.assign.bind():function(e){for(var a=1;a<arguments.length;a++){var t=arguments[a];for(var o in t)({}).hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e}).apply(null,arguments)}let P=e=>l.createElement("svg",J({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16"},e),n||(n=l.createElement("path",{fill:"currentColor",d:"M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708"})));var F=t(3357),z=t(3648),U=t.n(z);let $=e=>{let{highlightFollowsPointer:a,highlightedIndex:t,index:o,isTouchDevice:s,style:n,words:l,onPreview:c}=e,d=(0,i.wA)(),_=(0,v.W)(),h=o===t,u=l[o],w=(0,m.N)(e=>(0,A.U$)(e,o)),g=(0,m.N)(e=>(0,A.A_)(e,o)),f=(0,m.N)(A.qN),b=_(u.isValid?"words.valid":"words.invalid"),j=u.isValid?Y.A:P,C=()=>{d(p.Y.actions.set(u))};return(0,r.jsxs)(K.f,{"aria-label":u.word,"data-testid":`word-${u.x}-${u.y}-${u.direction}`,highlighted:h,inactive:!g,style:n,onBlur:a?()=>{d(p.Y.actions.clear())}:void 0,onClick:a?void 0:()=>{h?s&&c():C()},onFocus:a?C:void 0,onMouseEnter:a?C:void 0,children:[(0,r.jsx)(I.f,{className:U().coordinates,translationKey:"settings.showCoordinates",value:w}),(0,r.jsx)(I.f,{primary:!0,translationKey:"common.word",value:u.word,children:(0,r.jsx)(V.A,{highlightClassName:U().highlight,searchWords:(0,F.Q)(f),textToHighlight:u.word})}),(0,r.jsx)(I.f,{className:U().stat,value:b,children:(0,r.jsx)(j,{"aria-label":b,className:x()(U().icon,u.isValid?U().valid:U().invalid),role:"img"})})]})},q=e=>{let{className:a,isOpen:t,onPreview:o}=e,s=(0,i.wA)(),n=(0,v.W)(),c=(0,E.J)(),d=(0,h.U)("<l"),_=!c&&!d,u=(0,m.N)(S.JV),{direction:f}=M.x[u],k=(0,m.N)(A.A7),V=(0,m.N)(A.qN),K=(0,m.N)(A.oe),I=(0,m.N)(w.k),Y=I?k.findIndex(e=>(0,g.isSameBoardWord)(e,I)):-1,J=(0,l.useMemo)(()=>({highlightFollowsPointer:_,highlightedIndex:Y,isTouchDevice:c,words:k,onPreview:o}),[_,Y,c,k,o]),P=(0,l.useCallback)(e=>{s(L.Y.actions.sort(e))},[s]),F=(0,l.useCallback)(e=>{s(L.Y.actions.changeQuery(e))},[s]),z=(0,l.useCallback)(()=>{s(p.Y.actions.clear())},[s]);return(0,l.useEffect)(()=>{t&&d&&k.length>0&&-1===Y&&s(p.Y.actions.set(k[0]))},[s,Y,t,d,k]),(0,r.jsxs)("div",{"aria-label":n("words"),className:x()(U().words,a),"data-testid":"words",role:"region",children:[(0,r.jsxs)(C.Y,{children:[(0,r.jsx)(N.I,{className:U().coordinates,Icon:O.A,id:B.mh.Coordinates,sort:K,translationKey:"settings.showCoordinates",onSort:P}),(0,r.jsx)(N.I,{id:B.mh.Word,primary:!0,sort:K,translationKey:"common.word",onSort:P}),(0,r.jsx)(N.I,{className:U().stat,Icon:W,id:B.mh.Validity,sort:K,translationKey:"words.validity",onSort:P})]}),(0,r.jsxs)("div",{"aria-live":"polite",className:U().content,children:[0===k.length&&(0,r.jsx)(j.p,{variant:"info",children:n("words.empty-state.no-words")}),k.length>0&&(0,r.jsx)("div",{className:U().listContainer,children:(0,r.jsx)(b.B8,{className:U().list,dir:f,overscanCount:T.tg,rowComponent:$,rowCount:k.length,rowHeight:T.J2,rowProps:J,onMouseLeave:_?z:void 0})})]}),k.length>0&&(0,r.jsx)(y.v,{className:U().input,placeholder:n("words.input.placeholder"),value:V,onChange:F})]})};var D=t(9386),H=t.n(D);let Q=(0,l.memo)(e=>{let{className:a,isOpen:t,onClose:o,onPreview:s}=e,n=(0,i.wA)(),g=(0,v.W)(),f=(0,m.N)(w.k),x=(0,h.U)("<l"),b=(0,l.useRef)(!1),j=(0,l.useCallback)(()=>{b.current=!0,s()},[s]);return(0,l.useEffect)(()=>{if(t)return()=>{b.current||n(p.Y.actions.clear()),b.current=!1}},[n,t]),(0,r.jsx)(_.a,{className:a,footer:x&&(0,r.jsx)(c.$,{"aria-label":g("words.preview"),disabled:!f,Icon:u.A,tooltip:g("words.preview"),onClick:j,children:g("words.preview")}),isOpen:t,title:g("words"),onClose:o,children:(0,r.jsxs)("div",{className:H().content,children:[(0,r.jsx)(q,{className:H().words,isOpen:t,onPreview:j}),(0,r.jsx)(d.b,{className:H().dictionary})]})})})},7136:(e,a,t)=>{"use strict";t.d(a,{a:()=>f});var o,s=t(6029),n=t(2988),r=t.n(n),l=t(5729),i=t(6341),c=t.n(i);function d(){return(d=Object.assign?Object.assign.bind():function(e){for(var a=1;a<arguments.length;a++){var t=arguments[a];for(var o in t)({}).hasOwnProperty.call(t,o)&&(e[o]=t[o])}return e}).apply(null,arguments)}let _=e=>l.createElement("svg",d({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16"},e),o||(o=l.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-2zm3.354 4.646L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 1 1 .708-.708"})));var h=t(5227),u=t(7809),v=t(8298),m=t(8713),w=t.n(m),p=t(2134),g=t.n(p);"u">typeof document&&c().setAppElement("#__next");let f=Object.assign(e=>{let{children:a,className:t,footer:o,isOpen:n,modalClassName:i,title:d,onClose:m}=e,w=(0,u.W)(),[p,f]=(0,l.useState)(!0),x=(0,l.useCallback)(e=>{"Escape"===e.key&&(f(!1),setTimeout(()=>{m()},0))},[m]);return(0,l.useEffect)(()=>(document.addEventListener("keydown",x),()=>{document.removeEventListener("keydown",x)}),[x]),(0,l.useEffect)(()=>{n&&f(!0)},[n]),(0,s.jsx)(c(),{aria:{modal:!0},className:{afterOpen:g().afterOpen,base:r()(g().modal,i),beforeClose:g().beforeClose},closeTimeoutMS:h.oK,contentLabel:d,isOpen:n,overlayClassName:g().overlay,role:"dialog",shouldReturnFocusAfterClose:p,onRequestClose:m,children:(0,s.jsxs)("div",{className:r()(g().container,t),children:[(0,s.jsxs)("div",{className:g().header,children:[(0,s.jsx)("h1",{className:g().title,children:d}),(0,s.jsx)(v.K,{"aria-label":w("common.close"),className:g().closeButton,Icon:_,tooltip:w("common.close"),onClick:m})]}),(0,s.jsx)("div",{className:g().content,children:a}),o&&(0,s.jsx)("div",{className:g().footer,children:o})]})})},{Section:e=>{let{children:a,className:t,label:o,title:n}=e;return(0,s.jsxs)("section",{"aria-label":o,className:r()(w().section,t),children:[(0,s.jsx)("h2",{className:w().heading,children:n}),(0,s.jsx)("div",{children:a})]})}})},8713:e=>{e.exports={section:"Section_section__6Eczy",heading:"Section_heading__5Vnag"}},9386:e=>{e.exports={content:"WordsModal_content___JDXn",words:"WordsModal_words___d3cr",dictionary:"WordsModal_dictionary__VJV02"}}}]);