scrabble-solver 2.11.8 → 2.12.0

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 (147) hide show
  1. package/lerna.json +1 -1
  2. package/package.json +14 -14
  3. package/packages/configs/build/literaki/literaki.js +7 -7
  4. package/packages/configs/build/scrabble/scrabble.js +7 -7
  5. package/packages/configs/package.json +3 -3
  6. package/packages/configs/src/literaki/literaki.ts +7 -7
  7. package/packages/configs/src/scrabble/scrabble.ts +8 -8
  8. package/packages/constants/package.json +1 -1
  9. package/packages/dictionaries/package-lock.json +10 -3
  10. package/packages/dictionaries/package.json +4 -4
  11. package/packages/logger/package-lock.json +227 -6
  12. package/packages/logger/package.json +1 -1
  13. package/packages/scrabble-solver/.next/BUILD_ID +1 -1
  14. package/packages/scrabble-solver/.next/build-manifest.json +7 -7
  15. package/packages/scrabble-solver/.next/cache/.tsbuildinfo +1 -1
  16. package/packages/scrabble-solver/.next/cache/eslint/.cache_8dgz12 +1 -1
  17. package/packages/scrabble-solver/.next/cache/next-server.js.nft.json +1 -1
  18. package/packages/scrabble-solver/.next/cache/webpack/client-production/0.pack +0 -0
  19. package/packages/scrabble-solver/.next/cache/webpack/client-production/index.pack +0 -0
  20. package/packages/scrabble-solver/.next/cache/webpack/edge-server-production/0.pack +0 -0
  21. package/packages/scrabble-solver/.next/cache/webpack/edge-server-production/index.pack +0 -0
  22. package/packages/scrabble-solver/.next/cache/webpack/server-production/0.pack +0 -0
  23. package/packages/scrabble-solver/.next/cache/webpack/server-production/index.pack +0 -0
  24. package/packages/scrabble-solver/.next/next-server.js.nft.json +1 -1
  25. package/packages/scrabble-solver/.next/prerender-manifest.json +1 -1
  26. package/packages/scrabble-solver/.next/routes-manifest.json +1 -1
  27. package/packages/scrabble-solver/.next/server/chunks/131.js +153 -115
  28. package/packages/scrabble-solver/.next/server/chunks/277.js +1426 -718
  29. package/packages/scrabble-solver/.next/server/chunks/44.js +6 -3
  30. package/packages/scrabble-solver/.next/server/chunks/50.js +20 -78
  31. package/packages/scrabble-solver/.next/server/chunks/911.js +14 -14
  32. package/packages/scrabble-solver/.next/server/middleware-build-manifest.js +1 -1
  33. package/packages/scrabble-solver/.next/server/pages/404.html +1 -1
  34. package/packages/scrabble-solver/.next/server/pages/404.js.nft.json +1 -1
  35. package/packages/scrabble-solver/.next/server/pages/500.html +1 -1
  36. package/packages/scrabble-solver/.next/server/pages/_app.js +16 -0
  37. package/packages/scrabble-solver/.next/server/pages/_app.js.nft.json +1 -1
  38. package/packages/scrabble-solver/.next/server/pages/_document.js.nft.json +1 -1
  39. package/packages/scrabble-solver/.next/server/pages/api/solve.js +43 -11
  40. package/packages/scrabble-solver/.next/server/pages/index.html +1 -1
  41. package/packages/scrabble-solver/.next/server/pages/index.js +152 -11
  42. package/packages/scrabble-solver/.next/server/pages/index.js.nft.json +1 -1
  43. package/packages/scrabble-solver/.next/server/pages/index.json +1 -1
  44. package/packages/scrabble-solver/.next/server/pages-manifest.json +2 -2
  45. package/packages/scrabble-solver/.next/static/chunks/pages/{404-ca203fa27afc37d8.js → 404-b4b5ce15153d4825.js} +1 -1
  46. package/packages/scrabble-solver/.next/static/chunks/pages/_app-bea4539a6b8042de.js +32 -0
  47. package/packages/scrabble-solver/.next/static/chunks/pages/index-4e8566409753e1c3.js +1 -0
  48. package/packages/scrabble-solver/.next/static/css/58053f9594647860.css +2 -0
  49. package/packages/scrabble-solver/.next/static/css/{c6e0e01f44fc0425.css → 60e8258da7362a1a.css} +1 -1
  50. package/packages/scrabble-solver/.next/static/fsjQvvJ13WNxBdMioL4sc/_buildManifest.js +1 -0
  51. package/packages/scrabble-solver/.next/trace +52 -50
  52. package/packages/scrabble-solver/package-lock.json +5138 -304
  53. package/packages/scrabble-solver/package.json +15 -12
  54. package/packages/scrabble-solver/src/components/Board/Board.module.scss +18 -4
  55. package/packages/scrabble-solver/src/components/Board/Board.tsx +145 -76
  56. package/packages/scrabble-solver/src/components/Board/BoardPure.tsx +32 -40
  57. package/packages/scrabble-solver/src/components/Board/components/Actions/Actions.module.scss +6 -17
  58. package/packages/scrabble-solver/src/components/Board/components/Actions/Actions.tsx +36 -18
  59. package/packages/scrabble-solver/src/components/Board/components/Cell/Cell.module.scss +12 -13
  60. package/packages/scrabble-solver/src/components/Board/components/Cell/Cell.tsx +53 -3
  61. package/packages/scrabble-solver/src/components/Board/components/InputPrompt/InputPrompt.module.scss +48 -0
  62. package/packages/scrabble-solver/src/components/Board/components/InputPrompt/InputPrompt.tsx +81 -0
  63. package/packages/scrabble-solver/src/components/Board/components/InputPrompt/index.ts +1 -0
  64. package/packages/scrabble-solver/src/components/Board/components/ToggleDirectionButton/ToggleDirectionButton.module.scss +21 -0
  65. package/packages/scrabble-solver/src/components/Board/components/ToggleDirectionButton/ToggleDirectionButton.tsx +34 -0
  66. package/packages/scrabble-solver/src/components/Board/components/ToggleDirectionButton/index.ts +1 -0
  67. package/packages/scrabble-solver/src/components/Board/components/index.ts +2 -0
  68. package/packages/scrabble-solver/src/components/Board/hooks/index.ts +4 -0
  69. package/packages/scrabble-solver/src/components/Board/hooks/useBoardStyle.ts +27 -0
  70. package/packages/scrabble-solver/src/components/Board/hooks/useFloatingActions.ts +22 -0
  71. package/packages/scrabble-solver/src/components/Board/hooks/useFloatingFocus.ts +10 -0
  72. package/packages/scrabble-solver/src/components/Board/hooks/useFloatingInputPrompt.ts +19 -0
  73. package/packages/scrabble-solver/src/components/Board/hooks/useGrid.ts +2 -1
  74. package/packages/scrabble-solver/src/components/NavButtons/NavButtons.tsx +2 -2
  75. package/packages/scrabble-solver/src/components/Rack/Rack.module.scss +6 -6
  76. package/packages/scrabble-solver/src/components/Rack/Rack.tsx +98 -23
  77. package/packages/scrabble-solver/src/components/Rack/components/InputPrompt/InputPrompt.module.scss +22 -0
  78. package/packages/scrabble-solver/src/components/Rack/components/InputPrompt/InputPrompt.tsx +89 -0
  79. package/packages/scrabble-solver/src/components/Rack/components/InputPrompt/index.ts +1 -0
  80. package/packages/scrabble-solver/src/components/Rack/components/RackTile/RackTile.module.scss +11 -0
  81. package/packages/scrabble-solver/src/components/Rack/{RackTile.tsx → components/RackTile/RackTile.tsx} +47 -7
  82. package/packages/scrabble-solver/src/components/Rack/components/RackTile/index.ts +1 -0
  83. package/packages/scrabble-solver/src/components/Rack/components/index.ts +2 -0
  84. package/packages/scrabble-solver/src/components/Radio/Radio.module.scss +0 -8
  85. package/packages/scrabble-solver/src/components/Results/Cell.tsx +4 -3
  86. package/packages/scrabble-solver/src/components/Results/Result.tsx +6 -2
  87. package/packages/scrabble-solver/src/components/Results/Results.module.scss +6 -0
  88. package/packages/scrabble-solver/src/components/Solver/Solver.module.scss +0 -20
  89. package/packages/scrabble-solver/src/components/Solver/Solver.tsx +2 -4
  90. package/packages/scrabble-solver/src/components/Solver/components/ResultCandidatePicker/ResultCandidatePicker.tsx +2 -10
  91. package/packages/scrabble-solver/src/components/Solver/components/index.ts +0 -1
  92. package/packages/scrabble-solver/src/components/Tile/Tile.module.scss +1 -0
  93. package/packages/scrabble-solver/src/components/Tile/Tile.tsx +8 -6
  94. package/packages/scrabble-solver/src/components/Tile/TilePure.tsx +8 -0
  95. package/packages/scrabble-solver/src/hooks/useAppLayout.ts +3 -1
  96. package/packages/scrabble-solver/src/hooks/useLocalStorage.ts +8 -0
  97. package/packages/scrabble-solver/src/i18n/de.json +6 -1
  98. package/packages/scrabble-solver/src/i18n/en.json +6 -1
  99. package/packages/scrabble-solver/src/i18n/es.json +6 -1
  100. package/packages/scrabble-solver/src/i18n/fa.json +6 -1
  101. package/packages/scrabble-solver/src/i18n/fr.json +6 -1
  102. package/packages/scrabble-solver/src/i18n/pl.json +6 -1
  103. package/packages/scrabble-solver/src/icons/Keyboard.svg +4 -3
  104. package/packages/scrabble-solver/src/icons/KeyboardFill.svg +4 -0
  105. package/packages/scrabble-solver/src/icons/index.ts +1 -0
  106. package/packages/scrabble-solver/src/lib/extractCharacters.test.ts +26 -0
  107. package/packages/scrabble-solver/src/lib/extractCharacters.ts +11 -9
  108. package/packages/scrabble-solver/src/lib/extractCharactersByCase.test.ts +31 -0
  109. package/packages/scrabble-solver/src/lib/extractCharactersByCase.ts +31 -0
  110. package/packages/scrabble-solver/src/lib/index.ts +3 -1
  111. package/packages/scrabble-solver/src/lib/isUpperCase.ts +7 -0
  112. package/packages/scrabble-solver/src/modals/SettingsModal/SettingsModal.tsx +5 -1
  113. package/packages/scrabble-solver/src/modals/SettingsModal/components/InputModeSetting/InputModeSetting.module.scss +12 -0
  114. package/packages/scrabble-solver/src/modals/SettingsModal/components/InputModeSetting/InputModeSetting.tsx +55 -0
  115. package/packages/scrabble-solver/src/modals/SettingsModal/components/InputModeSetting/index.ts +1 -0
  116. package/packages/scrabble-solver/src/modals/SettingsModal/components/InputModeSetting/lib.ts +13 -0
  117. package/packages/scrabble-solver/src/modals/SettingsModal/components/InputModeSetting/types.ts +7 -0
  118. package/packages/scrabble-solver/src/modals/SettingsModal/components/index.ts +1 -0
  119. package/packages/scrabble-solver/src/state/localStorage.ts +10 -1
  120. package/packages/scrabble-solver/src/state/selectors.ts +2 -0
  121. package/packages/scrabble-solver/src/state/slices/settingsInitialState.ts +4 -1
  122. package/packages/scrabble-solver/src/state/slices/settingsSlice.ts +6 -1
  123. package/packages/scrabble-solver/src/styles/mixins.scss +1 -0
  124. package/packages/scrabble-solver/src/styles/variables.scss +1 -0
  125. package/packages/scrabble-solver/src/types/index.ts +7 -0
  126. package/packages/solver/build/getCellsScore.js +3 -2
  127. package/packages/solver/package-lock.json +10 -3
  128. package/packages/solver/package.json +5 -5
  129. package/packages/solver/src/getCellsScore.ts +3 -2
  130. package/packages/types/build/Config.d.ts +2 -0
  131. package/packages/types/build/Config.js +3 -0
  132. package/packages/types/build/ConfigJson.d.ts +2 -0
  133. package/packages/types/package.json +2 -2
  134. package/packages/types/src/Config.ts +5 -0
  135. package/packages/types/src/ConfigJson.ts +2 -0
  136. package/packages/word-definitions/package-lock.json +2 -2
  137. package/packages/word-definitions/package.json +2 -2
  138. package/packages/word-lists/package-lock.json +403 -11
  139. package/packages/word-lists/package.json +2 -2
  140. package/packages/scrabble-solver/.next/static/5ttGCAW8jcIKxpR8om9fK/_buildManifest.js +0 -1
  141. package/packages/scrabble-solver/.next/static/chunks/pages/_app-76a8840b6244d5a2.js +0 -28
  142. package/packages/scrabble-solver/.next/static/chunks/pages/index-6894f40e6cac9243.js +0 -1
  143. package/packages/scrabble-solver/.next/static/css/af871fef886ef5b7.css +0 -2
  144. package/packages/scrabble-solver/src/components/Solver/components/FloatingSolveButton/FloatingSolveButton.module.scss +0 -7
  145. package/packages/scrabble-solver/src/components/Solver/components/FloatingSolveButton/FloatingSolveButton.tsx +0 -53
  146. package/packages/scrabble-solver/src/components/Solver/components/FloatingSolveButton/index.ts +0 -1
  147. /package/packages/scrabble-solver/.next/static/{5ttGCAW8jcIKxpR8om9fK → fsjQvvJ13WNxBdMioL4sc}/_ssgManifest.js +0 -0
package/lerna.json CHANGED
@@ -6,5 +6,5 @@
6
6
  "access": "public"
7
7
  },
8
8
  "tagVersionPrefix": "",
9
- "version": "2.11.8"
9
+ "version": "2.12.0"
10
10
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "scrabble-solver",
3
- "version": "2.11.8",
3
+ "version": "2.12.0",
4
4
  "description": "Scrabble Solver 2 - Free, open-source, and cross-platform analysis tool for Scrabble & Literaki. Quickly find top scoring words using given letters and board state. Available in English, French, German, Polish & Spanish.",
5
5
  "keywords": [
6
6
  "Scrabble",
@@ -74,31 +74,31 @@
74
74
  },
75
75
  "homepage": "https://github.com/kamilmielnik/scrabble-solver#readme",
76
76
  "dependencies": {
77
- "lerna": "^6.5.1",
77
+ "lerna": "^6.6.1",
78
78
  "npm-run-all": "^4.1.5",
79
- "open-cli": "^7.1.0"
79
+ "open-cli": "^7.2.0"
80
80
  },
81
81
  "devDependencies": {
82
- "@babel/core": "^7.21.3",
82
+ "@babel/core": "^7.21.4",
83
83
  "@babel/plugin-proposal-class-properties": "^7.18.6",
84
- "@babel/preset-env": "^7.20.2",
84
+ "@babel/preset-env": "^7.21.4",
85
85
  "@types/jest": "^29.5.0",
86
- "@types/node": "^18.15.3",
87
- "@typescript-eslint/eslint-plugin": "^5.55.0",
88
- "@typescript-eslint/parser": "^5.55.0",
86
+ "@types/node": "^18.15.11",
87
+ "@typescript-eslint/eslint-plugin": "^5.57.0",
88
+ "@typescript-eslint/parser": "^5.57.0",
89
89
  "babel-eslint": "10.1.0",
90
- "eslint": "^8.36.0",
91
- "eslint-config-prettier": "^8.7.0",
90
+ "eslint": "^8.37.0",
91
+ "eslint-config-prettier": "^8.8.0",
92
92
  "eslint-import-resolver-node": "^0.3.7",
93
93
  "eslint-plugin-import": "^2.27.5",
94
94
  "eslint-plugin-prettier": "^4.2.1",
95
95
  "eslint-plugin-react": "^7.32.2",
96
96
  "eslint-plugin-react-hooks": "^4.6.0",
97
97
  "jest": "29.5.0",
98
- "np": "^7.6.3",
99
- "prettier": "^2.8.4",
100
- "rimraf": "^4.4.0",
98
+ "np": "^7.7.0",
99
+ "prettier": "^2.8.7",
100
+ "rimraf": "^4.4.1",
101
101
  "ts-jest": "^29.0.5",
102
- "typescript": "^5.0.2"
102
+ "typescript": "^5.0.3"
103
103
  }
104
104
  }
@@ -20,12 +20,12 @@ const base = {
20
20
  const literaki = {
21
21
  id: base.id,
22
22
  name: base.name,
23
- [types_1.Locale.DE_DE]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesDe }),
24
- [types_1.Locale.EN_GB]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesEn }),
25
- [types_1.Locale.EN_US]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesEn }),
26
- [types_1.Locale.ES_ES]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesEs }),
27
- [types_1.Locale.FA_IR]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesFa }),
28
- [types_1.Locale.FR_FR]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesFr }),
29
- [types_1.Locale.PL_PL]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesPl }),
23
+ [types_1.Locale.DE_DE]: types_1.Config.fromJson({ ...base, locale: types_1.Locale.EN_GB, tiles: tiles_1.tilesDe }),
24
+ [types_1.Locale.EN_GB]: types_1.Config.fromJson({ ...base, locale: types_1.Locale.DE_DE, tiles: tiles_1.tilesEn }),
25
+ [types_1.Locale.EN_US]: types_1.Config.fromJson({ ...base, locale: types_1.Locale.EN_US, tiles: tiles_1.tilesEn }),
26
+ [types_1.Locale.ES_ES]: types_1.Config.fromJson({ ...base, locale: types_1.Locale.ES_ES, tiles: tiles_1.tilesEs }),
27
+ [types_1.Locale.FA_IR]: types_1.Config.fromJson({ ...base, locale: types_1.Locale.FA_IR, tiles: tiles_1.tilesFa }),
28
+ [types_1.Locale.FR_FR]: types_1.Config.fromJson({ ...base, locale: types_1.Locale.FR_FR, tiles: tiles_1.tilesFr }),
29
+ [types_1.Locale.PL_PL]: types_1.Config.fromJson({ ...base, locale: types_1.Locale.PL_PL, tiles: tiles_1.tilesPl }),
30
30
  };
31
31
  exports.default = literaki;
@@ -20,12 +20,12 @@ const base = {
20
20
  const scrabble = {
21
21
  id: base.id,
22
22
  name: base.name,
23
- [types_1.Locale.EN_GB]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesEn }),
24
- [types_1.Locale.DE_DE]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesDe }),
25
- [types_1.Locale.EN_US]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesEn }),
26
- [types_1.Locale.ES_ES]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesEs }),
27
- [types_1.Locale.FA_IR]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesFa }),
28
- [types_1.Locale.FR_FR]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesFr }),
29
- [types_1.Locale.PL_PL]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesPl }),
23
+ [types_1.Locale.EN_GB]: types_1.Config.fromJson({ ...base, locale: types_1.Locale.EN_GB, tiles: tiles_1.tilesEn }),
24
+ [types_1.Locale.DE_DE]: types_1.Config.fromJson({ ...base, locale: types_1.Locale.DE_DE, tiles: tiles_1.tilesDe }),
25
+ [types_1.Locale.EN_US]: types_1.Config.fromJson({ ...base, locale: types_1.Locale.EN_US, tiles: tiles_1.tilesEn }),
26
+ [types_1.Locale.ES_ES]: types_1.Config.fromJson({ ...base, locale: types_1.Locale.ES_ES, tiles: tiles_1.tilesEs }),
27
+ [types_1.Locale.FA_IR]: types_1.Config.fromJson({ ...base, locale: types_1.Locale.FA_IR, tiles: tiles_1.tilesFa }),
28
+ [types_1.Locale.FR_FR]: types_1.Config.fromJson({ ...base, locale: types_1.Locale.FR_FR, tiles: tiles_1.tilesFr }),
29
+ [types_1.Locale.PL_PL]: types_1.Config.fromJson({ ...base, locale: types_1.Locale.PL_PL, tiles: tiles_1.tilesPl }),
30
30
  };
31
31
  exports.default = scrabble;
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@scrabble-solver/configs",
3
- "version": "2.11.8",
3
+ "version": "2.12.0",
4
4
  "description": "Scrabble Solver 2 - Configs",
5
5
  "main": "build/index.js",
6
6
  "types": "build/index.d.ts",
@@ -24,8 +24,8 @@
24
24
  "clean:force": "npm run clean && rimraf package-lock.json"
25
25
  },
26
26
  "dependencies": {
27
- "@scrabble-solver/constants": "^2.11.8",
28
- "@scrabble-solver/types": "^2.11.8"
27
+ "@scrabble-solver/constants": "^2.12.0",
28
+ "@scrabble-solver/types": "^2.12.0"
29
29
  },
30
30
  "gitHead": "1e2d1ad49a288d4a44196d8e3336740da132c637"
31
31
  }
@@ -18,13 +18,13 @@ const base = {
18
18
  const literaki = {
19
19
  id: base.id,
20
20
  name: base.name,
21
- [Locale.DE_DE]: Config.fromJson({ ...base, tiles: tilesDe }),
22
- [Locale.EN_GB]: Config.fromJson({ ...base, tiles: tilesEn }),
23
- [Locale.EN_US]: Config.fromJson({ ...base, tiles: tilesEn }),
24
- [Locale.ES_ES]: Config.fromJson({ ...base, tiles: tilesEs }),
25
- [Locale.FA_IR]: Config.fromJson({ ...base, tiles: tilesFa }),
26
- [Locale.FR_FR]: Config.fromJson({ ...base, tiles: tilesFr }),
27
- [Locale.PL_PL]: Config.fromJson({ ...base, tiles: tilesPl }),
21
+ [Locale.DE_DE]: Config.fromJson({ ...base, locale: Locale.EN_GB, tiles: tilesDe }),
22
+ [Locale.EN_GB]: Config.fromJson({ ...base, locale: Locale.DE_DE, tiles: tilesEn }),
23
+ [Locale.EN_US]: Config.fromJson({ ...base, locale: Locale.EN_US, tiles: tilesEn }),
24
+ [Locale.ES_ES]: Config.fromJson({ ...base, locale: Locale.ES_ES, tiles: tilesEs }),
25
+ [Locale.FA_IR]: Config.fromJson({ ...base, locale: Locale.FA_IR, tiles: tilesFa }),
26
+ [Locale.FR_FR]: Config.fromJson({ ...base, locale: Locale.FR_FR, tiles: tilesFr }),
27
+ [Locale.PL_PL]: Config.fromJson({ ...base, locale: Locale.PL_PL, tiles: tilesPl }),
28
28
  };
29
29
 
30
30
  export default literaki;
@@ -1,7 +1,7 @@
1
1
  import { Config, Locale } from '@scrabble-solver/types';
2
2
 
3
3
  import bonuses from './bonuses';
4
- import { tilesEn, tilesEs, tilesFa, tilesFr, tilesPl, tilesDe } from './tiles';
4
+ import { tilesDe, tilesEn, tilesEs, tilesFa, tilesFr, tilesPl } from './tiles';
5
5
 
6
6
  const base = {
7
7
  allTilesBonusScore: 50,
@@ -18,13 +18,13 @@ const base = {
18
18
  const scrabble = {
19
19
  id: base.id,
20
20
  name: base.name,
21
- [Locale.EN_GB]: Config.fromJson({ ...base, tiles: tilesEn }),
22
- [Locale.DE_DE]: Config.fromJson({ ...base, tiles: tilesDe }),
23
- [Locale.EN_US]: Config.fromJson({ ...base, tiles: tilesEn }),
24
- [Locale.ES_ES]: Config.fromJson({ ...base, tiles: tilesEs }),
25
- [Locale.FA_IR]: Config.fromJson({ ...base, tiles: tilesFa }),
26
- [Locale.FR_FR]: Config.fromJson({ ...base, tiles: tilesFr }),
27
- [Locale.PL_PL]: Config.fromJson({ ...base, tiles: tilesPl }),
21
+ [Locale.EN_GB]: Config.fromJson({ ...base, locale: Locale.EN_GB, tiles: tilesEn }),
22
+ [Locale.DE_DE]: Config.fromJson({ ...base, locale: Locale.DE_DE, tiles: tilesDe }),
23
+ [Locale.EN_US]: Config.fromJson({ ...base, locale: Locale.EN_US, tiles: tilesEn }),
24
+ [Locale.ES_ES]: Config.fromJson({ ...base, locale: Locale.ES_ES, tiles: tilesEs }),
25
+ [Locale.FA_IR]: Config.fromJson({ ...base, locale: Locale.FA_IR, tiles: tilesFa }),
26
+ [Locale.FR_FR]: Config.fromJson({ ...base, locale: Locale.FR_FR, tiles: tilesFr }),
27
+ [Locale.PL_PL]: Config.fromJson({ ...base, locale: Locale.PL_PL, tiles: tilesPl }),
28
28
  };
29
29
 
30
30
  export default scrabble;
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@scrabble-solver/constants",
3
- "version": "2.11.8",
3
+ "version": "2.12.0",
4
4
  "description": "Scrabble Solver 2 - Constants",
5
5
  "main": "build/index.js",
6
6
  "types": "build/index.d.ts",
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@scrabble-solver/dictionaries",
3
- "version": "2.11.8",
4
- "lockfileVersion": 3,
3
+ "version": "2.12.0",
4
+ "lockfileVersion": 2,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "@scrabble-solver/dictionaries",
9
- "version": "2.11.8",
9
+ "version": "2.12.0",
10
10
  "license": "CC-BY-NC-ND-4.0",
11
11
  "dependencies": {
12
12
  "@kamilmielnik/trie": "^2.0.1"
@@ -24,5 +24,12 @@
24
24
  "node": ">=16"
25
25
  }
26
26
  }
27
+ },
28
+ "dependencies": {
29
+ "@kamilmielnik/trie": {
30
+ "version": "2.0.1",
31
+ "resolved": "https://registry.npmjs.org/@kamilmielnik/trie/-/trie-2.0.1.tgz",
32
+ "integrity": "sha512-6Ulw5/xgFRadHsx0uVnpOxB2E2ZO2osnaakI26yS3RMlww580JiaQEfXUmQjXZcmOjcO+HrZ0CWjRDhoDYKHbg=="
33
+ }
27
34
  }
28
35
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@scrabble-solver/dictionaries",
3
- "version": "2.11.8",
3
+ "version": "2.12.0",
4
4
  "description": "Scrabble Solver 2 - Dictionaries",
5
5
  "main": "build/index.js",
6
6
  "types": "build/index.d.ts",
@@ -31,9 +31,9 @@
31
31
  },
32
32
  "dependencies": {
33
33
  "@kamilmielnik/trie": "^2.0.1",
34
- "@scrabble-solver/logger": "^2.11.8",
35
- "@scrabble-solver/types": "^2.11.8",
36
- "@scrabble-solver/word-lists": "^2.11.8"
34
+ "@scrabble-solver/logger": "^2.12.0",
35
+ "@scrabble-solver/types": "^2.12.0",
36
+ "@scrabble-solver/word-lists": "^2.12.0"
37
37
  },
38
38
  "gitHead": "1e2d1ad49a288d4a44196d8e3336740da132c637"
39
39
  }
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@scrabble-solver/logger",
3
- "version": "2.11.8",
4
- "lockfileVersion": 3,
3
+ "version": "2.12.0",
4
+ "lockfileVersion": 2,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "@scrabble-solver/logger",
9
- "version": "2.11.8",
9
+ "version": "2.12.0",
10
10
  "license": "CC-BY-NC-ND-4.0",
11
11
  "dependencies": {
12
12
  "winston": "^3.8.2"
@@ -193,9 +193,9 @@
193
193
  ]
194
194
  },
195
195
  "node_modules/safe-stable-stringify": {
196
- "version": "2.4.2",
197
- "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.2.tgz",
198
- "integrity": "sha512-gMxvPJYhP0O9n2pvcfYfIuYgbledAOJFcqRThtPRmjscaipiwcwPPKLytpVzMkG2HAN87Qmo2d4PtGiri1dSLA==",
196
+ "version": "2.4.3",
197
+ "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz",
198
+ "integrity": "sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==",
199
199
  "engines": {
200
200
  "node": ">=10"
201
201
  }
@@ -273,5 +273,226 @@
273
273
  "node": ">= 6.4.0"
274
274
  }
275
275
  }
276
+ },
277
+ "dependencies": {
278
+ "@colors/colors": {
279
+ "version": "1.5.0",
280
+ "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz",
281
+ "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ=="
282
+ },
283
+ "@dabh/diagnostics": {
284
+ "version": "2.0.3",
285
+ "resolved": "https://registry.npmjs.org/@dabh/diagnostics/-/diagnostics-2.0.3.tgz",
286
+ "integrity": "sha512-hrlQOIi7hAfzsMqlGSFyVucrx38O+j6wiGOf//H2ecvIEqYN4ADBSS2iLMh5UFyDunCNniUIPk/q3riFv45xRA==",
287
+ "requires": {
288
+ "colorspace": "1.1.x",
289
+ "enabled": "2.0.x",
290
+ "kuler": "^2.0.0"
291
+ }
292
+ },
293
+ "@types/triple-beam": {
294
+ "version": "1.3.2",
295
+ "resolved": "https://registry.npmjs.org/@types/triple-beam/-/triple-beam-1.3.2.tgz",
296
+ "integrity": "sha512-txGIh+0eDFzKGC25zORnswy+br1Ha7hj5cMVwKIU7+s0U2AxxJru/jZSMU6OC9MJWP6+pc/hc6ZjyZShpsyY2g=="
297
+ },
298
+ "@types/winston": {
299
+ "version": "2.4.4",
300
+ "resolved": "https://registry.npmjs.org/@types/winston/-/winston-2.4.4.tgz",
301
+ "integrity": "sha512-BVGCztsypW8EYwJ+Hq+QNYiT/MUyCif0ouBH+flrY66O5W+KIXAMML6E/0fJpm7VjIzgangahl5S03bJJQGrZw==",
302
+ "dev": true,
303
+ "requires": {
304
+ "winston": "*"
305
+ }
306
+ },
307
+ "async": {
308
+ "version": "3.2.4",
309
+ "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz",
310
+ "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ=="
311
+ },
312
+ "color": {
313
+ "version": "3.2.1",
314
+ "resolved": "https://registry.npmjs.org/color/-/color-3.2.1.tgz",
315
+ "integrity": "sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==",
316
+ "requires": {
317
+ "color-convert": "^1.9.3",
318
+ "color-string": "^1.6.0"
319
+ }
320
+ },
321
+ "color-convert": {
322
+ "version": "1.9.3",
323
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
324
+ "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
325
+ "requires": {
326
+ "color-name": "1.1.3"
327
+ }
328
+ },
329
+ "color-name": {
330
+ "version": "1.1.3",
331
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
332
+ "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw=="
333
+ },
334
+ "color-string": {
335
+ "version": "1.9.1",
336
+ "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz",
337
+ "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==",
338
+ "requires": {
339
+ "color-name": "^1.0.0",
340
+ "simple-swizzle": "^0.2.2"
341
+ }
342
+ },
343
+ "colorspace": {
344
+ "version": "1.1.4",
345
+ "resolved": "https://registry.npmjs.org/colorspace/-/colorspace-1.1.4.tgz",
346
+ "integrity": "sha512-BgvKJiuVu1igBUF2kEjRCZXol6wiiGbY5ipL/oVPwm0BL9sIpMIzM8IK7vwuxIIzOXMV3Ey5w+vxhm0rR/TN8w==",
347
+ "requires": {
348
+ "color": "^3.1.3",
349
+ "text-hex": "1.0.x"
350
+ }
351
+ },
352
+ "enabled": {
353
+ "version": "2.0.0",
354
+ "resolved": "https://registry.npmjs.org/enabled/-/enabled-2.0.0.tgz",
355
+ "integrity": "sha512-AKrN98kuwOzMIdAizXGI86UFBoo26CL21UM763y1h/GMSJ4/OHU9k2YlsmBpyScFo/wbLzWQJBMCW4+IO3/+OQ=="
356
+ },
357
+ "fecha": {
358
+ "version": "4.2.3",
359
+ "resolved": "https://registry.npmjs.org/fecha/-/fecha-4.2.3.tgz",
360
+ "integrity": "sha512-OP2IUU6HeYKJi3i0z4A19kHMQoLVs4Hc+DPqqxI2h/DPZHTm/vjsfC6P0b4jCMy14XizLBqvndQ+UilD7707Jw=="
361
+ },
362
+ "fn.name": {
363
+ "version": "1.1.0",
364
+ "resolved": "https://registry.npmjs.org/fn.name/-/fn.name-1.1.0.tgz",
365
+ "integrity": "sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw=="
366
+ },
367
+ "inherits": {
368
+ "version": "2.0.4",
369
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
370
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
371
+ },
372
+ "is-arrayish": {
373
+ "version": "0.3.2",
374
+ "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz",
375
+ "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ=="
376
+ },
377
+ "is-stream": {
378
+ "version": "2.0.1",
379
+ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz",
380
+ "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg=="
381
+ },
382
+ "kuler": {
383
+ "version": "2.0.0",
384
+ "resolved": "https://registry.npmjs.org/kuler/-/kuler-2.0.0.tgz",
385
+ "integrity": "sha512-Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A=="
386
+ },
387
+ "logform": {
388
+ "version": "2.5.1",
389
+ "resolved": "https://registry.npmjs.org/logform/-/logform-2.5.1.tgz",
390
+ "integrity": "sha512-9FyqAm9o9NKKfiAKfZoYo9bGXXuwMkxQiQttkT4YjjVtQVIQtK6LmVtlxmCaFswo6N4AfEkHqZTV0taDtPotNg==",
391
+ "requires": {
392
+ "@colors/colors": "1.5.0",
393
+ "@types/triple-beam": "^1.3.2",
394
+ "fecha": "^4.2.0",
395
+ "ms": "^2.1.1",
396
+ "safe-stable-stringify": "^2.3.1",
397
+ "triple-beam": "^1.3.0"
398
+ }
399
+ },
400
+ "ms": {
401
+ "version": "2.1.3",
402
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
403
+ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="
404
+ },
405
+ "one-time": {
406
+ "version": "1.0.0",
407
+ "resolved": "https://registry.npmjs.org/one-time/-/one-time-1.0.0.tgz",
408
+ "integrity": "sha512-5DXOiRKwuSEcQ/l0kGCF6Q3jcADFv5tSmRaJck/OqkVFcOzutB134KRSfF0xDrL39MNnqxbHBbUUcjZIhTgb2g==",
409
+ "requires": {
410
+ "fn.name": "1.x.x"
411
+ }
412
+ },
413
+ "readable-stream": {
414
+ "version": "3.6.2",
415
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz",
416
+ "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==",
417
+ "requires": {
418
+ "inherits": "^2.0.3",
419
+ "string_decoder": "^1.1.1",
420
+ "util-deprecate": "^1.0.1"
421
+ }
422
+ },
423
+ "safe-buffer": {
424
+ "version": "5.2.1",
425
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
426
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ=="
427
+ },
428
+ "safe-stable-stringify": {
429
+ "version": "2.4.3",
430
+ "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz",
431
+ "integrity": "sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g=="
432
+ },
433
+ "simple-swizzle": {
434
+ "version": "0.2.2",
435
+ "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz",
436
+ "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==",
437
+ "requires": {
438
+ "is-arrayish": "^0.3.1"
439
+ }
440
+ },
441
+ "stack-trace": {
442
+ "version": "0.0.10",
443
+ "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz",
444
+ "integrity": "sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg=="
445
+ },
446
+ "string_decoder": {
447
+ "version": "1.3.0",
448
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
449
+ "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
450
+ "requires": {
451
+ "safe-buffer": "~5.2.0"
452
+ }
453
+ },
454
+ "text-hex": {
455
+ "version": "1.0.0",
456
+ "resolved": "https://registry.npmjs.org/text-hex/-/text-hex-1.0.0.tgz",
457
+ "integrity": "sha512-uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg=="
458
+ },
459
+ "triple-beam": {
460
+ "version": "1.3.0",
461
+ "resolved": "https://registry.npmjs.org/triple-beam/-/triple-beam-1.3.0.tgz",
462
+ "integrity": "sha512-XrHUvV5HpdLmIj4uVMxHggLbFSZYIn7HEWsqePZcI50pco+MPqJ50wMGY794X7AOOhxOBAjbkqfAbEe/QMp2Lw=="
463
+ },
464
+ "util-deprecate": {
465
+ "version": "1.0.2",
466
+ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
467
+ "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw=="
468
+ },
469
+ "winston": {
470
+ "version": "3.8.2",
471
+ "resolved": "https://registry.npmjs.org/winston/-/winston-3.8.2.tgz",
472
+ "integrity": "sha512-MsE1gRx1m5jdTTO9Ld/vND4krP2To+lgDoMEHGGa4HIlAUyXJtfc7CxQcGXVyz2IBpw5hbFkj2b/AtUdQwyRew==",
473
+ "requires": {
474
+ "@colors/colors": "1.5.0",
475
+ "@dabh/diagnostics": "^2.0.2",
476
+ "async": "^3.2.3",
477
+ "is-stream": "^2.0.0",
478
+ "logform": "^2.4.0",
479
+ "one-time": "^1.0.0",
480
+ "readable-stream": "^3.4.0",
481
+ "safe-stable-stringify": "^2.3.1",
482
+ "stack-trace": "0.0.x",
483
+ "triple-beam": "^1.3.0",
484
+ "winston-transport": "^4.5.0"
485
+ }
486
+ },
487
+ "winston-transport": {
488
+ "version": "4.5.0",
489
+ "resolved": "https://registry.npmjs.org/winston-transport/-/winston-transport-4.5.0.tgz",
490
+ "integrity": "sha512-YpZzcUzBedhlTAfJg6vJDlyEai/IFMIVcaEZZyl3UXIl4gmqRpU7AE89AHLkbzLUsv0NVmw7ts+iztqKxxPW1Q==",
491
+ "requires": {
492
+ "logform": "^2.3.2",
493
+ "readable-stream": "^3.6.0",
494
+ "triple-beam": "^1.3.0"
495
+ }
496
+ }
276
497
  }
277
498
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@scrabble-solver/logger",
3
- "version": "2.11.8",
3
+ "version": "2.12.0",
4
4
  "description": "Scrabble Solver 2 - Logger",
5
5
  "main": "build/index.js",
6
6
  "types": "build/index.d.ts",
@@ -1 +1 @@
1
- 5ttGCAW8jcIKxpR8om9fK
1
+ fsjQvvJ13WNxBdMioL4sc
@@ -5,8 +5,8 @@
5
5
  "devFiles": [],
6
6
  "ampDevFiles": [],
7
7
  "lowPriorityFiles": [
8
- "static/5ttGCAW8jcIKxpR8om9fK/_buildManifest.js",
9
- "static/5ttGCAW8jcIKxpR8om9fK/_ssgManifest.js"
8
+ "static/fsjQvvJ13WNxBdMioL4sc/_buildManifest.js",
9
+ "static/fsjQvvJ13WNxBdMioL4sc/_ssgManifest.js"
10
10
  ],
11
11
  "rootMainFiles": [],
12
12
  "pages": {
@@ -14,21 +14,21 @@
14
14
  "static/chunks/webpack-6ef43a8d4a395f49.js",
15
15
  "static/chunks/framework-2c5cac93e8c637b5.js",
16
16
  "static/chunks/main-0ecb9ccfcb6c9b24.js",
17
- "static/css/c6e0e01f44fc0425.css",
18
- "static/chunks/pages/index-6894f40e6cac9243.js"
17
+ "static/css/60e8258da7362a1a.css",
18
+ "static/chunks/pages/index-4e8566409753e1c3.js"
19
19
  ],
20
20
  "/404": [
21
21
  "static/chunks/webpack-6ef43a8d4a395f49.js",
22
22
  "static/chunks/framework-2c5cac93e8c637b5.js",
23
23
  "static/chunks/main-0ecb9ccfcb6c9b24.js",
24
- "static/chunks/pages/404-ca203fa27afc37d8.js"
24
+ "static/chunks/pages/404-b4b5ce15153d4825.js"
25
25
  ],
26
26
  "/_app": [
27
27
  "static/chunks/webpack-6ef43a8d4a395f49.js",
28
28
  "static/chunks/framework-2c5cac93e8c637b5.js",
29
29
  "static/chunks/main-0ecb9ccfcb6c9b24.js",
30
- "static/css/af871fef886ef5b7.css",
31
- "static/chunks/pages/_app-76a8840b6244d5a2.js"
30
+ "static/css/58053f9594647860.css",
31
+ "static/chunks/pages/_app-bea4539a6b8042de.js"
32
32
  ],
33
33
  "/_error": [
34
34
  "static/chunks/webpack-6ef43a8d4a395f49.js",