scrabble-solver 2.15.17 → 2.15.19

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 (75) hide show
  1. package/.nx/workspace-data/file-map.json +1213 -1209
  2. package/.nx/workspace-data/lockfile-dependencies.hash +1 -1
  3. package/.nx/workspace-data/lockfile-nodes.hash +1 -1
  4. package/.nx/workspace-data/nx_files.nxt +0 -0
  5. package/.nx/workspace-data/project-graph.json +10 -10
  6. package/README.md +3 -3
  7. package/lerna.json +1 -1
  8. package/package.json +4 -3
  9. package/packages/configs/build/games/crossplay.d.ts +19 -0
  10. package/packages/configs/build/games/crossplay.js +73 -0
  11. package/packages/configs/build/games/index.d.ts +1 -0
  12. package/packages/configs/build/games/index.js +1 -0
  13. package/packages/configs/build/languages/english.d.ts +2 -0
  14. package/packages/configs/build/languages/english.js +65 -1
  15. package/packages/configs/package.json +3 -3
  16. package/packages/configs/src/games/crossplay.ts +87 -0
  17. package/packages/configs/src/games/index.ts +1 -0
  18. package/packages/configs/src/languages/english.ts +67 -1
  19. package/packages/constants/package.json +1 -1
  20. package/packages/dictionaries/package.json +4 -4
  21. package/packages/logger/package.json +1 -1
  22. package/packages/scrabble-solver/.next/BUILD_ID +1 -1
  23. package/packages/scrabble-solver/.next/build-manifest.json +3 -3
  24. package/packages/scrabble-solver/.next/cache/.previewinfo +1 -1
  25. package/packages/scrabble-solver/.next/cache/.rscinfo +1 -1
  26. package/packages/scrabble-solver/.next/cache/.tsbuildinfo +1 -1
  27. package/packages/scrabble-solver/.next/cache/webpack/client-production/0.pack +0 -0
  28. package/packages/scrabble-solver/.next/cache/webpack/client-production/index.pack +0 -0
  29. package/packages/scrabble-solver/.next/cache/webpack/client-production/index.pack.old +0 -0
  30. package/packages/scrabble-solver/.next/cache/webpack/edge-server-production/index.pack +0 -0
  31. package/packages/scrabble-solver/.next/cache/webpack/edge-server-production/index.pack.old +0 -0
  32. package/packages/scrabble-solver/.next/cache/webpack/server-production/0.pack +0 -0
  33. package/packages/scrabble-solver/.next/cache/webpack/server-production/index.pack +0 -0
  34. package/packages/scrabble-solver/.next/cache/webpack/server-production/index.pack.old +0 -0
  35. package/packages/scrabble-solver/.next/prerender-manifest.json +4 -4
  36. package/packages/scrabble-solver/.next/required-server-files.json +3 -3
  37. package/packages/scrabble-solver/.next/routes-manifest.json +1 -1
  38. package/packages/scrabble-solver/.next/server/chunks/392.js +1 -1
  39. package/packages/scrabble-solver/.next/server/chunks/712.js +1 -1
  40. package/packages/scrabble-solver/.next/server/chunks/812.js +1 -1
  41. package/packages/scrabble-solver/.next/server/middleware-build-manifest.js +1 -1
  42. package/packages/scrabble-solver/.next/server/pages/404.html +1 -1
  43. package/packages/scrabble-solver/.next/server/pages/500.html +1 -1
  44. package/packages/scrabble-solver/.next/server/pages/_app.js.nft.json +1 -1
  45. package/packages/scrabble-solver/.next/server/pages/api/dictionary/[locale]/[word].js.nft.json +1 -1
  46. package/packages/scrabble-solver/.next/server/pages/api/solve.js.nft.json +1 -1
  47. package/packages/scrabble-solver/.next/server/pages/api/verify.js.nft.json +1 -1
  48. package/packages/scrabble-solver/.next/server/pages/index.html +1 -1
  49. package/packages/scrabble-solver/.next/server/pages/index.js.nft.json +1 -1
  50. package/packages/scrabble-solver/.next/server/pages/index.json +1 -1
  51. package/packages/scrabble-solver/.next/server/pages/not-found.html +1 -1
  52. package/packages/scrabble-solver/.next/server/pages/not-found.js.nft.json +1 -1
  53. package/packages/scrabble-solver/.next/server/pages-manifest.json +1 -1
  54. package/packages/scrabble-solver/.next/static/chunks/pages/_app-e333add311d76325.js +3 -0
  55. package/packages/scrabble-solver/.next/trace +21 -21
  56. package/packages/scrabble-solver/.next/trace-build +1 -1
  57. package/packages/scrabble-solver/package.json +8 -8
  58. package/packages/scrabble-solver/public/service-worker.js +2 -2
  59. package/packages/scrabble-solver/src/components/Board/hooks/useGrid.ts +2 -2
  60. package/packages/scrabble-solver/src/components/Rack/Rack.tsx +2 -2
  61. package/packages/scrabble-solver/src/components/Rack/components/RackTile/RackTile.tsx +2 -2
  62. package/packages/scrabble-solver/src/components/SeoMessage/SeoMessage.tsx +3 -3
  63. package/packages/scrabble-solver/src/pages/_app.tsx +3 -1
  64. package/packages/solver/package.json +5 -5
  65. package/packages/types/build/Config.js +1 -1
  66. package/packages/types/build/Game.d.ts +1 -0
  67. package/packages/types/build/Game.js +1 -0
  68. package/packages/types/package.json +2 -2
  69. package/packages/types/src/Config.ts +1 -1
  70. package/packages/types/src/Game.ts +1 -0
  71. package/packages/word-definitions/package.json +2 -2
  72. package/packages/word-lists/package.json +2 -2
  73. package/packages/scrabble-solver/.next/static/chunks/pages/_app-34d868ee8cde5436.js +0 -3
  74. /package/packages/scrabble-solver/.next/static/{ImexeOQ5dPSQb-9vZkego → Q1QbM4B3kGvZD0KCKFv6H}/_buildManifest.js +0 -0
  75. /package/packages/scrabble-solver/.next/static/{ImexeOQ5dPSQb-9vZkego → Q1QbM4B3kGvZD0KCKFv6H}/_ssgManifest.js +0 -0
@@ -137,9 +137,9 @@ export const Rack: FunctionComponent<Props> = ({ className, tileSize }) => {
137
137
  changeActiveIndex(1);
138
138
  },
139
139
  onKeyDown: (event) => {
140
- if (isCtrl(event) && config.isTwoCharacterTilePrefix(event.key)) {
140
+ if (isCtrl(event) && config.isTwoCharacterTilePrefix(event.key.toLocaleLowerCase())) {
141
141
  changeActiveIndex(1);
142
- } else if (event.currentTarget.value === event.key) {
142
+ } else if (event.currentTarget.value.toLocaleLowerCase() === event.key.toLocaleLowerCase()) {
143
143
  // change event did not fire because the same character was typed over the current one
144
144
  // but we still want to move the caret
145
145
  event.preventDefault();
@@ -96,10 +96,10 @@ export const RackTile: FunctionComponent<Props> = ({
96
96
  dispatch(rackSlice.actions.changeCharacter({ character: null, index }));
97
97
  },
98
98
  onKeyDown: (event) => {
99
- if (isCtrl(event) && config.isTwoCharacterTilePrefix(event.key)) {
99
+ if (isCtrl(event) && config.isTwoCharacterTilePrefix(event.key.toLocaleLowerCase())) {
100
100
  event.preventDefault();
101
101
  event.stopPropagation();
102
- const twoTilesCharacter = config.getTwoCharacterTileByPrefix(event.key);
102
+ const twoTilesCharacter = config.getTwoCharacterTileByPrefix(event.key.toLocaleLowerCase());
103
103
 
104
104
  if (twoTilesCharacter) {
105
105
  dispatch(rackSlice.actions.changeCharacter({ character: twoTilesCharacter, index }));
@@ -11,8 +11,8 @@ const INVISIBLE_STYLE: CSSProperties = {
11
11
  export const SeoMessage: FunctionComponent = () => (
12
12
  <p style={INVISIBLE_STYLE}>
13
13
  Scrabble Solver 2 is a free and open-source analysis tool for Scrabble, Scrabble Duel, Super Scrabble, Letter
14
- League, Literaki, and Kelimelik. Quickly find top scoring words using given letters and board state. Available in
15
- English, French, German, Persian, Polish, Romanian, Spanish, and Turkish. Source code is available on GitHub -
16
- contributions are welcome!
14
+ League, Crossplay, Literaki, and Kelimelik. Quickly find top scoring words using given letters and board state.
15
+ Available in English, French, German, Persian, Polish, Romanian, Spanish, and Turkish. Source code is available on
16
+ GitHub - contributions are welcome!
17
17
  </p>
18
18
  );
@@ -11,7 +11,7 @@ import '../styles/global.scss';
11
11
 
12
12
  const DESCRIPTION =
13
13
  // eslint-disable-next-line max-len
14
- 'Scrabble Solver 2 - Free and open-source analysis tool for Scrabble, Scrabble Duel, Super Scrabble, Letter League & Literaki. Quickly find top scoring words using given letters and board state. Available in English, French, German, Persian, Polish, Romanian, Spanish, and Turkish.';
14
+ 'Scrabble Solver 2 - Free and open-source analysis tool for Scrabble, Scrabble Duel, Super Scrabble, Letter League, Crossplay, Literaki and Kelimelik. Quickly find top scoring words using given letters and board state. Available in English, French, German, Persian, Polish, Romanian, Spanish, and Turkish.';
15
15
 
16
16
  const KEYWORDS = [
17
17
  'Scrabble Solver',
@@ -21,6 +21,8 @@ const KEYWORDS = [
21
21
  'Super Scrabble',
22
22
  'Kelimelik',
23
23
  'Letter League',
24
+ 'Crossplay',
25
+ 'NYT Crossplay',
24
26
  'Literaki',
25
27
  'Board',
26
28
  'Open-source',
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@scrabble-solver/solver",
3
- "version": "2.15.17",
3
+ "version": "2.15.19",
4
4
  "description": "Scrabble Solver 2 - Solver",
5
5
  "main": "build/index.js",
6
6
  "types": "build/index.d.ts",
@@ -24,12 +24,12 @@
24
24
  },
25
25
  "dependencies": {
26
26
  "@kamilmielnik/trie": "^4.0.0",
27
- "@scrabble-solver/types": "^2.15.17"
27
+ "@scrabble-solver/types": "^2.15.19"
28
28
  },
29
29
  "devDependencies": {
30
- "@scrabble-solver/configs": "^2.15.17",
31
- "@scrabble-solver/constants": "^2.15.17",
32
- "@scrabble-solver/dictionaries": "^2.15.17"
30
+ "@scrabble-solver/configs": "^2.15.19",
31
+ "@scrabble-solver/constants": "^2.15.19",
32
+ "@scrabble-solver/dictionaries": "^2.15.19"
33
33
  },
34
34
  "gitHead": "1e2d1ad49a288d4a44196d8e3336740da132c637"
35
35
  }
@@ -56,7 +56,7 @@ class Config {
56
56
  if (character.length !== 1) {
57
57
  return undefined;
58
58
  }
59
- return this.twoCharacterTiles.find((characters) => characters.startsWith(character));
59
+ return this.twoCharacterTiles.find((characters) => characters.startsWith(character.toLocaleLowerCase()));
60
60
  }
61
61
  getTilePoints(tile) {
62
62
  if (tile === null) {
@@ -1,4 +1,5 @@
1
1
  export declare enum Game {
2
+ Crossplay = "crossplay",
2
3
  Kelimelik = "kelimelik",
3
4
  LetterLeague = "letter-league",
4
5
  Literaki = "literaki",
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isGame = exports.Game = void 0;
4
4
  var Game;
5
5
  (function (Game) {
6
+ Game["Crossplay"] = "crossplay";
6
7
  Game["Kelimelik"] = "kelimelik";
7
8
  Game["LetterLeague"] = "letter-league";
8
9
  Game["Literaki"] = "literaki";
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@scrabble-solver/types",
3
- "version": "2.15.17",
3
+ "version": "2.15.19",
4
4
  "description": "Scrabble Solver 2 - Types",
5
5
  "main": "build/index.js",
6
6
  "types": "build/index.d.ts",
@@ -23,7 +23,7 @@
23
23
  "clean": "rimraf build/"
24
24
  },
25
25
  "dependencies": {
26
- "@scrabble-solver/constants": "^2.15.17"
26
+ "@scrabble-solver/constants": "^2.15.19"
27
27
  },
28
28
  "gitHead": "1e2d1ad49a288d4a44196d8e3336740da132c637"
29
29
  }
@@ -90,7 +90,7 @@ export class Config {
90
90
  return undefined;
91
91
  }
92
92
 
93
- return this.twoCharacterTiles.find((characters) => characters.startsWith(character));
93
+ return this.twoCharacterTiles.find((characters) => characters.startsWith(character.toLocaleLowerCase()));
94
94
  }
95
95
 
96
96
  public getTilePoints(tile: Tile | null): number | undefined {
@@ -1,4 +1,5 @@
1
1
  export enum Game {
2
+ Crossplay = 'crossplay',
2
3
  Kelimelik = 'kelimelik',
3
4
  LetterLeague = 'letter-league',
4
5
  Literaki = 'literaki',
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@scrabble-solver/word-definitions",
3
- "version": "2.15.17",
3
+ "version": "2.15.19",
4
4
  "description": "Scrabble Solver 2 - Word definitions",
5
5
  "main": "build/index.js",
6
6
  "types": "build/index.d.ts",
@@ -23,7 +23,7 @@
23
23
  "clean": "rimraf build/"
24
24
  },
25
25
  "dependencies": {
26
- "@scrabble-solver/types": "^2.15.17",
26
+ "@scrabble-solver/types": "^2.15.19",
27
27
  "cheerio": "^1.1.2",
28
28
  "follow-redirects": "^1.15.11",
29
29
  "striptags": "^3.2.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@scrabble-solver/word-lists",
3
- "version": "2.15.17",
3
+ "version": "2.15.19",
4
4
  "description": "Scrabble Solver 2 - Word lists",
5
5
  "main": "build/index.js",
6
6
  "types": "build/index.d.ts",
@@ -23,7 +23,7 @@
23
23
  "clean": "rimraf build/"
24
24
  },
25
25
  "dependencies": {
26
- "@scrabble-solver/types": "^2.15.17",
26
+ "@scrabble-solver/types": "^2.15.19",
27
27
  "cheerio": "^1.1.2",
28
28
  "follow-redirects": "^1.15.11",
29
29
  "transliteration": "^2.3.5",