scrabble-solver 2.8.2 → 2.8.4
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.
- package/.eslintrc.js +1 -1
- package/.gitattributes +2 -0
- package/HISTORY.md +17 -0
- package/README.md +8 -26
- package/lerna.json +1 -1
- package/package.json +13 -13
- package/packages/configs/build/getConfig.js +6 -12
- package/packages/configs/build/getLocaleConfig.js +2 -2
- package/packages/configs/build/isConfigId.js +5 -8
- package/packages/configs/build/literaki/bonuses.js +2 -2
- package/packages/configs/build/literaki/literaki.js +14 -27
- package/packages/configs/build/literaki/tiles/tilesDe.js +1 -1
- package/packages/configs/build/literaki/tiles/tilesEn.js +1 -1
- package/packages/configs/build/literaki/tiles/tilesEs.js +1 -1
- package/packages/configs/build/literaki/tiles/tilesFr.js +1 -1
- package/packages/configs/build/literaki/tiles/tilesPl.js +1 -1
- package/packages/configs/build/scrabble/bonuses.js +2 -2
- package/packages/configs/build/scrabble/scrabble.js +14 -27
- package/packages/configs/build/scrabble/tiles/tilesDe.js +1 -1
- package/packages/configs/build/scrabble/tiles/tilesEn.js +1 -1
- package/packages/configs/build/scrabble/tiles/tilesEs.js +1 -1
- package/packages/configs/build/scrabble/tiles/tilesFr.js +1 -1
- package/packages/configs/build/scrabble/tiles/tilesPl.js +1 -1
- package/packages/configs/package.json +3 -3
- package/packages/constants/package.json +1 -1
- package/packages/dictionaries/build/Dictionaries.js +37 -110
- package/packages/dictionaries/build/constants/index.js +2 -2
- package/packages/dictionaries/build/index.js +1 -1
- package/packages/dictionaries/build/lib/DiskCache.js +29 -91
- package/packages/dictionaries/build/lib/LayeredCache.js +37 -101
- package/packages/dictionaries/build/lib/MemoryCache.js +16 -17
- package/packages/dictionaries/build/lib/createAsyncProxy.js +14 -58
- package/packages/dictionaries/build/lib/createCacheTimestampComparator.js +4 -4
- package/packages/dictionaries/build/lib/downloadDictionary.js +10 -54
- package/packages/dictionaries/build/lib/getDictionaryFilepath.js +4 -4
- package/packages/dictionaries/build/lib/index.d.ts +0 -2
- package/packages/dictionaries/build/lib/index.js +1 -5
- package/packages/dictionaries/package-lock.json +10 -10
- package/packages/dictionaries/package.json +5 -5
- package/packages/dictionaries/src/lib/DiskCache.ts +2 -4
- package/packages/dictionaries/src/lib/LayeredCache.ts +17 -8
- package/packages/dictionaries/src/lib/index.ts +0 -2
- package/packages/logger/build/constants.js +2 -2
- package/packages/logger/build/logger.js +4 -4
- package/packages/logger/package-lock.json +2 -2
- package/packages/logger/package.json +1 -1
- package/packages/scrabble-solver/.next/BUILD_ID +1 -1
- package/packages/scrabble-solver/.next/build-manifest.json +10 -10
- package/packages/scrabble-solver/.next/cache/.tsbuildinfo +1 -1
- package/packages/scrabble-solver/.next/cache/eslint/.cache_8dgz12 +1 -1
- package/packages/scrabble-solver/.next/cache/next-server.js.nft.json +1 -1
- package/packages/scrabble-solver/.next/cache/webpack/client-production/0.pack +0 -0
- package/packages/scrabble-solver/.next/cache/webpack/client-production/index.pack +0 -0
- package/packages/scrabble-solver/.next/cache/webpack/server-production/0.pack +0 -0
- package/packages/scrabble-solver/.next/cache/webpack/server-production/index.pack +0 -0
- package/packages/scrabble-solver/.next/next-server.js.nft.json +1 -1
- package/packages/scrabble-solver/.next/prerender-manifest.json +1 -1
- package/packages/scrabble-solver/.next/routes-manifest.json +1 -1
- package/packages/scrabble-solver/.next/server/chunks/206.js +98 -97
- package/packages/scrabble-solver/.next/server/chunks/413.js +396 -677
- package/packages/scrabble-solver/.next/server/chunks/515.js +546 -550
- package/packages/scrabble-solver/.next/server/chunks/907.js +399 -681
- package/packages/scrabble-solver/.next/server/middleware-build-manifest.js +1 -1
- package/packages/scrabble-solver/.next/server/pages/404.html +5 -1
- package/packages/scrabble-solver/.next/server/pages/404.js.nft.json +1 -1
- package/packages/scrabble-solver/.next/server/pages/500.html +2 -2
- package/packages/scrabble-solver/.next/server/pages/_app.js +7 -10
- package/packages/scrabble-solver/.next/server/pages/_app.js.nft.json +1 -1
- package/packages/scrabble-solver/.next/server/pages/_document.js +0 -3
- package/packages/scrabble-solver/.next/server/pages/_error.js.nft.json +1 -1
- package/packages/scrabble-solver/.next/server/pages/api/dictionary/[locale]/[word].js +114 -171
- package/packages/scrabble-solver/.next/server/pages/api/solve.js +426 -1206
- package/packages/scrabble-solver/.next/server/pages/index.html +17 -1
- package/packages/scrabble-solver/.next/server/pages/index.js +7 -14
- package/packages/scrabble-solver/.next/server/pages/index.js.nft.json +1 -1
- package/packages/scrabble-solver/.next/server/pages/index.json +1 -1
- package/packages/scrabble-solver/.next/static/-UOLkxdxU0PlKbXa09-xO/_buildManifest.js +1 -0
- package/packages/scrabble-solver/.next/static/{nXSSCVI5pGlS_NxEidxkS → -UOLkxdxU0PlKbXa09-xO}/_ssgManifest.js +0 -0
- package/packages/scrabble-solver/.next/static/chunks/56-2d34867599a0ac66.js +1 -0
- package/packages/scrabble-solver/.next/static/chunks/pages/{404-02d949d2fe59e960.js → 404-30c06e61d256c5b2.js} +1 -1
- package/packages/scrabble-solver/.next/static/chunks/pages/_app-6ffa2ab900772b67.js +1 -0
- package/packages/scrabble-solver/.next/static/chunks/pages/{index-75517525489ab316.js → index-13ea7770a65c69ee.js} +1 -1
- package/packages/scrabble-solver/.next/static/css/{d676d43c6b9c9a57.css → 551d09cac435debb.css} +1 -1
- package/packages/scrabble-solver/.next/static/css/{6a9e5ba3f77c27f2.css → cdbc9e0afcff5473.css} +1 -1
- package/packages/scrabble-solver/.next/trace +42 -42
- package/packages/scrabble-solver/package-lock.json +85 -85
- package/packages/scrabble-solver/package.json +13 -13
- package/packages/scrabble-solver/src/components/Board/Board.tsx +1 -1
- package/packages/scrabble-solver/src/components/Board/BoardPure.tsx +1 -1
- package/packages/scrabble-solver/src/components/Board/components/Cell/Button.tsx +1 -1
- package/packages/scrabble-solver/src/components/Board/components/Cell/Cell.tsx +1 -1
- package/packages/scrabble-solver/src/components/Board/components/Cell/CellPure.tsx +1 -1
- package/packages/scrabble-solver/src/components/Board/hooks/useGrid.ts +9 -0
- package/packages/scrabble-solver/src/components/Button/Button.tsx +1 -1
- package/packages/scrabble-solver/src/components/Checkbox/Checkbox.tsx +1 -1
- package/packages/scrabble-solver/src/components/Dictionary/Dictionary.tsx +1 -1
- package/packages/scrabble-solver/src/components/DictionaryInput/DictionaryInput.tsx +1 -1
- package/packages/scrabble-solver/src/components/EmptyState/EmptyState.tsx +1 -1
- package/packages/scrabble-solver/src/components/Key/Key.tsx +1 -1
- package/packages/scrabble-solver/src/components/KeyMap/KeyMap.tsx +2 -2
- package/packages/scrabble-solver/src/components/KeyMap/components/Mapping/Mapping.module.scss +4 -0
- package/packages/scrabble-solver/src/components/KeyMap/components/Mapping/Mapping.tsx +16 -12
- package/packages/scrabble-solver/src/components/Loading/Loading.tsx +1 -1
- package/packages/scrabble-solver/src/components/Logo/Logo.tsx +1 -1
- package/packages/scrabble-solver/src/components/NavButtons/NavButtons.tsx +1 -1
- package/packages/scrabble-solver/src/components/NotFound/NotFound.tsx +1 -1
- package/packages/scrabble-solver/src/components/PlainTiles/PlainTiles.tsx +5 -1
- package/packages/scrabble-solver/src/components/PlainTiles/Tile.tsx +1 -1
- package/packages/scrabble-solver/src/components/Rack/Rack.tsx +1 -1
- package/packages/scrabble-solver/src/components/Rack/RackTile.tsx +1 -1
- package/packages/scrabble-solver/src/components/Radio/Radio.tsx +1 -1
- package/packages/scrabble-solver/src/components/RemainingTiles/Character.tsx +1 -1
- package/packages/scrabble-solver/src/components/RemainingTiles/RemainingTiles.tsx +1 -1
- package/packages/scrabble-solver/src/components/Results/Cell.tsx +1 -1
- package/packages/scrabble-solver/src/components/Results/HeaderButton.tsx +1 -1
- package/packages/scrabble-solver/src/components/Results/Result.tsx +1 -1
- package/packages/scrabble-solver/src/components/Results/Results.tsx +1 -1
- package/packages/scrabble-solver/src/components/Results/SolveButton.tsx +1 -1
- package/packages/scrabble-solver/src/components/ResultsInput/ResultsInput.tsx +1 -1
- package/packages/scrabble-solver/src/components/Screen/Screen.tsx +1 -1
- package/packages/scrabble-solver/src/components/Settings/Settings.tsx +1 -1
- package/packages/scrabble-solver/src/components/Settings/components/AutoGroupTilesSetting/AutoGroupTilesSetting.tsx +1 -1
- package/packages/scrabble-solver/src/components/Settings/components/ConfigSetting/ConfigSetting.tsx +1 -1
- package/packages/scrabble-solver/src/components/Settings/components/LocaleSetting/LocaleSetting.tsx +1 -1
- package/packages/scrabble-solver/src/components/Sidebar/Sidebar.tsx +1 -1
- package/packages/scrabble-solver/src/components/Sidebar/components/Section/Section.tsx +1 -1
- package/packages/scrabble-solver/src/components/Splash/Splash.tsx +1 -1
- package/packages/scrabble-solver/src/components/SquareButton/Link.tsx +1 -1
- package/packages/scrabble-solver/src/components/SquareButton/SquareButton.tsx +1 -1
- package/packages/scrabble-solver/src/components/SvgFontCss/SvgFontCss.tsx +12 -0
- package/packages/scrabble-solver/src/components/SvgFontCss/index.ts +1 -0
- package/packages/scrabble-solver/src/components/Tile/Tile.tsx +1 -1
- package/packages/scrabble-solver/src/components/Tile/TilePure.tsx +2 -2
- package/packages/scrabble-solver/src/components/Tooltip/useTooltip.tsx +1 -1
- package/packages/scrabble-solver/src/components/Well/Well.tsx +1 -1
- package/packages/scrabble-solver/src/components/index.ts +1 -0
- package/packages/scrabble-solver/src/hooks/usePortal.tsx +19 -9
- package/packages/scrabble-solver/src/lib/createKeyboardNavigation.ts +3 -0
- package/packages/scrabble-solver/src/lib/memoize.ts +1 -1
- package/packages/scrabble-solver/src/pages/_app.tsx +1 -1
- package/packages/scrabble-solver/src/pages/_document.tsx +1 -1
- package/packages/scrabble-solver/src/pages/index.tsx +6 -15
- package/packages/scrabble-solver/src/styles/global.scss +3 -0
- package/packages/solver/build/PatternsFiller.js +38 -72
- package/packages/solver/build/PatternsGenerator.js +43 -72
- package/packages/solver/build/ScoresCalculator.js +20 -24
- package/packages/solver/build/Solver.js +19 -24
- package/packages/solver/package-lock.json +17 -17
- package/packages/solver/package.json +7 -7
- package/packages/solver/src/PatternsFiller.ts +5 -10
- package/packages/solver/src/PatternsGenerator.ts +17 -16
- package/packages/solver/src/Solver.ts +4 -8
- package/packages/types/build/Board.js +68 -85
- package/packages/types/build/Bonus.js +15 -21
- package/packages/types/build/Cell.js +31 -33
- package/packages/types/build/CharacterBonus.js +18 -40
- package/packages/types/build/Config.js +62 -117
- package/packages/types/build/HorizontalPattern.js +17 -63
- package/packages/types/build/Pattern.js +37 -41
- package/packages/types/build/Result.js +23 -46
- package/packages/types/build/Tile.js +22 -24
- package/packages/types/build/VerticalPattern.js +17 -63
- package/packages/types/build/WordBonus.js +13 -35
- package/packages/types/build/WordDefinition.js +13 -15
- package/packages/types/package.json +2 -2
- package/packages/types/src/Cell.ts +1 -1
- package/packages/types/src/Pattern.ts +1 -1
- package/packages/word-definitions/build/crawl/crawl.js +15 -16
- package/packages/word-definitions/build/crawl/crawlEnglish.js +3 -3
- package/packages/word-definitions/build/crawl/crawlFrench.js +3 -3
- package/packages/word-definitions/build/crawl/crawlGerman.js +3 -3
- package/packages/word-definitions/build/crawl/crawlPolish.js +3 -3
- package/packages/word-definitions/build/crawl/crawlSpanish.js +3 -3
- package/packages/word-definitions/build/getWordDefinition.js +9 -52
- package/packages/word-definitions/build/lib/normalizeDefinition.js +15 -15
- package/packages/word-definitions/build/lib/request.js +8 -20
- package/packages/word-definitions/build/lib/unique.js +1 -1
- package/packages/word-definitions/build/parse/parse.js +18 -19
- package/packages/word-definitions/build/parse/parseEnglish.js +5 -5
- package/packages/word-definitions/build/parse/parseFrench.js +5 -5
- package/packages/word-definitions/build/parse/parseGerman.js +6 -6
- package/packages/word-definitions/build/parse/parsePolish.js +6 -6
- package/packages/word-definitions/build/parse/parseSpanish.js +9 -9
- package/packages/word-definitions/package-lock.json +8 -8
- package/packages/word-definitions/package.json +2 -2
- package/packages/word-lists/build/getDeDeWordList.js +5 -43
- package/packages/word-lists/build/getEnGbWordList.js +5 -43
- package/packages/word-lists/build/getEnUsWordList.js +5 -43
- package/packages/word-lists/build/getEsEsWordList.js +7 -50
- package/packages/word-lists/build/getFrFrWordList.js +9 -50
- package/packages/word-lists/build/getPlPlWordList.js +33 -91
- package/packages/word-lists/build/getWordList.js +16 -17
- package/packages/word-lists/build/lib/downloadFile.d.ts +1 -2
- package/packages/word-lists/build/lib/downloadFile.js +28 -10
- package/packages/word-lists/build/lib/downloadHtml.js +8 -8
- package/packages/word-lists/build/lib/extractWords.js +5 -5
- package/packages/word-lists/build/lib/findFirstWordIndex.js +6 -6
- package/packages/word-lists/build/lib/getHash.js +2 -5
- package/packages/word-lists/build/lib/getTempFilename.js +3 -3
- package/packages/word-lists/build/lib/getTxtWordList.js +10 -56
- package/packages/word-lists/package-lock.json +2 -2
- package/packages/word-lists/package.json +2 -2
- package/packages/word-lists/src/getFrFrWordList.ts +1 -0
- package/packages/word-lists/src/getPlPlWordList.ts +2 -3
- package/packages/word-lists/src/lib/downloadFile.ts +25 -7
- package/packages/word-lists/src/lib/getTxtWordList.ts +2 -4
- package/tsconfig.json +1 -1
- package/packages/dictionaries/build/lib/readFile.d.ts +0 -2
- package/packages/dictionaries/build/lib/readFile.js +0 -57
- package/packages/dictionaries/build/lib/writeFile.d.ts +0 -2
- package/packages/dictionaries/build/lib/writeFile.js +0 -57
- package/packages/dictionaries/src/lib/readFile.ts +0 -15
- package/packages/dictionaries/src/lib/writeFile.ts +0 -15
- package/packages/scrabble-solver/.next/static/chunks/195-fcadef5c6eed8338.js +0 -1
- package/packages/scrabble-solver/.next/static/chunks/pages/_app-f4030148d742bcd2.js +0 -1
- package/packages/scrabble-solver/.next/static/nXSSCVI5pGlS_NxEidxkS/_buildManifest.js +0 -1
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@scrabble-solver/scrabble-solver",
|
|
3
|
-
"version": "2.8.
|
|
3
|
+
"version": "2.8.4",
|
|
4
4
|
"lockfileVersion": 2,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"packages": {
|
|
7
7
|
"": {
|
|
8
8
|
"name": "@scrabble-solver/scrabble-solver",
|
|
9
|
-
"version": "2.8.
|
|
9
|
+
"version": "2.8.4",
|
|
10
10
|
"license": "CC BY-NC-ND 4.0",
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"@popperjs/core": "^2.11.6",
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
"react-modal": "^3.15.1",
|
|
20
20
|
"react-popper": "^2.3.0",
|
|
21
21
|
"react-portal": "^4.2.2",
|
|
22
|
-
"react-redux": "^8.0.
|
|
22
|
+
"react-redux": "^8.0.4",
|
|
23
23
|
"react-use": "^17.4.0",
|
|
24
24
|
"react-window": "^1.8.7",
|
|
25
25
|
"redux": "^4.2.0",
|
|
@@ -28,9 +28,9 @@
|
|
|
28
28
|
"uuid": "^9.0.0"
|
|
29
29
|
},
|
|
30
30
|
"devDependencies": {
|
|
31
|
-
"@svgr/webpack": "^6.
|
|
31
|
+
"@svgr/webpack": "^6.4.0",
|
|
32
32
|
"@types/classnames": "^2.3.0",
|
|
33
|
-
"@types/react": "^18.0.
|
|
33
|
+
"@types/react": "^18.0.21",
|
|
34
34
|
"@types/react-dom": "^18.0.6",
|
|
35
35
|
"@types/react-modal": "^3.13.1",
|
|
36
36
|
"@types/react-portal": "^4.0.4",
|
|
@@ -40,10 +40,10 @@
|
|
|
40
40
|
"@types/redux-saga": "^0.10.5",
|
|
41
41
|
"@types/uuid": "^8.3.4",
|
|
42
42
|
"env-cmd": "^10.1.0",
|
|
43
|
-
"sass": "^1.
|
|
43
|
+
"sass": "^1.55.0"
|
|
44
44
|
},
|
|
45
45
|
"engines": {
|
|
46
|
-
"node": ">=16
|
|
46
|
+
"node": ">=16"
|
|
47
47
|
}
|
|
48
48
|
},
|
|
49
49
|
"node_modules/@ampproject/remapping": {
|
|
@@ -2345,9 +2345,9 @@
|
|
|
2345
2345
|
}
|
|
2346
2346
|
},
|
|
2347
2347
|
"node_modules/@svgr/babel-preset": {
|
|
2348
|
-
"version": "6.
|
|
2349
|
-
"resolved": "https://registry.npmjs.org/@svgr/babel-preset/-/babel-preset-6.
|
|
2350
|
-
"integrity": "sha512-
|
|
2348
|
+
"version": "6.4.0",
|
|
2349
|
+
"resolved": "https://registry.npmjs.org/@svgr/babel-preset/-/babel-preset-6.4.0.tgz",
|
|
2350
|
+
"integrity": "sha512-Ytuh7N282fv2Cy1JePf6HZ29/G5Hb8mQAjx4iykPjvfFl9NK6o5lZavmewgjOGT8kNPtwgvheuOQn4CifHRUhQ==",
|
|
2351
2351
|
"dev": true,
|
|
2352
2352
|
"dependencies": {
|
|
2353
2353
|
"@svgr/babel-plugin-add-jsx-attribute": "^6.3.1",
|
|
@@ -2371,12 +2371,13 @@
|
|
|
2371
2371
|
}
|
|
2372
2372
|
},
|
|
2373
2373
|
"node_modules/@svgr/core": {
|
|
2374
|
-
"version": "6.
|
|
2375
|
-
"resolved": "https://registry.npmjs.org/@svgr/core/-/core-6.
|
|
2376
|
-
"integrity": "sha512-
|
|
2374
|
+
"version": "6.4.0",
|
|
2375
|
+
"resolved": "https://registry.npmjs.org/@svgr/core/-/core-6.4.0.tgz",
|
|
2376
|
+
"integrity": "sha512-wU9uyF6BUnwAqG7fDOowmDQzmbvovj1uq/iETfMK9xwQNaT+e7yN7SmDDcETXC72dnOrMcRuEWw0JEvpJha+yg==",
|
|
2377
2377
|
"dev": true,
|
|
2378
2378
|
"dependencies": {
|
|
2379
|
-
"@svgr/
|
|
2379
|
+
"@svgr/babel-preset": "^6.4.0",
|
|
2380
|
+
"@svgr/plugin-jsx": "^6.4.0",
|
|
2380
2381
|
"camelcase": "^6.2.0",
|
|
2381
2382
|
"cosmiconfig": "^7.0.1"
|
|
2382
2383
|
},
|
|
@@ -2389,9 +2390,9 @@
|
|
|
2389
2390
|
}
|
|
2390
2391
|
},
|
|
2391
2392
|
"node_modules/@svgr/hast-util-to-babel-ast": {
|
|
2392
|
-
"version": "6.
|
|
2393
|
-
"resolved": "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-6.
|
|
2394
|
-
"integrity": "sha512-
|
|
2393
|
+
"version": "6.4.0",
|
|
2394
|
+
"resolved": "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-6.4.0.tgz",
|
|
2395
|
+
"integrity": "sha512-PjcU8jCneKXJnrREycsgfgQ/bzR1ogSKC5MBeUu2wmEoJIjzXX7X14DDktUjU9bkBy26yMDiVHn46Nl82P3WEg==",
|
|
2395
2396
|
"dev": true,
|
|
2396
2397
|
"dependencies": {
|
|
2397
2398
|
"@babel/types": "^7.18.4",
|
|
@@ -2405,27 +2406,15 @@
|
|
|
2405
2406
|
"url": "https://github.com/sponsors/gregberge"
|
|
2406
2407
|
}
|
|
2407
2408
|
},
|
|
2408
|
-
"node_modules/@svgr/hast-util-to-babel-ast/node_modules/entities": {
|
|
2409
|
-
"version": "4.4.0",
|
|
2410
|
-
"resolved": "https://registry.npmjs.org/entities/-/entities-4.4.0.tgz",
|
|
2411
|
-
"integrity": "sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==",
|
|
2412
|
-
"dev": true,
|
|
2413
|
-
"engines": {
|
|
2414
|
-
"node": ">=0.12"
|
|
2415
|
-
},
|
|
2416
|
-
"funding": {
|
|
2417
|
-
"url": "https://github.com/fb55/entities?sponsor=1"
|
|
2418
|
-
}
|
|
2419
|
-
},
|
|
2420
2409
|
"node_modules/@svgr/plugin-jsx": {
|
|
2421
|
-
"version": "6.
|
|
2422
|
-
"resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-6.
|
|
2423
|
-
"integrity": "sha512-
|
|
2410
|
+
"version": "6.4.0",
|
|
2411
|
+
"resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-6.4.0.tgz",
|
|
2412
|
+
"integrity": "sha512-gu6E7v8qRAtCxbymI1et3G7athogvKvzsJkSWiHVZsuVZbyx5O2b7+DIkKvAGh2RvEzgSvfGf8QD1BaHal2vBw==",
|
|
2424
2413
|
"dev": true,
|
|
2425
2414
|
"dependencies": {
|
|
2426
2415
|
"@babel/core": "^7.18.5",
|
|
2427
|
-
"@svgr/babel-preset": "^6.
|
|
2428
|
-
"@svgr/hast-util-to-babel-ast": "^6.
|
|
2416
|
+
"@svgr/babel-preset": "^6.4.0",
|
|
2417
|
+
"@svgr/hast-util-to-babel-ast": "^6.4.0",
|
|
2429
2418
|
"svg-parser": "^2.0.4"
|
|
2430
2419
|
},
|
|
2431
2420
|
"engines": {
|
|
@@ -2470,9 +2459,9 @@
|
|
|
2470
2459
|
}
|
|
2471
2460
|
},
|
|
2472
2461
|
"node_modules/@svgr/webpack": {
|
|
2473
|
-
"version": "6.
|
|
2474
|
-
"resolved": "https://registry.npmjs.org/@svgr/webpack/-/webpack-6.
|
|
2475
|
-
"integrity": "sha512-
|
|
2462
|
+
"version": "6.4.0",
|
|
2463
|
+
"resolved": "https://registry.npmjs.org/@svgr/webpack/-/webpack-6.4.0.tgz",
|
|
2464
|
+
"integrity": "sha512-ejt2JdVX6k0XzUjVObMcTzTgsaCadEVCHBvOt3J0Vcp3eFirf0nqsjQCUD+ogFep25+ICDMZa1nLlotbXxKDXw==",
|
|
2476
2465
|
"dev": true,
|
|
2477
2466
|
"dependencies": {
|
|
2478
2467
|
"@babel/core": "^7.18.5",
|
|
@@ -2480,8 +2469,8 @@
|
|
|
2480
2469
|
"@babel/preset-env": "^7.18.2",
|
|
2481
2470
|
"@babel/preset-react": "^7.17.12",
|
|
2482
2471
|
"@babel/preset-typescript": "^7.17.12",
|
|
2483
|
-
"@svgr/core": "^6.
|
|
2484
|
-
"@svgr/plugin-jsx": "^6.
|
|
2472
|
+
"@svgr/core": "^6.4.0",
|
|
2473
|
+
"@svgr/plugin-jsx": "^6.4.0",
|
|
2485
2474
|
"@svgr/plugin-svgo": "^6.3.1"
|
|
2486
2475
|
},
|
|
2487
2476
|
"engines": {
|
|
@@ -2545,9 +2534,9 @@
|
|
|
2545
2534
|
"integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w=="
|
|
2546
2535
|
},
|
|
2547
2536
|
"node_modules/@types/react": {
|
|
2548
|
-
"version": "18.0.
|
|
2549
|
-
"resolved": "https://registry.npmjs.org/@types/react/-/react-18.0.
|
|
2550
|
-
"integrity": "sha512-
|
|
2537
|
+
"version": "18.0.21",
|
|
2538
|
+
"resolved": "https://registry.npmjs.org/@types/react/-/react-18.0.21.tgz",
|
|
2539
|
+
"integrity": "sha512-7QUCOxvFgnD5Jk8ZKlUAhVcRj7GuJRjnjjiY/IUBWKgOlnvDvTMLD4RTF7NPyVmbRhNrbomZiOepg7M/2Kj1mA==",
|
|
2551
2540
|
"dependencies": {
|
|
2552
2541
|
"@types/prop-types": "*",
|
|
2553
2542
|
"@types/scheduler": "*",
|
|
@@ -3018,6 +3007,18 @@
|
|
|
3018
3007
|
"integrity": "sha512-x+JnqyluoJv8I0U9gVe+Sk2st8vF0CzMt78SXxuoWCooLLY2k5VerIBdpvG7ql6GKI4dzNnPjmqgDJ76EdaAKw==",
|
|
3019
3008
|
"dev": true
|
|
3020
3009
|
},
|
|
3010
|
+
"node_modules/entities": {
|
|
3011
|
+
"version": "4.4.0",
|
|
3012
|
+
"resolved": "https://registry.npmjs.org/entities/-/entities-4.4.0.tgz",
|
|
3013
|
+
"integrity": "sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==",
|
|
3014
|
+
"dev": true,
|
|
3015
|
+
"engines": {
|
|
3016
|
+
"node": ">=0.12"
|
|
3017
|
+
},
|
|
3018
|
+
"funding": {
|
|
3019
|
+
"url": "https://github.com/fb55/entities?sponsor=1"
|
|
3020
|
+
}
|
|
3021
|
+
},
|
|
3021
3022
|
"node_modules/env-cmd": {
|
|
3022
3023
|
"version": "10.1.0",
|
|
3023
3024
|
"resolved": "https://registry.npmjs.org/env-cmd/-/env-cmd-10.1.0.tgz",
|
|
@@ -3733,9 +3734,9 @@
|
|
|
3733
3734
|
}
|
|
3734
3735
|
},
|
|
3735
3736
|
"node_modules/react-redux": {
|
|
3736
|
-
"version": "8.0.
|
|
3737
|
-
"resolved": "https://registry.npmjs.org/react-redux/-/react-redux-8.0.
|
|
3738
|
-
"integrity": "sha512-
|
|
3737
|
+
"version": "8.0.4",
|
|
3738
|
+
"resolved": "https://registry.npmjs.org/react-redux/-/react-redux-8.0.4.tgz",
|
|
3739
|
+
"integrity": "sha512-yMfQ7mX6bWuicz2fids6cR1YT59VTuT8MKyyE310wJQlINKENCeT1UcPdEiX6znI5tF8zXyJ/VYvDgeGuaaNwQ==",
|
|
3739
3740
|
"dependencies": {
|
|
3740
3741
|
"@babel/runtime": "^7.12.1",
|
|
3741
3742
|
"@types/hoist-non-react-statics": "^3.3.1",
|
|
@@ -3993,9 +3994,9 @@
|
|
|
3993
3994
|
}
|
|
3994
3995
|
},
|
|
3995
3996
|
"node_modules/sass": {
|
|
3996
|
-
"version": "1.
|
|
3997
|
-
"resolved": "https://registry.npmjs.org/sass/-/sass-1.
|
|
3998
|
-
"integrity": "sha512-
|
|
3997
|
+
"version": "1.55.0",
|
|
3998
|
+
"resolved": "https://registry.npmjs.org/sass/-/sass-1.55.0.tgz",
|
|
3999
|
+
"integrity": "sha512-Pk+PMy7OGLs9WaxZGJMn7S96dvlyVBwwtToX895WmCpAOr5YiJYEUJfiJidMuKb613z2xNWcXCHEuOvjZbqC6A==",
|
|
3999
4000
|
"devOptional": true,
|
|
4000
4001
|
"dependencies": {
|
|
4001
4002
|
"chokidar": ">=3.0.0 <4.0.0",
|
|
@@ -6005,9 +6006,9 @@
|
|
|
6005
6006
|
"requires": {}
|
|
6006
6007
|
},
|
|
6007
6008
|
"@svgr/babel-preset": {
|
|
6008
|
-
"version": "6.
|
|
6009
|
-
"resolved": "https://registry.npmjs.org/@svgr/babel-preset/-/babel-preset-6.
|
|
6010
|
-
"integrity": "sha512-
|
|
6009
|
+
"version": "6.4.0",
|
|
6010
|
+
"resolved": "https://registry.npmjs.org/@svgr/babel-preset/-/babel-preset-6.4.0.tgz",
|
|
6011
|
+
"integrity": "sha512-Ytuh7N282fv2Cy1JePf6HZ29/G5Hb8mQAjx4iykPjvfFl9NK6o5lZavmewgjOGT8kNPtwgvheuOQn4CifHRUhQ==",
|
|
6011
6012
|
"dev": true,
|
|
6012
6013
|
"requires": {
|
|
6013
6014
|
"@svgr/babel-plugin-add-jsx-attribute": "^6.3.1",
|
|
@@ -6021,43 +6022,36 @@
|
|
|
6021
6022
|
}
|
|
6022
6023
|
},
|
|
6023
6024
|
"@svgr/core": {
|
|
6024
|
-
"version": "6.
|
|
6025
|
-
"resolved": "https://registry.npmjs.org/@svgr/core/-/core-6.
|
|
6026
|
-
"integrity": "sha512-
|
|
6025
|
+
"version": "6.4.0",
|
|
6026
|
+
"resolved": "https://registry.npmjs.org/@svgr/core/-/core-6.4.0.tgz",
|
|
6027
|
+
"integrity": "sha512-wU9uyF6BUnwAqG7fDOowmDQzmbvovj1uq/iETfMK9xwQNaT+e7yN7SmDDcETXC72dnOrMcRuEWw0JEvpJha+yg==",
|
|
6027
6028
|
"dev": true,
|
|
6028
6029
|
"requires": {
|
|
6029
|
-
"@svgr/
|
|
6030
|
+
"@svgr/babel-preset": "^6.4.0",
|
|
6031
|
+
"@svgr/plugin-jsx": "^6.4.0",
|
|
6030
6032
|
"camelcase": "^6.2.0",
|
|
6031
6033
|
"cosmiconfig": "^7.0.1"
|
|
6032
6034
|
}
|
|
6033
6035
|
},
|
|
6034
6036
|
"@svgr/hast-util-to-babel-ast": {
|
|
6035
|
-
"version": "6.
|
|
6036
|
-
"resolved": "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-6.
|
|
6037
|
-
"integrity": "sha512-
|
|
6037
|
+
"version": "6.4.0",
|
|
6038
|
+
"resolved": "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-6.4.0.tgz",
|
|
6039
|
+
"integrity": "sha512-PjcU8jCneKXJnrREycsgfgQ/bzR1ogSKC5MBeUu2wmEoJIjzXX7X14DDktUjU9bkBy26yMDiVHn46Nl82P3WEg==",
|
|
6038
6040
|
"dev": true,
|
|
6039
6041
|
"requires": {
|
|
6040
6042
|
"@babel/types": "^7.18.4",
|
|
6041
6043
|
"entities": "^4.3.0"
|
|
6042
|
-
},
|
|
6043
|
-
"dependencies": {
|
|
6044
|
-
"entities": {
|
|
6045
|
-
"version": "4.4.0",
|
|
6046
|
-
"resolved": "https://registry.npmjs.org/entities/-/entities-4.4.0.tgz",
|
|
6047
|
-
"integrity": "sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==",
|
|
6048
|
-
"dev": true
|
|
6049
|
-
}
|
|
6050
6044
|
}
|
|
6051
6045
|
},
|
|
6052
6046
|
"@svgr/plugin-jsx": {
|
|
6053
|
-
"version": "6.
|
|
6054
|
-
"resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-6.
|
|
6055
|
-
"integrity": "sha512-
|
|
6047
|
+
"version": "6.4.0",
|
|
6048
|
+
"resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-6.4.0.tgz",
|
|
6049
|
+
"integrity": "sha512-gu6E7v8qRAtCxbymI1et3G7athogvKvzsJkSWiHVZsuVZbyx5O2b7+DIkKvAGh2RvEzgSvfGf8QD1BaHal2vBw==",
|
|
6056
6050
|
"dev": true,
|
|
6057
6051
|
"requires": {
|
|
6058
6052
|
"@babel/core": "^7.18.5",
|
|
6059
|
-
"@svgr/babel-preset": "^6.
|
|
6060
|
-
"@svgr/hast-util-to-babel-ast": "^6.
|
|
6053
|
+
"@svgr/babel-preset": "^6.4.0",
|
|
6054
|
+
"@svgr/hast-util-to-babel-ast": "^6.4.0",
|
|
6061
6055
|
"svg-parser": "^2.0.4"
|
|
6062
6056
|
}
|
|
6063
6057
|
},
|
|
@@ -6081,9 +6075,9 @@
|
|
|
6081
6075
|
}
|
|
6082
6076
|
},
|
|
6083
6077
|
"@svgr/webpack": {
|
|
6084
|
-
"version": "6.
|
|
6085
|
-
"resolved": "https://registry.npmjs.org/@svgr/webpack/-/webpack-6.
|
|
6086
|
-
"integrity": "sha512-
|
|
6078
|
+
"version": "6.4.0",
|
|
6079
|
+
"resolved": "https://registry.npmjs.org/@svgr/webpack/-/webpack-6.4.0.tgz",
|
|
6080
|
+
"integrity": "sha512-ejt2JdVX6k0XzUjVObMcTzTgsaCadEVCHBvOt3J0Vcp3eFirf0nqsjQCUD+ogFep25+ICDMZa1nLlotbXxKDXw==",
|
|
6087
6081
|
"dev": true,
|
|
6088
6082
|
"requires": {
|
|
6089
6083
|
"@babel/core": "^7.18.5",
|
|
@@ -6091,8 +6085,8 @@
|
|
|
6091
6085
|
"@babel/preset-env": "^7.18.2",
|
|
6092
6086
|
"@babel/preset-react": "^7.17.12",
|
|
6093
6087
|
"@babel/preset-typescript": "^7.17.12",
|
|
6094
|
-
"@svgr/core": "^6.
|
|
6095
|
-
"@svgr/plugin-jsx": "^6.
|
|
6088
|
+
"@svgr/core": "^6.4.0",
|
|
6089
|
+
"@svgr/plugin-jsx": "^6.4.0",
|
|
6096
6090
|
"@svgr/plugin-svgo": "^6.3.1"
|
|
6097
6091
|
}
|
|
6098
6092
|
},
|
|
@@ -6145,9 +6139,9 @@
|
|
|
6145
6139
|
"integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w=="
|
|
6146
6140
|
},
|
|
6147
6141
|
"@types/react": {
|
|
6148
|
-
"version": "18.0.
|
|
6149
|
-
"resolved": "https://registry.npmjs.org/@types/react/-/react-18.0.
|
|
6150
|
-
"integrity": "sha512-
|
|
6142
|
+
"version": "18.0.21",
|
|
6143
|
+
"resolved": "https://registry.npmjs.org/@types/react/-/react-18.0.21.tgz",
|
|
6144
|
+
"integrity": "sha512-7QUCOxvFgnD5Jk8ZKlUAhVcRj7GuJRjnjjiY/IUBWKgOlnvDvTMLD4RTF7NPyVmbRhNrbomZiOepg7M/2Kj1mA==",
|
|
6151
6145
|
"requires": {
|
|
6152
6146
|
"@types/prop-types": "*",
|
|
6153
6147
|
"@types/scheduler": "*",
|
|
@@ -6521,6 +6515,12 @@
|
|
|
6521
6515
|
"integrity": "sha512-x+JnqyluoJv8I0U9gVe+Sk2st8vF0CzMt78SXxuoWCooLLY2k5VerIBdpvG7ql6GKI4dzNnPjmqgDJ76EdaAKw==",
|
|
6522
6516
|
"dev": true
|
|
6523
6517
|
},
|
|
6518
|
+
"entities": {
|
|
6519
|
+
"version": "4.4.0",
|
|
6520
|
+
"resolved": "https://registry.npmjs.org/entities/-/entities-4.4.0.tgz",
|
|
6521
|
+
"integrity": "sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==",
|
|
6522
|
+
"dev": true
|
|
6523
|
+
},
|
|
6524
6524
|
"env-cmd": {
|
|
6525
6525
|
"version": "10.1.0",
|
|
6526
6526
|
"resolved": "https://registry.npmjs.org/env-cmd/-/env-cmd-10.1.0.tgz",
|
|
@@ -7042,9 +7042,9 @@
|
|
|
7042
7042
|
}
|
|
7043
7043
|
},
|
|
7044
7044
|
"react-redux": {
|
|
7045
|
-
"version": "8.0.
|
|
7046
|
-
"resolved": "https://registry.npmjs.org/react-redux/-/react-redux-8.0.
|
|
7047
|
-
"integrity": "sha512-
|
|
7045
|
+
"version": "8.0.4",
|
|
7046
|
+
"resolved": "https://registry.npmjs.org/react-redux/-/react-redux-8.0.4.tgz",
|
|
7047
|
+
"integrity": "sha512-yMfQ7mX6bWuicz2fids6cR1YT59VTuT8MKyyE310wJQlINKENCeT1UcPdEiX6znI5tF8zXyJ/VYvDgeGuaaNwQ==",
|
|
7048
7048
|
"requires": {
|
|
7049
7049
|
"@babel/runtime": "^7.12.1",
|
|
7050
7050
|
"@types/hoist-non-react-statics": "^3.3.1",
|
|
@@ -7238,9 +7238,9 @@
|
|
|
7238
7238
|
}
|
|
7239
7239
|
},
|
|
7240
7240
|
"sass": {
|
|
7241
|
-
"version": "1.
|
|
7242
|
-
"resolved": "https://registry.npmjs.org/sass/-/sass-1.
|
|
7243
|
-
"integrity": "sha512-
|
|
7241
|
+
"version": "1.55.0",
|
|
7242
|
+
"resolved": "https://registry.npmjs.org/sass/-/sass-1.55.0.tgz",
|
|
7243
|
+
"integrity": "sha512-Pk+PMy7OGLs9WaxZGJMn7S96dvlyVBwwtToX895WmCpAOr5YiJYEUJfiJidMuKb613z2xNWcXCHEuOvjZbqC6A==",
|
|
7244
7244
|
"devOptional": true,
|
|
7245
7245
|
"requires": {
|
|
7246
7246
|
"chokidar": ">=3.0.0 <4.0.0",
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@scrabble-solver/scrabble-solver",
|
|
3
|
-
"version": "2.8.
|
|
3
|
+
"version": "2.8.4",
|
|
4
4
|
"description": "Scrabble Solver 2 - App",
|
|
5
5
|
"engines": {
|
|
6
|
-
"node": ">=16
|
|
6
|
+
"node": ">=16"
|
|
7
7
|
},
|
|
8
8
|
"repository": {
|
|
9
9
|
"type": "git",
|
|
@@ -30,13 +30,13 @@
|
|
|
30
30
|
"dependencies": {
|
|
31
31
|
"@popperjs/core": "^2.11.6",
|
|
32
32
|
"@reduxjs/toolkit": "^1.8.5",
|
|
33
|
-
"@scrabble-solver/configs": "^2.8.
|
|
34
|
-
"@scrabble-solver/constants": "^2.8.
|
|
35
|
-
"@scrabble-solver/dictionaries": "^2.8.
|
|
36
|
-
"@scrabble-solver/logger": "^2.8.
|
|
37
|
-
"@scrabble-solver/solver": "^2.8.
|
|
38
|
-
"@scrabble-solver/types": "^2.8.
|
|
39
|
-
"@scrabble-solver/word-definitions": "^2.8.
|
|
33
|
+
"@scrabble-solver/configs": "^2.8.4",
|
|
34
|
+
"@scrabble-solver/constants": "^2.8.4",
|
|
35
|
+
"@scrabble-solver/dictionaries": "^2.8.4",
|
|
36
|
+
"@scrabble-solver/logger": "^2.8.4",
|
|
37
|
+
"@scrabble-solver/solver": "^2.8.4",
|
|
38
|
+
"@scrabble-solver/types": "^2.8.4",
|
|
39
|
+
"@scrabble-solver/word-definitions": "^2.8.4",
|
|
40
40
|
"classnames": "^2.3.2",
|
|
41
41
|
"next": "^12.3.1",
|
|
42
42
|
"normalize.css": "^8.0.1",
|
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
"react-modal": "^3.15.1",
|
|
46
46
|
"react-popper": "^2.3.0",
|
|
47
47
|
"react-portal": "^4.2.2",
|
|
48
|
-
"react-redux": "^8.0.
|
|
48
|
+
"react-redux": "^8.0.4",
|
|
49
49
|
"react-use": "^17.4.0",
|
|
50
50
|
"react-window": "^1.8.7",
|
|
51
51
|
"redux": "^4.2.0",
|
|
@@ -54,9 +54,9 @@
|
|
|
54
54
|
"uuid": "^9.0.0"
|
|
55
55
|
},
|
|
56
56
|
"devDependencies": {
|
|
57
|
-
"@svgr/webpack": "^6.
|
|
57
|
+
"@svgr/webpack": "^6.4.0",
|
|
58
58
|
"@types/classnames": "^2.3.0",
|
|
59
|
-
"@types/react": "^18.0.
|
|
59
|
+
"@types/react": "^18.0.21",
|
|
60
60
|
"@types/react-dom": "^18.0.6",
|
|
61
61
|
"@types/react-modal": "^3.13.1",
|
|
62
62
|
"@types/react-portal": "^4.0.4",
|
|
@@ -66,7 +66,7 @@
|
|
|
66
66
|
"@types/redux-saga": "^0.10.5",
|
|
67
67
|
"@types/uuid": "^8.3.4",
|
|
68
68
|
"env-cmd": "^10.1.0",
|
|
69
|
-
"sass": "^1.
|
|
69
|
+
"sass": "^1.55.0"
|
|
70
70
|
},
|
|
71
71
|
"gitHead": "1e2d1ad49a288d4a44196d8e3336740da132c637"
|
|
72
72
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Cell } from '@scrabble-solver/types';
|
|
2
2
|
import classNames from 'classnames';
|
|
3
|
-
import
|
|
3
|
+
import { FunctionComponent, KeyboardEventHandler, memo, Ref, RefObject } from 'react';
|
|
4
4
|
|
|
5
5
|
import styles from './Board.module.scss';
|
|
6
6
|
import { Cell as CellComponent } from './components';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import classNames from 'classnames';
|
|
2
|
-
import
|
|
2
|
+
import { ButtonHTMLAttributes, FunctionComponent, MouseEventHandler, ReactNode } from 'react';
|
|
3
3
|
|
|
4
4
|
import { useTooltip } from '../../../Tooltip';
|
|
5
5
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { EMPTY_CELL } from '@scrabble-solver/constants';
|
|
2
2
|
import { Cell as CellModel } from '@scrabble-solver/types';
|
|
3
|
-
import
|
|
3
|
+
import { FunctionComponent, RefObject, useCallback, useMemo } from 'react';
|
|
4
4
|
import { useDispatch } from 'react-redux';
|
|
5
5
|
|
|
6
6
|
import { getTileSizes } from 'lib';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Bonus, Cell, Tile as TileModel } from '@scrabble-solver/types';
|
|
2
2
|
import classNames from 'classnames';
|
|
3
|
-
import
|
|
3
|
+
import { CSSProperties, FocusEventHandler, FunctionComponent, memo, MouseEventHandler, RefObject } from 'react';
|
|
4
4
|
|
|
5
5
|
import { ArrowDown } from 'icons';
|
|
6
6
|
import { Translate } from 'types';
|
|
@@ -214,6 +214,15 @@ const useGrid = (rows: Cell[][]): [State, Actions] => {
|
|
|
214
214
|
dispatch(boardSlice.actions.changeCellValue({ ...position, value: character }));
|
|
215
215
|
onMoveFocus('forward');
|
|
216
216
|
},
|
|
217
|
+
onSpace: (event) => {
|
|
218
|
+
const position = getInputRefPosition(event.target as HTMLInputElement);
|
|
219
|
+
|
|
220
|
+
if (!position) {
|
|
221
|
+
return;
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
dispatch(boardSlice.actions.toggleCellIsBlank(position));
|
|
225
|
+
},
|
|
217
226
|
});
|
|
218
227
|
}, [changeActiveIndex, config, dispatch, lastDirectionRef, onDirectionToggle, rows]);
|
|
219
228
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import classNames from 'classnames';
|
|
2
|
-
import
|
|
2
|
+
import { ButtonHTMLAttributes, FunctionComponent, MouseEventHandler, ReactNode, SVGAttributes } from 'react';
|
|
3
3
|
|
|
4
4
|
import { useTooltip } from '../Tooltip';
|
|
5
5
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import classNames from 'classnames';
|
|
2
|
-
import
|
|
2
|
+
import { ChangeEvent, FormEvent, FunctionComponent } from 'react';
|
|
3
3
|
import { useDispatch } from 'react-redux';
|
|
4
4
|
|
|
5
5
|
import { dictionarySlice, selectDictionary, useTranslate, useTypedSelector } from 'state';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import classNames from 'classnames';
|
|
2
|
-
import
|
|
2
|
+
import { FunctionComponent, ReactNode, useMemo } from 'react';
|
|
3
3
|
|
|
4
4
|
import { COLOR_BLUE, COLOR_GREEN, COLOR_RED, COLOR_YELLOW } from 'parameters';
|
|
5
5
|
import { useTranslate } from 'state';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { FunctionComponent } from 'react';
|
|
2
2
|
|
|
3
3
|
import { selectConfig, useTranslate, useTypedSelector } from 'state';
|
|
4
4
|
|
|
@@ -42,7 +42,7 @@ const KeyMap: FunctionComponent<Props> = ({ className, isOpen, onClose }) => {
|
|
|
42
42
|
</Sidebar.Section>
|
|
43
43
|
|
|
44
44
|
<Sidebar.Section title={translate('keyMap.board')}>
|
|
45
|
-
<Mapping description={translate('keyMap.board.toggle-blank')} mapping={[[CTRL, <Key key="b">B</Key>]]} />
|
|
45
|
+
<Mapping description={translate('keyMap.board.toggle-blank')} mapping={[SPACE, [CTRL, <Key key="b">B</Key>]]} />
|
|
46
46
|
<Mapping description={translate('keyMap.board.toggle-direction')} mapping={[[CTRL, ARROWS]]} />
|
|
47
47
|
</Sidebar.Section>
|
|
48
48
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import classNames from 'classnames';
|
|
2
|
-
import
|
|
2
|
+
import { Fragment, FunctionComponent, ReactNode } from 'react';
|
|
3
3
|
|
|
4
4
|
import styles from './Mapping.module.scss';
|
|
5
5
|
|
|
@@ -15,17 +15,21 @@ const Mapping: FunctionComponent<Props> = ({ className, description, mapping })
|
|
|
15
15
|
|
|
16
16
|
<div className={styles.keys}>
|
|
17
17
|
{mapping.map((key, index) => (
|
|
18
|
-
<
|
|
19
|
-
{
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
18
|
+
<Fragment key={index}>
|
|
19
|
+
<div className={styles.group}>
|
|
20
|
+
{Array.isArray(key) ? (
|
|
21
|
+
<>
|
|
22
|
+
{key[0]}
|
|
23
|
+
<span className={styles.plus}>+</span>
|
|
24
|
+
{key[1]}
|
|
25
|
+
</>
|
|
26
|
+
) : (
|
|
27
|
+
key
|
|
28
|
+
)}
|
|
29
|
+
</div>
|
|
30
|
+
|
|
31
|
+
{mapping.length > 1 && index < mapping.length - 1 && <span className={styles.slash}>/</span>}
|
|
32
|
+
</Fragment>
|
|
29
33
|
))}
|
|
30
34
|
</div>
|
|
31
35
|
</div>
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import classNames from 'classnames';
|
|
2
|
-
import
|
|
2
|
+
import { CSSProperties, FunctionComponent, useMemo } from 'react';
|
|
3
|
+
|
|
4
|
+
import SvgFontCss from '../SvgFontCss';
|
|
3
5
|
|
|
4
6
|
import { createPlainTiles, getViewbox } from './lib';
|
|
5
7
|
import styles from './PlainTiles.module.scss';
|
|
@@ -28,6 +30,8 @@ const PlainTiles: FunctionComponent<Props> = ({ className, color, content, dropS
|
|
|
28
30
|
viewBox={getViewbox(content)}
|
|
29
31
|
xmlns="http://www.w3.org/2000/svg"
|
|
30
32
|
>
|
|
33
|
+
<SvgFontCss />
|
|
34
|
+
|
|
31
35
|
{tiles.map((tile, index) => (
|
|
32
36
|
<Tile
|
|
33
37
|
character={tile.character}
|