scrabble-solver 2.13.13 → 2.15.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 (163) hide show
  1. package/.github/workflows/build.yml +6 -14
  2. package/.github/workflows/cypress.yml +12 -8
  3. package/.github/workflows/eslint.yml +4 -10
  4. package/.github/workflows/jest.yml +4 -10
  5. package/.nx/cache/nx_files.nxt +0 -0
  6. package/.nx/workspace-data/file-map.json +319 -275
  7. package/.nx/workspace-data/lockfile.hash +1 -1
  8. package/.nx/workspace-data/parsed-lock-file.json +352 -277
  9. package/.nx/workspace-data/project-graph.json +583 -463
  10. package/README.md +12 -10
  11. package/bin/scrabble-solver.js +0 -0
  12. package/cypress/e2e/app.spec.cy.ts +87 -76
  13. package/cypress/e2e/bugs/112-character-bonus.ts +40 -0
  14. package/cypress/e2e/bugs/129-esc-sidebar.ts +23 -0
  15. package/cypress/e2e/bugs/2-q-tile-in-english.ts +33 -0
  16. package/cypress/e2e/bugs/3-x-tile-in-polish.ts +33 -0
  17. package/cypress/e2e/bugs/30-click-inside-radio-icon.ts +26 -0
  18. package/cypress/e2e/bugs/333-disabled-radio-cursor.ts +24 -0
  19. package/cypress/e2e/bugs/342-results-sorting.ts +48 -0
  20. package/cypress/e2e/bugs/348-results-word-padding.ts +74 -0
  21. package/cypress/e2e/bugs.spec.cy.ts +8 -0
  22. package/lerna.json +1 -1
  23. package/package.json +24 -15
  24. package/packages/configs/build/games/index.d.ts +4 -3
  25. package/packages/configs/build/games/index.js +17 -9
  26. package/packages/configs/build/games/kelimelik.d.ts +16 -0
  27. package/packages/configs/build/games/kelimelik.js +64 -0
  28. package/packages/configs/build/games/literaki.d.ts +1 -2
  29. package/packages/configs/build/games/literaki.js +2 -2
  30. package/packages/configs/build/games/scrabble.d.ts +1 -2
  31. package/packages/configs/build/games/scrabble.js +2 -2
  32. package/packages/configs/build/games/superScrabble.d.ts +1 -2
  33. package/packages/configs/build/games/superScrabble.js +2 -2
  34. package/packages/configs/build/languages/index.d.ts +1 -0
  35. package/packages/configs/build/languages/index.js +1 -0
  36. package/packages/configs/build/languages/turkish.d.ts +3 -0
  37. package/packages/configs/build/languages/turkish.js +75 -0
  38. package/packages/configs/package.json +3 -3
  39. package/packages/configs/src/games/index.ts +4 -3
  40. package/packages/configs/src/games/kelimelik.ts +62 -0
  41. package/packages/configs/src/games/literaki.ts +1 -3
  42. package/packages/configs/src/games/scrabble.ts +1 -3
  43. package/packages/configs/src/games/superScrabble.ts +1 -3
  44. package/packages/configs/src/languages/index.ts +1 -0
  45. package/packages/configs/src/languages/turkish.ts +75 -0
  46. package/packages/constants/build/index.js +2 -2
  47. package/packages/constants/package.json +1 -1
  48. package/packages/constants/src/index.ts +2 -2
  49. package/packages/dictionaries/package-lock.json +2 -2
  50. package/packages/dictionaries/package.json +4 -4
  51. package/packages/logger/package-lock.json +2 -2
  52. package/packages/logger/package.json +1 -1
  53. package/packages/scrabble-solver/.next/BUILD_ID +1 -1
  54. package/packages/scrabble-solver/.next/build-manifest.json +5 -5
  55. package/packages/scrabble-solver/.next/cache/.tsbuildinfo +1 -1
  56. package/packages/scrabble-solver/.next/cache/eslint/.cache_8dgz12 +1 -1
  57. package/packages/scrabble-solver/.next/cache/webpack/client-production/0.pack +0 -0
  58. package/packages/scrabble-solver/.next/cache/webpack/client-production/index.pack +0 -0
  59. package/packages/scrabble-solver/.next/cache/webpack/client-production/index.pack.old +0 -0
  60. package/packages/scrabble-solver/.next/cache/webpack/edge-server-production/0.pack +0 -0
  61. package/packages/scrabble-solver/.next/cache/webpack/edge-server-production/index.pack +0 -0
  62. package/packages/scrabble-solver/.next/cache/webpack/edge-server-production/index.pack.old +0 -0
  63. package/packages/scrabble-solver/.next/cache/webpack/server-production/0.pack +0 -0
  64. package/packages/scrabble-solver/.next/cache/webpack/server-production/index.pack +0 -0
  65. package/packages/scrabble-solver/.next/cache/webpack/server-production/index.pack.old +0 -0
  66. package/packages/scrabble-solver/.next/prerender-manifest.js +1 -1
  67. package/packages/scrabble-solver/.next/prerender-manifest.json +1 -1
  68. package/packages/scrabble-solver/.next/routes-manifest.json +1 -1
  69. package/packages/scrabble-solver/.next/server/chunks/807.js +1 -1
  70. package/packages/scrabble-solver/.next/server/chunks/911.js +1 -1
  71. package/packages/scrabble-solver/.next/server/chunks/977.js +1 -1
  72. package/packages/scrabble-solver/.next/server/middleware-build-manifest.js +1 -1
  73. package/packages/scrabble-solver/.next/server/pages/404.html +1 -1
  74. package/packages/scrabble-solver/.next/server/pages/404.js.nft.json +1 -1
  75. package/packages/scrabble-solver/.next/server/pages/500.html +1 -1
  76. package/packages/scrabble-solver/.next/server/pages/_app.js.nft.json +1 -1
  77. package/packages/scrabble-solver/.next/server/pages/api/dictionary/[locale]/[word].js +2 -2
  78. package/packages/scrabble-solver/.next/server/pages/index.html +1 -1
  79. package/packages/scrabble-solver/.next/server/pages/index.js +1 -1
  80. package/packages/scrabble-solver/.next/server/pages/index.js.nft.json +1 -1
  81. package/packages/scrabble-solver/.next/server/pages/index.json +1 -1
  82. package/packages/scrabble-solver/.next/server/pages-manifest.json +1 -1
  83. package/packages/scrabble-solver/.next/static/{qwJjm2FeDHHGY92CY5oQQ → C0yfLTukP3L3iDqdXbbBv}/_buildManifest.js +1 -1
  84. package/packages/scrabble-solver/.next/static/chunks/pages/_app-e73bbdbc75537614.js +17 -0
  85. package/packages/scrabble-solver/.next/static/chunks/pages/index-4143525ec0fa83bb.js +1 -0
  86. package/packages/scrabble-solver/.next/static/css/{2adc9736d823979b.css → ac3349339fcf58f2.css} +1 -1
  87. package/packages/scrabble-solver/.next/trace +45 -45
  88. package/packages/scrabble-solver/package-lock.json +4 -4
  89. package/packages/scrabble-solver/package.json +11 -11
  90. package/packages/scrabble-solver/public/service-worker.js +2 -2
  91. package/packages/scrabble-solver/public/service-worker.js.map +1 -1
  92. package/packages/scrabble-solver/src/components/Alert/Alert.tsx +1 -1
  93. package/packages/scrabble-solver/src/components/Board/Board.tsx +3 -3
  94. package/packages/scrabble-solver/src/components/Board/BoardPure.tsx +1 -1
  95. package/packages/scrabble-solver/src/components/Button/Button.tsx +1 -1
  96. package/packages/scrabble-solver/src/components/IconButton/IconButton.tsx +1 -1
  97. package/packages/scrabble-solver/src/components/IconButton/Link.tsx +1 -1
  98. package/packages/scrabble-solver/src/components/Keys/Arrows/Arrows.tsx +4 -4
  99. package/packages/scrabble-solver/src/components/NotFound/NotFound.tsx +1 -1
  100. package/packages/scrabble-solver/src/components/Radio/Radio.module.scss +3 -2
  101. package/packages/scrabble-solver/src/components/Radio/Radio.tsx +1 -1
  102. package/packages/scrabble-solver/src/components/Results/HeaderButton.tsx +1 -1
  103. package/packages/scrabble-solver/src/components/Results/Results.module.scss +5 -8
  104. package/packages/scrabble-solver/src/components/Solver/components/ResultCandidatePicker/ResultCandidatePicker.tsx +1 -1
  105. package/packages/scrabble-solver/src/components/Tile/TilePure.tsx +1 -1
  106. package/packages/scrabble-solver/src/i18n/constants.ts +12 -1
  107. package/packages/scrabble-solver/src/i18n/i18n.ts +2 -0
  108. package/packages/scrabble-solver/src/i18n/languages/turkish.json +78 -0
  109. package/packages/scrabble-solver/src/icons/FlagTr.svg +4 -0
  110. package/packages/scrabble-solver/src/icons/index.ts +1 -0
  111. package/packages/scrabble-solver/src/modals/MenuModal/MenuModal.tsx +1 -1
  112. package/packages/scrabble-solver/src/modals/SettingsModal/components/LocaleSetting/LocaleSetting.tsx +1 -1
  113. package/packages/scrabble-solver/src/modals/WordsModal/WordsModal.tsx +2 -2
  114. package/packages/scrabble-solver/src/pages/_app.tsx +11 -2
  115. package/packages/solver/package-lock.json +2 -2
  116. package/packages/solver/package.json +5 -5
  117. package/packages/types/build/Game.d.ts +1 -0
  118. package/packages/types/build/Game.js +1 -0
  119. package/packages/types/build/Locale.d.ts +2 -1
  120. package/packages/types/build/Locale.js +1 -0
  121. package/packages/types/package.json +2 -2
  122. package/packages/types/src/Game.ts +1 -0
  123. package/packages/types/src/Locale.ts +1 -0
  124. package/packages/word-definitions/build/crawl.js +1 -0
  125. package/packages/word-definitions/build/index.d.ts +1 -1
  126. package/packages/word-definitions/build/index.js +1 -3
  127. package/packages/word-definitions/build/languages/index.d.ts +1 -0
  128. package/packages/word-definitions/build/languages/index.js +2 -1
  129. package/packages/word-definitions/build/languages/turkish.d.ts +3 -0
  130. package/packages/word-definitions/build/languages/turkish.js +31 -0
  131. package/packages/word-definitions/build/lib/index.d.ts +3 -3
  132. package/packages/word-definitions/build/lib/index.js +17 -7
  133. package/packages/word-definitions/build/parse.js +1 -0
  134. package/packages/word-definitions/package-lock.json +2 -2
  135. package/packages/word-definitions/package.json +2 -2
  136. package/packages/word-definitions/src/__tests__/expected/tr-TR.lojik.json +4 -0
  137. package/packages/word-definitions/src/__tests__/input/tr-TR.lojik.html +1 -0
  138. package/packages/word-definitions/src/crawl.ts +2 -1
  139. package/packages/word-definitions/src/index.ts +1 -2
  140. package/packages/word-definitions/src/languages/index.ts +1 -0
  141. package/packages/word-definitions/src/languages/turkish.ts +32 -0
  142. package/packages/word-definitions/src/lib/index.ts +3 -3
  143. package/packages/word-definitions/src/parse.test.ts +1 -0
  144. package/packages/word-definitions/src/parse.ts +2 -1
  145. package/packages/word-lists/build/getWordList.js +1 -0
  146. package/packages/word-lists/build/languages/index.d.ts +1 -0
  147. package/packages/word-lists/build/languages/index.js +2 -1
  148. package/packages/word-lists/build/languages/turkish.d.ts +1 -0
  149. package/packages/word-lists/build/languages/turkish.js +10 -0
  150. package/packages/word-lists/package-lock.json +3 -3
  151. package/packages/word-lists/package.json +3 -3
  152. package/packages/word-lists/src/getWordList.ts +2 -1
  153. package/packages/word-lists/src/languages/index.ts +1 -0
  154. package/packages/word-lists/src/languages/turkish.ts +9 -0
  155. package/cypress/e2e/bugs/112.spec.cy.ts +0 -29
  156. package/cypress/e2e/bugs/129.spec.cy.ts +0 -13
  157. package/cypress/e2e/bugs/2.spec.cy.ts +0 -15
  158. package/cypress/e2e/bugs/3.spec.cy.ts +0 -15
  159. package/cypress/e2e/bugs/342.spec.cy.ts +0 -37
  160. package/cypress/e2e/bugs/348.spec.cy.ts +0 -73
  161. package/packages/scrabble-solver/.next/static/chunks/pages/_app-42ce6b4032e931ff.js +0 -17
  162. package/packages/scrabble-solver/.next/static/chunks/pages/index-3718075f2ba2220c.js +0 -1
  163. /package/packages/scrabble-solver/.next/static/{qwJjm2FeDHHGY92CY5oQQ → C0yfLTukP3L3iDqdXbbBv}/_ssgManifest.js +0 -0
@@ -1,3 +1,4 @@
1
- export { default as literaki } from './literaki';
2
- export { default as scrabble } from './scrabble';
3
- export { default as superScrabble } from './superScrabble';
1
+ export * from './kelimelik';
2
+ export * from './literaki';
3
+ export * from './scrabble';
4
+ export * from './superScrabble';
@@ -1,12 +1,20 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
4
15
  };
5
16
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.superScrabble = exports.scrabble = exports.literaki = void 0;
7
- var literaki_1 = require("./literaki");
8
- Object.defineProperty(exports, "literaki", { enumerable: true, get: function () { return __importDefault(literaki_1).default; } });
9
- var scrabble_1 = require("./scrabble");
10
- Object.defineProperty(exports, "scrabble", { enumerable: true, get: function () { return __importDefault(scrabble_1).default; } });
11
- var superScrabble_1 = require("./superScrabble");
12
- Object.defineProperty(exports, "superScrabble", { enumerable: true, get: function () { return __importDefault(superScrabble_1).default; } });
17
+ __exportStar(require("./kelimelik"), exports);
18
+ __exportStar(require("./literaki"), exports);
19
+ __exportStar(require("./scrabble"), exports);
20
+ __exportStar(require("./superScrabble"), exports);
@@ -0,0 +1,16 @@
1
+ import { Game } from '@scrabble-solver/types';
2
+ export declare const kelimelik: {
3
+ bingoScore: number;
4
+ blankScore: number;
5
+ blanksCount: number;
6
+ boardSize: number;
7
+ game: Game;
8
+ name: string;
9
+ rackSize: number;
10
+ bonuses: {
11
+ multiplier: number;
12
+ type: string;
13
+ x: number;
14
+ y: number;
15
+ }[];
16
+ };
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.kelimelik = void 0;
4
+ const constants_1 = require("@scrabble-solver/constants");
5
+ const types_1 = require("@scrabble-solver/types");
6
+ exports.kelimelik = {
7
+ bingoScore: 30,
8
+ blankScore: 0,
9
+ blanksCount: 2,
10
+ boardSize: 15,
11
+ game: types_1.Game.Kelimelik,
12
+ name: 'Kelimelik',
13
+ rackSize: 7,
14
+ bonuses: [
15
+ { multiplier: 3, type: constants_1.BONUS_WORD, x: 2, y: 0 },
16
+ { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 5, y: 0 },
17
+ { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 9, y: 0 },
18
+ { multiplier: 3, type: constants_1.BONUS_WORD, x: 12, y: 0 },
19
+ { multiplier: 3, type: constants_1.BONUS_CHARACTER, x: 1, y: 1 },
20
+ { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 6, y: 1 },
21
+ { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 8, y: 1 },
22
+ { multiplier: 3, type: constants_1.BONUS_CHARACTER, x: 13, y: 1 },
23
+ { multiplier: 3, type: constants_1.BONUS_WORD, x: 0, y: 2 },
24
+ { multiplier: 2, type: constants_1.BONUS_WORD, x: 7, y: 2 },
25
+ { multiplier: 3, type: constants_1.BONUS_WORD, x: 14, y: 2 },
26
+ { multiplier: 2, type: constants_1.BONUS_WORD, x: 3, y: 3 },
27
+ { multiplier: 2, type: constants_1.BONUS_WORD, x: 11, y: 3 },
28
+ { multiplier: 3, type: constants_1.BONUS_CHARACTER, x: 4, y: 4 },
29
+ { multiplier: 3, type: constants_1.BONUS_CHARACTER, x: 10, y: 4 },
30
+ { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 0, y: 5 },
31
+ { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 5, y: 5 },
32
+ { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 9, y: 5 },
33
+ { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 14, y: 5 },
34
+ { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 1, y: 6 },
35
+ { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 6, y: 6 },
36
+ { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 8, y: 6 },
37
+ { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 13, y: 6 },
38
+ { multiplier: 2, type: constants_1.BONUS_WORD, x: 2, y: 7 },
39
+ { multiplier: 2, type: constants_1.BONUS_WORD, x: 12, y: 7 },
40
+ { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 1, y: 8 },
41
+ { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 6, y: 8 },
42
+ { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 8, y: 8 },
43
+ { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 13, y: 8 },
44
+ { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 0, y: 9 },
45
+ { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 5, y: 9 },
46
+ { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 9, y: 9 },
47
+ { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 14, y: 9 },
48
+ { multiplier: 3, type: constants_1.BONUS_CHARACTER, x: 4, y: 10 },
49
+ { multiplier: 3, type: constants_1.BONUS_CHARACTER, x: 10, y: 10 },
50
+ { multiplier: 2, type: constants_1.BONUS_WORD, x: 3, y: 11 },
51
+ { multiplier: 2, type: constants_1.BONUS_WORD, x: 11, y: 11 },
52
+ { multiplier: 3, type: constants_1.BONUS_WORD, x: 0, y: 12 },
53
+ { multiplier: 2, type: constants_1.BONUS_WORD, x: 7, y: 12 },
54
+ { multiplier: 3, type: constants_1.BONUS_WORD, x: 14, y: 12 },
55
+ { multiplier: 3, type: constants_1.BONUS_CHARACTER, x: 1, y: 13 },
56
+ { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 6, y: 13 },
57
+ { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 8, y: 13 },
58
+ { multiplier: 3, type: constants_1.BONUS_CHARACTER, x: 13, y: 13 },
59
+ { multiplier: 3, type: constants_1.BONUS_WORD, x: 2, y: 14 },
60
+ { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 5, y: 14 },
61
+ { multiplier: 2, type: constants_1.BONUS_CHARACTER, x: 9, y: 14 },
62
+ { multiplier: 3, type: constants_1.BONUS_WORD, x: 12, y: 14 },
63
+ ],
64
+ };
@@ -1,5 +1,5 @@
1
1
  import { Game } from '@scrabble-solver/types';
2
- declare const literaki: {
2
+ export declare const literaki: {
3
3
  bingoScore: number;
4
4
  blankScore: number;
5
5
  blanksCount: number;
@@ -21,4 +21,3 @@ declare const literaki: {
21
21
  score?: undefined;
22
22
  })[];
23
23
  };
24
- export default literaki;
@@ -1,8 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.literaki = void 0;
3
4
  const constants_1 = require("@scrabble-solver/constants");
4
5
  const types_1 = require("@scrabble-solver/types");
5
- const literaki = {
6
+ exports.literaki = {
6
7
  bingoScore: 50,
7
8
  blankScore: 0,
8
9
  blanksCount: 2,
@@ -106,4 +107,3 @@ const literaki = {
106
107
  { multiplier: 3, score: 5, type: constants_1.BONUS_CHARACTER, x: 14, y: 14 },
107
108
  ],
108
109
  };
109
- exports.default = literaki;
@@ -1,5 +1,5 @@
1
1
  import { Game } from '@scrabble-solver/types';
2
- declare const scrabble: {
2
+ export declare const scrabble: {
3
3
  bingoScore: number;
4
4
  blankScore: number;
5
5
  blanksCount: number;
@@ -14,4 +14,3 @@ declare const scrabble: {
14
14
  y: number;
15
15
  }[];
16
16
  };
17
- export default scrabble;
@@ -1,8 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.scrabble = void 0;
3
4
  const constants_1 = require("@scrabble-solver/constants");
4
5
  const types_1 = require("@scrabble-solver/types");
5
- const scrabble = {
6
+ exports.scrabble = {
6
7
  bingoScore: 50,
7
8
  blankScore: 0,
8
9
  blanksCount: 2,
@@ -74,4 +75,3 @@ const scrabble = {
74
75
  { multiplier: 3, type: constants_1.BONUS_WORD, x: 14, y: 14 },
75
76
  ],
76
77
  };
77
- exports.default = scrabble;
@@ -1,5 +1,5 @@
1
1
  import { Game } from '@scrabble-solver/types';
2
- declare const superScrabble: {
2
+ export declare const superScrabble: {
3
3
  bingoScore: number;
4
4
  blankScore: number;
5
5
  blanksCount: number;
@@ -14,4 +14,3 @@ declare const superScrabble: {
14
14
  y: number;
15
15
  }[];
16
16
  };
17
- export default superScrabble;
@@ -1,8 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.superScrabble = void 0;
3
4
  const constants_1 = require("@scrabble-solver/constants");
4
5
  const types_1 = require("@scrabble-solver/types");
5
- const superScrabble = {
6
+ exports.superScrabble = {
6
7
  bingoScore: 50,
7
8
  blankScore: 0,
8
9
  blanksCount: 4,
@@ -137,4 +138,3 @@ const superScrabble = {
137
138
  { multiplier: 4, type: constants_1.BONUS_WORD, x: 20, y: 20 },
138
139
  ],
139
140
  };
140
- exports.default = superScrabble;
@@ -5,3 +5,4 @@ export * from './persian';
5
5
  export * from './polish';
6
6
  export * from './romanian';
7
7
  export * from './spanish';
8
+ export * from './turkish';
@@ -21,3 +21,4 @@ __exportStar(require("./persian"), exports);
21
21
  __exportStar(require("./polish"), exports);
22
22
  __exportStar(require("./romanian"), exports);
23
23
  __exportStar(require("./spanish"), exports);
24
+ __exportStar(require("./turkish"), exports);
@@ -0,0 +1,3 @@
1
+ import { Config } from '@scrabble-solver/types';
2
+ export declare const turkishKelimelik: Config;
3
+ export declare const turkishScrabble: Config;
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.turkishScrabble = exports.turkishKelimelik = void 0;
4
+ const types_1 = require("@scrabble-solver/types");
5
+ const games_1 = require("../games");
6
+ exports.turkishKelimelik = new types_1.Config({
7
+ ...games_1.kelimelik,
8
+ locale: types_1.Locale.TR_TR,
9
+ tiles: [
10
+ { character: 'a', count: 12, score: 1 },
11
+ { character: 'b', count: 2, score: 3 },
12
+ { character: 'c', count: 2, score: 4 },
13
+ { character: 'ç', count: 2, score: 4 },
14
+ { character: 'd', count: 2, score: 3 },
15
+ { character: 'e', count: 8, score: 1 },
16
+ { character: 'f', count: 1, score: 7 },
17
+ { character: 'g', count: 1, score: 5 },
18
+ { character: 'ğ', count: 1, score: 8 },
19
+ { character: 'h', count: 1, score: 5 },
20
+ { character: 'ı', count: 4, score: 2 },
21
+ { character: 'i', count: 7, score: 1 },
22
+ { character: 'j', count: 1, score: 10 },
23
+ { character: 'k', count: 7, score: 1 },
24
+ { character: 'l', count: 7, score: 1 },
25
+ { character: 'm', count: 4, score: 2 },
26
+ { character: 'n', count: 5, score: 1 },
27
+ { character: 'o', count: 3, score: 2 },
28
+ { character: 'ö', count: 1, score: 7 },
29
+ { character: 'p', count: 1, score: 5 },
30
+ { character: 'r', count: 6, score: 1 },
31
+ { character: 's', count: 3, score: 2 },
32
+ { character: 'ş', count: 2, score: 4 },
33
+ { character: 't', count: 5, score: 1 },
34
+ { character: 'u', count: 3, score: 2 },
35
+ { character: 'ü', count: 2, score: 3 },
36
+ { character: 'v', count: 1, score: 7 },
37
+ { character: 'y', count: 2, score: 3 },
38
+ { character: 'z', count: 2, score: 4 },
39
+ ],
40
+ });
41
+ exports.turkishScrabble = new types_1.Config({
42
+ ...games_1.scrabble,
43
+ locale: types_1.Locale.TR_TR,
44
+ tiles: [
45
+ { character: 'a', count: 12, score: 1 },
46
+ { character: 'b', count: 2, score: 3 },
47
+ { character: 'c', count: 2, score: 4 },
48
+ { character: 'ç', count: 2, score: 4 },
49
+ { character: 'd', count: 2, score: 3 },
50
+ { character: 'e', count: 8, score: 1 },
51
+ { character: 'f', count: 1, score: 7 },
52
+ { character: 'g', count: 1, score: 5 },
53
+ { character: 'ğ', count: 1, score: 8 },
54
+ { character: 'h', count: 1, score: 5 },
55
+ { character: 'ı', count: 4, score: 2 },
56
+ { character: 'i', count: 7, score: 1 },
57
+ { character: 'j', count: 1, score: 10 },
58
+ { character: 'k', count: 7, score: 1 },
59
+ { character: 'l', count: 7, score: 1 },
60
+ { character: 'm', count: 4, score: 2 },
61
+ { character: 'n', count: 5, score: 1 },
62
+ { character: 'o', count: 3, score: 2 },
63
+ { character: 'ö', count: 1, score: 7 },
64
+ { character: 'p', count: 1, score: 5 },
65
+ { character: 'r', count: 6, score: 1 },
66
+ { character: 's', count: 3, score: 2 },
67
+ { character: 'ş', count: 2, score: 4 },
68
+ { character: 't', count: 5, score: 1 },
69
+ { character: 'u', count: 3, score: 2 },
70
+ { character: 'ü', count: 2, score: 3 },
71
+ { character: 'v', count: 1, score: 7 },
72
+ { character: 'y', count: 2, score: 3 },
73
+ { character: 'z', count: 2, score: 4 },
74
+ ],
75
+ });
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@scrabble-solver/configs",
3
- "version": "2.13.13",
3
+ "version": "2.15.0",
4
4
  "description": "Scrabble Solver 2 - Configs",
5
5
  "main": "build/index.js",
6
6
  "types": "build/index.d.ts",
@@ -23,8 +23,8 @@
23
23
  "clean": "rimraf build/"
24
24
  },
25
25
  "dependencies": {
26
- "@scrabble-solver/constants": "^2.13.13",
27
- "@scrabble-solver/types": "^2.13.13"
26
+ "@scrabble-solver/constants": "^2.15.0",
27
+ "@scrabble-solver/types": "^2.15.0"
28
28
  },
29
29
  "gitHead": "1e2d1ad49a288d4a44196d8e3336740da132c637"
30
30
  }
@@ -1,3 +1,4 @@
1
- export { default as literaki } from './literaki';
2
- export { default as scrabble } from './scrabble';
3
- export { default as superScrabble } from './superScrabble';
1
+ export * from './kelimelik';
2
+ export * from './literaki';
3
+ export * from './scrabble';
4
+ export * from './superScrabble';
@@ -0,0 +1,62 @@
1
+ import { BONUS_CHARACTER, BONUS_WORD } from '@scrabble-solver/constants';
2
+ import { Game } from '@scrabble-solver/types';
3
+
4
+ export const kelimelik = {
5
+ bingoScore: 30,
6
+ blankScore: 0,
7
+ blanksCount: 2,
8
+ boardSize: 15,
9
+ game: Game.Kelimelik,
10
+ name: 'Kelimelik',
11
+ rackSize: 7,
12
+ bonuses: [
13
+ { multiplier: 3, type: BONUS_WORD, x: 2, y: 0 },
14
+ { multiplier: 2, type: BONUS_CHARACTER, x: 5, y: 0 },
15
+ { multiplier: 2, type: BONUS_CHARACTER, x: 9, y: 0 },
16
+ { multiplier: 3, type: BONUS_WORD, x: 12, y: 0 },
17
+ { multiplier: 3, type: BONUS_CHARACTER, x: 1, y: 1 },
18
+ { multiplier: 2, type: BONUS_CHARACTER, x: 6, y: 1 },
19
+ { multiplier: 2, type: BONUS_CHARACTER, x: 8, y: 1 },
20
+ { multiplier: 3, type: BONUS_CHARACTER, x: 13, y: 1 },
21
+ { multiplier: 3, type: BONUS_WORD, x: 0, y: 2 },
22
+ { multiplier: 2, type: BONUS_WORD, x: 7, y: 2 },
23
+ { multiplier: 3, type: BONUS_WORD, x: 14, y: 2 },
24
+ { multiplier: 2, type: BONUS_WORD, x: 3, y: 3 },
25
+ { multiplier: 2, type: BONUS_WORD, x: 11, y: 3 },
26
+ { multiplier: 3, type: BONUS_CHARACTER, x: 4, y: 4 },
27
+ { multiplier: 3, type: BONUS_CHARACTER, x: 10, y: 4 },
28
+ { multiplier: 2, type: BONUS_CHARACTER, x: 0, y: 5 },
29
+ { multiplier: 2, type: BONUS_CHARACTER, x: 5, y: 5 },
30
+ { multiplier: 2, type: BONUS_CHARACTER, x: 9, y: 5 },
31
+ { multiplier: 2, type: BONUS_CHARACTER, x: 14, y: 5 },
32
+ { multiplier: 2, type: BONUS_CHARACTER, x: 1, y: 6 },
33
+ { multiplier: 2, type: BONUS_CHARACTER, x: 6, y: 6 },
34
+ { multiplier: 2, type: BONUS_CHARACTER, x: 8, y: 6 },
35
+ { multiplier: 2, type: BONUS_CHARACTER, x: 13, y: 6 },
36
+ { multiplier: 2, type: BONUS_WORD, x: 2, y: 7 },
37
+ { multiplier: 2, type: BONUS_WORD, x: 12, y: 7 },
38
+ { multiplier: 2, type: BONUS_CHARACTER, x: 1, y: 8 },
39
+ { multiplier: 2, type: BONUS_CHARACTER, x: 6, y: 8 },
40
+ { multiplier: 2, type: BONUS_CHARACTER, x: 8, y: 8 },
41
+ { multiplier: 2, type: BONUS_CHARACTER, x: 13, y: 8 },
42
+ { multiplier: 2, type: BONUS_CHARACTER, x: 0, y: 9 },
43
+ { multiplier: 2, type: BONUS_CHARACTER, x: 5, y: 9 },
44
+ { multiplier: 2, type: BONUS_CHARACTER, x: 9, y: 9 },
45
+ { multiplier: 2, type: BONUS_CHARACTER, x: 14, y: 9 },
46
+ { multiplier: 3, type: BONUS_CHARACTER, x: 4, y: 10 },
47
+ { multiplier: 3, type: BONUS_CHARACTER, x: 10, y: 10 },
48
+ { multiplier: 2, type: BONUS_WORD, x: 3, y: 11 },
49
+ { multiplier: 2, type: BONUS_WORD, x: 11, y: 11 },
50
+ { multiplier: 3, type: BONUS_WORD, x: 0, y: 12 },
51
+ { multiplier: 2, type: BONUS_WORD, x: 7, y: 12 },
52
+ { multiplier: 3, type: BONUS_WORD, x: 14, y: 12 },
53
+ { multiplier: 3, type: BONUS_CHARACTER, x: 1, y: 13 },
54
+ { multiplier: 2, type: BONUS_CHARACTER, x: 6, y: 13 },
55
+ { multiplier: 2, type: BONUS_CHARACTER, x: 8, y: 13 },
56
+ { multiplier: 3, type: BONUS_CHARACTER, x: 13, y: 13 },
57
+ { multiplier: 3, type: BONUS_WORD, x: 2, y: 14 },
58
+ { multiplier: 2, type: BONUS_CHARACTER, x: 5, y: 14 },
59
+ { multiplier: 2, type: BONUS_CHARACTER, x: 9, y: 14 },
60
+ { multiplier: 3, type: BONUS_WORD, x: 12, y: 14 },
61
+ ],
62
+ };
@@ -1,7 +1,7 @@
1
1
  import { BONUS_CHARACTER, BONUS_WORD } from '@scrabble-solver/constants';
2
2
  import { Game } from '@scrabble-solver/types';
3
3
 
4
- const literaki = {
4
+ export const literaki = {
5
5
  bingoScore: 50,
6
6
  blankScore: 0,
7
7
  blanksCount: 2,
@@ -105,5 +105,3 @@ const literaki = {
105
105
  { multiplier: 3, score: 5, type: BONUS_CHARACTER, x: 14, y: 14 },
106
106
  ],
107
107
  };
108
-
109
- export default literaki;
@@ -1,7 +1,7 @@
1
1
  import { BONUS_CHARACTER, BONUS_WORD } from '@scrabble-solver/constants';
2
2
  import { Game } from '@scrabble-solver/types';
3
3
 
4
- const scrabble = {
4
+ export const scrabble = {
5
5
  bingoScore: 50,
6
6
  blankScore: 0,
7
7
  blanksCount: 2,
@@ -73,5 +73,3 @@ const scrabble = {
73
73
  { multiplier: 3, type: BONUS_WORD, x: 14, y: 14 },
74
74
  ],
75
75
  };
76
-
77
- export default scrabble;
@@ -1,7 +1,7 @@
1
1
  import { BONUS_CHARACTER, BONUS_WORD } from '@scrabble-solver/constants';
2
2
  import { Game } from '@scrabble-solver/types';
3
3
 
4
- const superScrabble = {
4
+ export const superScrabble = {
5
5
  bingoScore: 50,
6
6
  blankScore: 0,
7
7
  blanksCount: 4,
@@ -136,5 +136,3 @@ const superScrabble = {
136
136
  { multiplier: 4, type: BONUS_WORD, x: 20, y: 20 },
137
137
  ],
138
138
  };
139
-
140
- export default superScrabble;
@@ -5,3 +5,4 @@ export * from './persian';
5
5
  export * from './polish';
6
6
  export * from './romanian';
7
7
  export * from './spanish';
8
+ export * from './turkish';
@@ -0,0 +1,75 @@
1
+ import { Config, Locale } from '@scrabble-solver/types';
2
+
3
+ import { kelimelik, scrabble } from '../games';
4
+
5
+ export const turkishKelimelik = new Config({
6
+ ...kelimelik,
7
+ locale: Locale.TR_TR,
8
+ tiles: [
9
+ { character: 'a', count: 12, score: 1 },
10
+ { character: 'b', count: 2, score: 3 },
11
+ { character: 'c', count: 2, score: 4 },
12
+ { character: 'ç', count: 2, score: 4 },
13
+ { character: 'd', count: 2, score: 3 },
14
+ { character: 'e', count: 8, score: 1 },
15
+ { character: 'f', count: 1, score: 7 },
16
+ { character: 'g', count: 1, score: 5 },
17
+ { character: 'ğ', count: 1, score: 8 },
18
+ { character: 'h', count: 1, score: 5 },
19
+ { character: 'ı', count: 4, score: 2 },
20
+ { character: 'i', count: 7, score: 1 },
21
+ { character: 'j', count: 1, score: 10 },
22
+ { character: 'k', count: 7, score: 1 },
23
+ { character: 'l', count: 7, score: 1 },
24
+ { character: 'm', count: 4, score: 2 },
25
+ { character: 'n', count: 5, score: 1 },
26
+ { character: 'o', count: 3, score: 2 },
27
+ { character: 'ö', count: 1, score: 7 },
28
+ { character: 'p', count: 1, score: 5 },
29
+ { character: 'r', count: 6, score: 1 },
30
+ { character: 's', count: 3, score: 2 },
31
+ { character: 'ş', count: 2, score: 4 },
32
+ { character: 't', count: 5, score: 1 },
33
+ { character: 'u', count: 3, score: 2 },
34
+ { character: 'ü', count: 2, score: 3 },
35
+ { character: 'v', count: 1, score: 7 },
36
+ { character: 'y', count: 2, score: 3 },
37
+ { character: 'z', count: 2, score: 4 },
38
+ ],
39
+ });
40
+
41
+ export const turkishScrabble = new Config({
42
+ ...scrabble,
43
+ locale: Locale.TR_TR,
44
+ tiles: [
45
+ { character: 'a', count: 12, score: 1 },
46
+ { character: 'b', count: 2, score: 3 },
47
+ { character: 'c', count: 2, score: 4 },
48
+ { character: 'ç', count: 2, score: 4 },
49
+ { character: 'd', count: 2, score: 3 },
50
+ { character: 'e', count: 8, score: 1 },
51
+ { character: 'f', count: 1, score: 7 },
52
+ { character: 'g', count: 1, score: 5 },
53
+ { character: 'ğ', count: 1, score: 8 },
54
+ { character: 'h', count: 1, score: 5 },
55
+ { character: 'ı', count: 4, score: 2 },
56
+ { character: 'i', count: 7, score: 1 },
57
+ { character: 'j', count: 1, score: 10 },
58
+ { character: 'k', count: 7, score: 1 },
59
+ { character: 'l', count: 7, score: 1 },
60
+ { character: 'm', count: 4, score: 2 },
61
+ { character: 'n', count: 5, score: 1 },
62
+ { character: 'o', count: 3, score: 2 },
63
+ { character: 'ö', count: 1, score: 7 },
64
+ { character: 'p', count: 1, score: 5 },
65
+ { character: 'r', count: 6, score: 1 },
66
+ { character: 's', count: 3, score: 2 },
67
+ { character: 'ş', count: 2, score: 4 },
68
+ { character: 't', count: 5, score: 1 },
69
+ { character: 'u', count: 3, score: 2 },
70
+ { character: 'ü', count: 2, score: 3 },
71
+ { character: 'v', count: 1, score: 7 },
72
+ { character: 'y', count: 2, score: 3 },
73
+ { character: 'z', count: 2, score: 4 },
74
+ ],
75
+ });
@@ -8,5 +8,5 @@ exports.BONUS_CHARACTER = 'BONUS_CHARACTER';
8
8
  exports.BONUS_WORD = 'BONUS_WORD';
9
9
  exports.EMPTY_CELL = ' ';
10
10
  exports.NO_BONUS = { characterMultiplier: 1, wordMultiplier: 1 };
11
- exports.CONSONANTS = 'bcćdfghjklłmnńñpqrsśtvwxzźż'.split('');
12
- exports.VOWELS = 'aąäeęioóöuüy'.split('');
11
+ exports.CONSONANTS = 'bcçćdfgğhjklłmnńñpqrsşśtvwxzźż'.split('');
12
+ exports.VOWELS = 'aąäeęioóöuüyı'.split('');
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@scrabble-solver/constants",
3
- "version": "2.13.13",
3
+ "version": "2.15.0",
4
4
  "description": "Scrabble Solver 2 - Constants",
5
5
  "main": "build/index.js",
6
6
  "types": "build/index.d.ts",
@@ -12,6 +12,6 @@ export const EMPTY_CELL = ' ';
12
12
 
13
13
  export const NO_BONUS = { characterMultiplier: 1, wordMultiplier: 1 };
14
14
 
15
- export const CONSONANTS = 'bcćdfghjklłmnńñpqrsśtvwxzźż'.split('');
15
+ export const CONSONANTS = 'bcçćdfgğhjklłmnńñpqrsşśtvwxzźż'.split('');
16
16
 
17
- export const VOWELS = 'aąäeęioóöuüy'.split('');
17
+ export const VOWELS = 'aąäeęioóöuüyı'.split('');
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@scrabble-solver/dictionaries",
3
- "version": "2.13.13",
3
+ "version": "2.15.0",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "@scrabble-solver/dictionaries",
9
- "version": "2.13.13",
9
+ "version": "2.15.0",
10
10
  "license": "CC-BY-NC-ND-4.0",
11
11
  "dependencies": {
12
12
  "@kamilmielnik/trie": "^3.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@scrabble-solver/dictionaries",
3
- "version": "2.13.13",
3
+ "version": "2.15.0",
4
4
  "description": "Scrabble Solver 2 - Dictionaries",
5
5
  "main": "build/index.js",
6
6
  "types": "build/index.d.ts",
@@ -30,9 +30,9 @@
30
30
  },
31
31
  "dependencies": {
32
32
  "@kamilmielnik/trie": "^3.0.0",
33
- "@scrabble-solver/logger": "^2.13.13",
34
- "@scrabble-solver/types": "^2.13.13",
35
- "@scrabble-solver/word-lists": "^2.13.13"
33
+ "@scrabble-solver/logger": "^2.15.0",
34
+ "@scrabble-solver/types": "^2.15.0",
35
+ "@scrabble-solver/word-lists": "^2.15.0"
36
36
  },
37
37
  "gitHead": "1e2d1ad49a288d4a44196d8e3336740da132c637"
38
38
  }
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@scrabble-solver/logger",
3
- "version": "2.13.13",
3
+ "version": "2.15.0",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "@scrabble-solver/logger",
9
- "version": "2.13.13",
9
+ "version": "2.15.0",
10
10
  "license": "CC-BY-NC-ND-4.0",
11
11
  "dependencies": {
12
12
  "winston": "^3.13.1"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@scrabble-solver/logger",
3
- "version": "2.13.13",
3
+ "version": "2.15.0",
4
4
  "description": "Scrabble Solver 2 - Logger",
5
5
  "main": "build/index.js",
6
6
  "types": "build/index.d.ts",
@@ -1 +1 @@
1
- qwJjm2FeDHHGY92CY5oQQ
1
+ C0yfLTukP3L3iDqdXbbBv
@@ -5,8 +5,8 @@
5
5
  "devFiles": [],
6
6
  "ampDevFiles": [],
7
7
  "lowPriorityFiles": [
8
- "static/qwJjm2FeDHHGY92CY5oQQ/_buildManifest.js",
9
- "static/qwJjm2FeDHHGY92CY5oQQ/_ssgManifest.js"
8
+ "static/C0yfLTukP3L3iDqdXbbBv/_buildManifest.js",
9
+ "static/C0yfLTukP3L3iDqdXbbBv/_ssgManifest.js"
10
10
  ],
11
11
  "rootMainFiles": [],
12
12
  "pages": {
@@ -15,7 +15,7 @@
15
15
  "static/chunks/framework-c623a49d0bf89652.js",
16
16
  "static/chunks/main-8b0b4e610892a916.js",
17
17
  "static/css/6682db14f926d4c7.css",
18
- "static/chunks/pages/index-3718075f2ba2220c.js"
18
+ "static/chunks/pages/index-4143525ec0fa83bb.js"
19
19
  ],
20
20
  "/404": [
21
21
  "static/chunks/webpack-c4acd79e87956a0e.js",
@@ -27,8 +27,8 @@
27
27
  "static/chunks/webpack-c4acd79e87956a0e.js",
28
28
  "static/chunks/framework-c623a49d0bf89652.js",
29
29
  "static/chunks/main-8b0b4e610892a916.js",
30
- "static/css/2adc9736d823979b.css",
31
- "static/chunks/pages/_app-42ce6b4032e931ff.js"
30
+ "static/css/ac3349339fcf58f2.css",
31
+ "static/chunks/pages/_app-e73bbdbc75537614.js"
32
32
  ],
33
33
  "/_error": [
34
34
  "static/chunks/webpack-c4acd79e87956a0e.js",