scrabble-solver 2.12.1 → 2.12.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -0
- package/lerna.json +1 -1
- package/package.json +7 -7
- package/packages/configs/package.json +4 -4
- package/packages/constants/package.json +2 -2
- package/packages/dictionaries/package-lock.json +2 -2
- package/packages/dictionaries/package.json +5 -5
- package/packages/logger/package-lock.json +2 -2
- package/packages/logger/package.json +2 -2
- package/packages/scrabble-solver/.next/BUILD_ID +1 -1
- package/packages/scrabble-solver/.next/build-manifest.json +13 -13
- 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/edge-server-production/0.pack +0 -0
- package/packages/scrabble-solver/.next/cache/webpack/edge-server-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/required-server-files.json +1 -1
- package/packages/scrabble-solver/.next/routes-manifest.json +1 -1
- package/packages/scrabble-solver/.next/server/chunks/277.js +70 -37
- package/packages/scrabble-solver/.next/server/chunks/675.js +35 -13
- package/packages/scrabble-solver/.next/server/chunks/859.js +21 -4
- package/packages/scrabble-solver/.next/server/middleware-build-manifest.js +1 -1
- package/packages/scrabble-solver/.next/server/pages/404.html +1 -1
- package/packages/scrabble-solver/.next/server/pages/404.js.nft.json +1 -1
- package/packages/scrabble-solver/.next/server/pages/500.html +1 -1
- package/packages/scrabble-solver/.next/server/pages/_app.js.nft.json +1 -1
- package/packages/scrabble-solver/.next/server/pages/api/solve.js +29 -2
- package/packages/scrabble-solver/.next/server/pages/index.html +1 -1
- package/packages/scrabble-solver/.next/server/pages/index.js +13 -10
- 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/server/pages-manifest.json +1 -1
- package/packages/scrabble-solver/.next/static/{_yG9K-PD5kWT_p4sMdCSV → 9dmPfnTc_AQTHBPvL7xQe}/_buildManifest.js +1 -1
- package/packages/scrabble-solver/.next/static/chunks/{framework-2c5cac93e8c637b5.js → framework-2c29dc3cd933590b.js} +2 -2
- package/packages/scrabble-solver/.next/static/chunks/main-4dcb7f9b52833aba.js +1 -0
- package/packages/scrabble-solver/.next/static/chunks/pages/_app-02851b06b95b19cb.js +32 -0
- package/packages/scrabble-solver/.next/static/chunks/pages/index-0ba5607d1aad8a09.js +1 -0
- package/packages/scrabble-solver/.next/static/css/{58053f9594647860.css → 09dfdea53eba31a9.css} +1 -1
- package/packages/scrabble-solver/.next/trace +52 -52
- package/packages/scrabble-solver/package-lock.json +251 -347
- package/packages/scrabble-solver/package.json +13 -13
- package/packages/scrabble-solver/src/components/Board/Board.module.scss +33 -0
- package/packages/scrabble-solver/src/components/Board/Board.tsx +3 -0
- package/packages/scrabble-solver/src/components/Board/BoardPure.tsx +25 -1
- package/packages/scrabble-solver/src/components/Board/components/InputPrompt/InputPrompt.tsx +1 -0
- package/packages/scrabble-solver/src/components/Board/hooks/useBackgroundImage.tsx +1 -6
- package/packages/scrabble-solver/src/components/Rack/components/InputPrompt/InputPrompt.tsx +1 -0
- package/packages/scrabble-solver/src/modals/SettingsModal/SettingsModal.tsx +7 -3
- package/packages/scrabble-solver/src/state/selectors.ts +7 -7
- package/packages/solver/README.md +1 -1
- package/packages/solver/build/areDigraphsValid.d.ts +3 -0
- package/packages/solver/build/areDigraphsValid.js +16 -0
- package/packages/solver/build/index.d.ts +1 -0
- package/packages/solver/build/index.js +3 -1
- package/packages/solver/build/solve.js +3 -1
- package/packages/solver/package-lock.json +2 -2
- package/packages/solver/package.json +6 -6
- package/packages/solver/src/areDigraphsValid.ts +20 -0
- package/packages/solver/src/getPatternScore.test.ts +9 -0
- package/packages/solver/src/index.ts +1 -0
- package/packages/solver/src/solve.test.ts +25 -1
- package/packages/solver/src/solve.ts +3 -1
- package/packages/types/package.json +3 -3
- package/packages/word-definitions/package-lock.json +2 -2
- package/packages/word-definitions/package.json +3 -3
- package/packages/word-lists/package-lock.json +2 -2
- package/packages/word-lists/package.json +3 -3
- package/packages/scrabble-solver/.next/static/chunks/main-0ecb9ccfcb6c9b24.js +0 -1
- package/packages/scrabble-solver/.next/static/chunks/pages/_app-bea4539a6b8042de.js +0 -32
- package/packages/scrabble-solver/.next/static/chunks/pages/index-4e8566409753e1c3.js +0 -1
- /package/packages/scrabble-solver/.next/static/{_yG9K-PD5kWT_p4sMdCSV → 9dmPfnTc_AQTHBPvL7xQe}/_ssgManifest.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":4,"routes":{"/":{"initialRevalidateSeconds":false,"srcRoute":null,"dataRoute":"/_next/data/
|
|
1
|
+
{"version":4,"routes":{"/":{"initialRevalidateSeconds":false,"srcRoute":null,"dataRoute":"/_next/data/9dmPfnTc_AQTHBPvL7xQe/index.json"}},"dynamicRoutes":{},"notFoundRoutes":[],"preview":{"previewModeId":"fa2744b62df4237b8f5ff40927a05acf","previewModeSigningKey":"95a3ff3b682f56f2f6fcd987e89553617f6d7ea293fd593ae0ba33c580e84f23","previewModeEncryptionKey":"486030fd8e1d1bb4f6a1b63865c132233fa3be1d5aa7a8cb93f2ef99d3f4207b"}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":1,"config":{"env":{},"eslint":{"ignoreDuringBuilds":false},"typescript":{"ignoreBuildErrors":false,"tsconfigPath":"tsconfig.json"},"distDir":".next","cleanDistDir":true,"assetPrefix":"","configOrigin":"next.config.js","useFileSystemPublicRoutes":true,"generateEtags":true,"pageExtensions":["tsx","ts","jsx","js"],"
|
|
1
|
+
{"version":1,"config":{"env":{},"eslint":{"ignoreDuringBuilds":false},"typescript":{"ignoreBuildErrors":false,"tsconfigPath":"tsconfig.json"},"distDir":".next","cleanDistDir":true,"assetPrefix":"","configOrigin":"next.config.js","useFileSystemPublicRoutes":true,"generateEtags":true,"pageExtensions":["tsx","ts","jsx","js"],"poweredByHeader":true,"compress":false,"analyticsId":"","images":{"deviceSizes":[640,750,828,1080,1200,1920,2048,3840],"imageSizes":[16,32,48,64,96,128,256,384],"path":"/_next/image","loader":"default","loaderFile":"","domains":[],"disableStaticImages":false,"minimumCacheTTL":60,"formats":["image/webp"],"dangerouslyAllowSVG":false,"contentSecurityPolicy":"script-src 'none'; frame-src 'none'; sandbox;","contentDispositionType":"inline","remotePatterns":[],"unoptimized":false},"devIndicators":{"buildActivity":false,"buildActivityPosition":"bottom-right"},"onDemandEntries":{"maxInactiveAge":15000,"pagesBufferLength":2},"amp":{"canonicalBase":""},"basePath":"","sassOptions":{},"trailingSlash":false,"i18n":null,"productionBrowserSourceMaps":false,"optimizeFonts":true,"excludeDefaultMomentLocales":true,"serverRuntimeConfig":{},"publicRuntimeConfig":{},"reactStrictMode":true,"httpAgentOptions":{"keepAlive":true},"outputFileTracing":true,"staticPageGenerationTimeout":60,"swcMinify":true,"experimental":{"clientRouterFilter":false,"clientRouterFilterRedirects":false,"fetchCacheKeyPrefix":"","middlewarePrefetch":"flexible","optimisticClientCache":true,"manualClientBasePath":false,"legacyBrowsers":false,"newNextLinkBehavior":true,"cpus":31,"sharedPool":true,"isrFlushToDisk":true,"workerThreads":false,"pageEnv":false,"optimizeCss":false,"nextScriptWorkers":false,"scrollRestoration":false,"externalDir":false,"disableOptimizedLoading":false,"gzipSize":true,"swcFileReading":true,"craCompat":false,"esmExternals":true,"appDir":false,"isrMemoryCacheSize":52428800,"fullySpecified":false,"outputFileTracingRoot":"/home/kamil/projects/scrabble-solver/packages/scrabble-solver","swcTraceProfiling":false,"forceSwcTransforms":false,"largePageDataBytes":128000,"enableUndici":false,"adjustFontFallbacks":false,"adjustFontFallbacksWithSizeAdjust":false,"typedRoutes":false,"instrumentationHook":false,"trustHostHeader":false},"configFileName":"next.config.js"},"appDir":"/home/kamil/projects/scrabble-solver/packages/scrabble-solver","relativeAppDir":"","files":[".next/routes-manifest.json",".next/server/pages-manifest.json",".next/build-manifest.json",".next/prerender-manifest.json",".next/server/middleware-manifest.json",".next/server/middleware-build-manifest.js",".next/server/middleware-react-loadable-manifest.js",".next/react-loadable-manifest.json",".next/server/font-manifest.json",".next/BUILD_ID",".next/server/next-font-manifest.js",".next/server/next-font-manifest.json"],"ignore":["node_modules/next/dist/compiled/@ampproject/toolbox-optimizer/**/*"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"pages404":true,"basePath":"","redirects":[{"source":"/:path+/","destination":"/:path+","internal":true,"statusCode":308,"regex":"^(?:/((?:[^/]+?)(?:/(?:[^/]+?))*))/$"}],"headers":[],"dynamicRoutes":[{"page":"/api/dictionary/[locale]","regex":"^/api/dictionary/([^/]+?)(?:/)?$","routeKeys":{"
|
|
1
|
+
{"version":3,"pages404":true,"basePath":"","redirects":[{"source":"/:path+/","destination":"/:path+","internal":true,"statusCode":308,"regex":"^(?:/((?:[^/]+?)(?:/(?:[^/]+?))*))/$"}],"headers":[],"dynamicRoutes":[{"page":"/api/dictionary/[locale]","regex":"^/api/dictionary/([^/]+?)(?:/)?$","routeKeys":{"nextParamlocale":"nextParamlocale"},"namedRegex":"^/api/dictionary/(?<nextParamlocale>[^/]+?)(?:/)?$"},{"page":"/api/dictionary/[locale]/[word]","regex":"^/api/dictionary/([^/]+?)/([^/]+?)(?:/)?$","routeKeys":{"nextParamlocale":"nextParamlocale","nextParamword":"nextParamword"},"namedRegex":"^/api/dictionary/(?<nextParamlocale>[^/]+?)/(?<nextParamword>[^/]+?)(?:/)?$"}],"staticRoutes":[{"page":"/","regex":"^/(?:/)?$","routeKeys":{},"namedRegex":"^/(?:/)?$"},{"page":"/404","regex":"^/404(?:/)?$","routeKeys":{},"namedRegex":"^/404(?:/)?$"}],"dataRoutes":[{"page":"/","dataRouteRegex":"^/_next/data/9dmPfnTc_AQTHBPvL7xQe/index.json$"}],"rsc":{"header":"RSC","varyHeader":"RSC, Next-Router-State-Tree, Next-Router-Prefetch","contentTypeHeader":"text/x-component"},"rewrites":[]}
|
|
@@ -994,6 +994,9 @@ module.exports = {
|
|
|
994
994
|
"focus": "Board_focus__dIJT4",
|
|
995
995
|
"hidden": "Board_hidden__KQoVq",
|
|
996
996
|
"hide": "Board_hide__Fskbc",
|
|
997
|
+
"iconContainer": "Board_iconContainer__l7Cfh",
|
|
998
|
+
"iconBackground": "Board_iconBackground__40hl_",
|
|
999
|
+
"icon": "Board_icon__155Mm",
|
|
997
1000
|
"rotate": "Board_rotate__ynCR2",
|
|
998
1001
|
"wave": "Board_wave__NDbpN"
|
|
999
1002
|
};
|
|
@@ -1610,6 +1613,7 @@ const Board = ({ className })=>{
|
|
|
1610
1613
|
const locale = (0,state__WEBPACK_IMPORTED_MODULE_9__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_9__/* .selectLocale */ .fN);
|
|
1611
1614
|
const rows = (0,state__WEBPACK_IMPORTED_MODULE_9__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_9__/* .selectRowsWithCandidate */ .ZA);
|
|
1612
1615
|
const inputMode = (0,state__WEBPACK_IMPORTED_MODULE_9__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_9__/* .selectInputMode */ .Ub);
|
|
1616
|
+
const filteredCells = (0,state__WEBPACK_IMPORTED_MODULE_9__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_9__/* .selectFilteredCells */ .Ju);
|
|
1613
1617
|
const { cellSize } = (0,hooks__WEBPACK_IMPORTED_MODULE_7__/* .useAppLayout */ .Ft)();
|
|
1614
1618
|
const [{ activeIndex , direction , inputRefs }, { insertValue , onChange , onDirectionToggle , onFocus , onKeyDown , onPaste }] = (0,_hooks__WEBPACK_IMPORTED_MODULE_12__/* .useGrid */ .Nm)(rows);
|
|
1615
1619
|
const boardStyle = (0,_hooks__WEBPACK_IMPORTED_MODULE_12__/* .useBoardStyle */ .oQ)();
|
|
@@ -1728,6 +1732,7 @@ const Board = ({ className })=>{
|
|
|
1728
1732
|
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_BoardPure__WEBPACK_IMPORTED_MODULE_10__/* ["default"] */ .Z, {
|
|
1729
1733
|
className: className,
|
|
1730
1734
|
cellSize: cellSize,
|
|
1735
|
+
filteredCells: filteredCells,
|
|
1731
1736
|
inputRefs: inputRefs,
|
|
1732
1737
|
ref: ref,
|
|
1733
1738
|
rows: rows,
|
|
@@ -1813,37 +1818,63 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
|
|
|
1813
1818
|
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
|
|
1814
1819
|
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(16689);
|
|
1815
1820
|
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
|
|
1816
|
-
/* harmony import */ var
|
|
1817
|
-
/* harmony import */ var
|
|
1818
|
-
/* harmony import */ var
|
|
1819
|
-
var
|
|
1820
|
-
|
|
1821
|
+
/* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(3186);
|
|
1822
|
+
/* harmony import */ var parameters__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(64534);
|
|
1823
|
+
/* harmony import */ var _Board_module_scss__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(33791);
|
|
1824
|
+
/* harmony import */ var _Board_module_scss__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_Board_module_scss__WEBPACK_IMPORTED_MODULE_6__);
|
|
1825
|
+
/* harmony import */ var _components__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(94347);
|
|
1826
|
+
var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_components__WEBPACK_IMPORTED_MODULE_5__]);
|
|
1827
|
+
_components__WEBPACK_IMPORTED_MODULE_5__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
|
|
1828
|
+
|
|
1821
1829
|
|
|
1822
1830
|
|
|
1823
1831
|
|
|
1824
1832
|
|
|
1825
1833
|
|
|
1826
|
-
|
|
1827
|
-
|
|
1834
|
+
|
|
1835
|
+
const BoardPure = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_2__.forwardRef)(({ className , cellSize , filteredCells , inputRefs , rows , style , onBlur , onChange , onFocus , onKeyDown , onPaste }, ref)=>/*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
|
|
1836
|
+
className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_Board_module_scss__WEBPACK_IMPORTED_MODULE_6___default().board), className),
|
|
1828
1837
|
ref: ref,
|
|
1829
1838
|
style: style,
|
|
1830
1839
|
onBlur: onBlur,
|
|
1831
1840
|
onKeyDown: onKeyDown,
|
|
1832
1841
|
onPaste: onPaste,
|
|
1833
|
-
children:
|
|
1834
|
-
|
|
1835
|
-
|
|
1836
|
-
|
|
1837
|
-
|
|
1838
|
-
|
|
1839
|
-
|
|
1840
|
-
|
|
1841
|
-
|
|
1842
|
-
|
|
1843
|
-
|
|
1844
|
-
|
|
1845
|
-
|
|
1846
|
-
|
|
1842
|
+
children: [
|
|
1843
|
+
rows.map((cells, y)=>/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(react__WEBPACK_IMPORTED_MODULE_2__.Fragment, {
|
|
1844
|
+
children: cells.map((cell, x)=>/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components__WEBPACK_IMPORTED_MODULE_5__/* .Cell */ .bL, {
|
|
1845
|
+
className: (_Board_module_scss__WEBPACK_IMPORTED_MODULE_6___default().cell),
|
|
1846
|
+
cell: cell,
|
|
1847
|
+
cellBottom: y < rows.length - 1 ? rows[y + 1][x] : undefined,
|
|
1848
|
+
cellLeft: x > 0 ? rows[y][x - 1] : undefined,
|
|
1849
|
+
cellRight: x < rows.length - 1 ? rows[y][x + 1] : undefined,
|
|
1850
|
+
cellTop: y > 0 ? rows[y - 1][x] : undefined,
|
|
1851
|
+
inputRef: inputRefs[y][x],
|
|
1852
|
+
size: cellSize,
|
|
1853
|
+
onChange: onChange,
|
|
1854
|
+
onFocus: onFocus
|
|
1855
|
+
}, x))
|
|
1856
|
+
}, y)),
|
|
1857
|
+
filteredCells.map(({ x , y })=>/*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
|
|
1858
|
+
className: (_Board_module_scss__WEBPACK_IMPORTED_MODULE_6___default().iconContainer),
|
|
1859
|
+
style: {
|
|
1860
|
+
height: cellSize,
|
|
1861
|
+
width: cellSize,
|
|
1862
|
+
left: x * (cellSize + parameters__WEBPACK_IMPORTED_MODULE_4__/* .BORDER_WIDTH */ .YF),
|
|
1863
|
+
top: y * (cellSize + parameters__WEBPACK_IMPORTED_MODULE_4__/* .BORDER_WIDTH */ .YF)
|
|
1864
|
+
},
|
|
1865
|
+
children: [
|
|
1866
|
+
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
|
|
1867
|
+
className: (_Board_module_scss__WEBPACK_IMPORTED_MODULE_6___default().iconBackground)
|
|
1868
|
+
}),
|
|
1869
|
+
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(icons__WEBPACK_IMPORTED_MODULE_3__/* .FlagFill */ .aR, {
|
|
1870
|
+
className: (_Board_module_scss__WEBPACK_IMPORTED_MODULE_6___default().icon)
|
|
1871
|
+
})
|
|
1872
|
+
]
|
|
1873
|
+
}, [
|
|
1874
|
+
x,
|
|
1875
|
+
y
|
|
1876
|
+
].join("-")))
|
|
1877
|
+
]
|
|
1847
1878
|
}));
|
|
1848
1879
|
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (/*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_2__.memo)(BoardPure));
|
|
1849
1880
|
|
|
@@ -2124,6 +2155,10 @@ const InputPrompt = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_2__.forwardR
|
|
|
2124
2155
|
if (inputRef) {
|
|
2125
2156
|
inputRef.focus();
|
|
2126
2157
|
inputRef.select();
|
|
2158
|
+
inputRef.scrollIntoView({
|
|
2159
|
+
block: "start",
|
|
2160
|
+
inline: "center"
|
|
2161
|
+
});
|
|
2127
2162
|
}
|
|
2128
2163
|
}, [
|
|
2129
2164
|
inputRef
|
|
@@ -2365,7 +2400,6 @@ const useBackgroundImage = ()=>{
|
|
|
2365
2400
|
x: Math.floor(config.boardWidth / 2),
|
|
2366
2401
|
y: Math.floor(config.boardHeight / 2)
|
|
2367
2402
|
};
|
|
2368
|
-
const cellFilter = (0,state__WEBPACK_IMPORTED_MODULE_9__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_9__/* .selectCellFilter */ .Jw);
|
|
2369
2403
|
const viewBoxHeight = boardSize;
|
|
2370
2404
|
const viewBoxWidth = boardSize;
|
|
2371
2405
|
const bonusSize = cellSize * 0.8;
|
|
@@ -2536,12 +2570,7 @@ const useBackgroundImage = ()=>{
|
|
|
2536
2570
|
width: iconSize,
|
|
2537
2571
|
x: getX(center) + iconOffset,
|
|
2538
2572
|
y: getY(center) + iconOffset
|
|
2539
|
-
})
|
|
2540
|
-
cellFilter.map((cell, index)=>/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("use", {
|
|
2541
|
-
href: `#${CELL_FILTER}`,
|
|
2542
|
-
x: getX(cell),
|
|
2543
|
-
y: getY(cell)
|
|
2544
|
-
}, index))
|
|
2573
|
+
})
|
|
2545
2574
|
]
|
|
2546
2575
|
})
|
|
2547
2576
|
}));
|
|
@@ -4865,6 +4894,10 @@ const InputPrompt = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_2__.forwardR
|
|
|
4865
4894
|
if (inputRef) {
|
|
4866
4895
|
inputRef.focus();
|
|
4867
4896
|
inputRef.select();
|
|
4897
|
+
inputRef.scrollIntoView({
|
|
4898
|
+
block: "end",
|
|
4899
|
+
inline: "center"
|
|
4900
|
+
});
|
|
4868
4901
|
}
|
|
4869
4902
|
}, [
|
|
4870
4903
|
inputRef
|
|
@@ -9412,7 +9445,7 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
|
|
|
9412
9445
|
/* harmony export */ "GL": () => (/* reexport safe */ _selectors__WEBPACK_IMPORTED_MODULE_2__.GL),
|
|
9413
9446
|
/* harmony export */ "HM": () => (/* reexport safe */ _selectors__WEBPACK_IMPORTED_MODULE_2__.HM),
|
|
9414
9447
|
/* harmony export */ "I8": () => (/* reexport safe */ _slices__WEBPACK_IMPORTED_MODULE_3__.I8),
|
|
9415
|
-
/* harmony export */ "
|
|
9448
|
+
/* harmony export */ "Ju": () => (/* reexport safe */ _selectors__WEBPACK_IMPORTED_MODULE_2__.Ju),
|
|
9416
9449
|
/* harmony export */ "Mj": () => (/* reexport safe */ _selectors__WEBPACK_IMPORTED_MODULE_2__.Mj),
|
|
9417
9450
|
/* harmony export */ "O_": () => (/* reexport safe */ _slices__WEBPACK_IMPORTED_MODULE_3__.O_),
|
|
9418
9451
|
/* harmony export */ "Or": () => (/* reexport safe */ _selectors__WEBPACK_IMPORTED_MODULE_2__.Or),
|
|
@@ -9842,7 +9875,7 @@ function* ensureProperTilesCount() {
|
|
|
9842
9875
|
/* harmony export */ "En": () => (/* binding */ selectHasOverusedTiles),
|
|
9843
9876
|
/* harmony export */ "GL": () => (/* binding */ selectResultCandidateCells),
|
|
9844
9877
|
/* harmony export */ "HM": () => (/* binding */ selectVerify),
|
|
9845
|
-
/* harmony export */ "
|
|
9878
|
+
/* harmony export */ "Ju": () => (/* binding */ selectFilteredCells),
|
|
9846
9879
|
/* harmony export */ "Mj": () => (/* binding */ selectAreResultsOutdated),
|
|
9847
9880
|
/* harmony export */ "Or": () => (/* binding */ selectCharacterPoints),
|
|
9848
9881
|
/* harmony export */ "QB": () => (/* binding */ selectRack),
|
|
@@ -9932,9 +9965,9 @@ const selectConfig = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSele
|
|
|
9932
9965
|
selectConfigId,
|
|
9933
9966
|
selectLocale
|
|
9934
9967
|
], _scrabble_solver_configs__WEBPACK_IMPORTED_MODULE_1__.getLocaleConfig);
|
|
9935
|
-
const
|
|
9968
|
+
const selectFilteredCells = selectCellFilterRoot;
|
|
9936
9969
|
const selectCellIsFiltered = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
|
|
9937
|
-
|
|
9970
|
+
selectFilteredCells,
|
|
9938
9971
|
selectPoint
|
|
9939
9972
|
], (cellFilter, { x , y })=>{
|
|
9940
9973
|
return cellFilter.some((cell)=>cell.x === x && cell.y === y);
|
|
@@ -9965,7 +9998,7 @@ const selectSortedResults = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.cre
|
|
|
9965
9998
|
const selectGroupedResults = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
|
|
9966
9999
|
selectSortedResults,
|
|
9967
10000
|
selectResultsQuery,
|
|
9968
|
-
|
|
10001
|
+
selectFilteredCells
|
|
9969
10002
|
], lib__WEBPACK_IMPORTED_MODULE_5__/* .groupResults */ .CU);
|
|
9970
10003
|
const selectResults = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
|
|
9971
10004
|
selectGroupedResults
|
|
@@ -9978,9 +10011,9 @@ const selectResults = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSel
|
|
|
9978
10011
|
const selectIsResultMatching = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
|
|
9979
10012
|
selectResults,
|
|
9980
10013
|
selectResultsQuery,
|
|
9981
|
-
|
|
10014
|
+
selectFilteredCells,
|
|
9982
10015
|
selectResultIndex
|
|
9983
|
-
], (results, query,
|
|
10016
|
+
], (results, query, filteredCells, index)=>{
|
|
9984
10017
|
if (!results) {
|
|
9985
10018
|
return false;
|
|
9986
10019
|
}
|
|
@@ -9989,8 +10022,8 @@ const selectIsResultMatching = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.
|
|
|
9989
10022
|
if (!regExp.test(result.word)) {
|
|
9990
10023
|
return false;
|
|
9991
10024
|
}
|
|
9992
|
-
if (
|
|
9993
|
-
return
|
|
10025
|
+
if (filteredCells) {
|
|
10026
|
+
return filteredCells.every(({ x , y })=>result.cells.some((cell)=>cell.x === x && cell.y === y));
|
|
9994
10027
|
}
|
|
9995
10028
|
return true;
|
|
9996
10029
|
});
|
|
@@ -213,8 +213,26 @@ function handleLoading(img, src, placeholder, onLoadRef, onLoadingCompleteRef, s
|
|
|
213
213
|
if (false) {}
|
|
214
214
|
});
|
|
215
215
|
}
|
|
216
|
+
function getDynamicProps(fetchPriority) {
|
|
217
|
+
const [majorStr, minorStr] = _react.version.split(".");
|
|
218
|
+
const major = parseInt(majorStr, 10);
|
|
219
|
+
const minor = parseInt(minorStr, 10);
|
|
220
|
+
if (major > 18 || major === 18 && minor >= 3) {
|
|
221
|
+
// In React 18.3.0 or newer, we must use camelCase
|
|
222
|
+
// prop to avoid "Warning: Invalid DOM property".
|
|
223
|
+
// See https://github.com/facebook/react/pull/25927
|
|
224
|
+
return {
|
|
225
|
+
fetchPriority
|
|
226
|
+
};
|
|
227
|
+
}
|
|
228
|
+
// In React 18.2.0 or older, we must use lowercase prop
|
|
229
|
+
// to avoid "Warning: Invalid DOM property".
|
|
230
|
+
return {
|
|
231
|
+
fetchpriority: fetchPriority
|
|
232
|
+
};
|
|
233
|
+
}
|
|
216
234
|
const ImageElement = /*#__PURE__*/ (0, _react).forwardRef((_param, forwardedRef)=>{
|
|
217
|
-
var { imgAttributes , heightInt , widthInt , qualityInt , className , imgStyle , blurStyle , isLazy , fill , placeholder , loading , srcString , config , unoptimized , loader , onLoadRef , onLoadingCompleteRef , setBlurComplete , setShowAltText , onLoad , onError } = _param, rest = _object_without_properties_loose(_param, [
|
|
235
|
+
var { imgAttributes , heightInt , widthInt , qualityInt , className , imgStyle , blurStyle , isLazy , fetchPriority , fill , placeholder , loading , srcString , config , unoptimized , loader , onLoadRef , onLoadingCompleteRef , setBlurComplete , setShowAltText , onLoad , onError } = _param, rest = _object_without_properties_loose(_param, [
|
|
218
236
|
"imgAttributes",
|
|
219
237
|
"heightInt",
|
|
220
238
|
"widthInt",
|
|
@@ -223,6 +241,7 @@ const ImageElement = /*#__PURE__*/ (0, _react).forwardRef((_param, forwardedRef)
|
|
|
223
241
|
"imgStyle",
|
|
224
242
|
"blurStyle",
|
|
225
243
|
"isLazy",
|
|
244
|
+
"fetchPriority",
|
|
226
245
|
"fill",
|
|
227
246
|
"placeholder",
|
|
228
247
|
"loading",
|
|
@@ -238,8 +257,8 @@ const ImageElement = /*#__PURE__*/ (0, _react).forwardRef((_param, forwardedRef)
|
|
|
238
257
|
"onError"
|
|
239
258
|
]);
|
|
240
259
|
loading = isLazy ? "lazy" : loading;
|
|
241
|
-
return /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/ _react.default.createElement("img", Object.assign({}, rest, {
|
|
242
|
-
// @ts-
|
|
260
|
+
return /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/ _react.default.createElement("img", Object.assign({}, rest, getDynamicProps(fetchPriority), {
|
|
261
|
+
// @ts-expect-error - TODO: upgrade to `@types/react@18`
|
|
243
262
|
loading: loading,
|
|
244
263
|
width: widthInt,
|
|
245
264
|
height: heightInt,
|
|
@@ -298,7 +317,7 @@ const ImageElement = /*#__PURE__*/ (0, _react).forwardRef((_param, forwardedRef)
|
|
|
298
317
|
})));
|
|
299
318
|
});
|
|
300
319
|
const Image = /*#__PURE__*/ (0, _react).forwardRef((_param, forwardedRef)=>{
|
|
301
|
-
var { src , sizes , unoptimized =false , priority =false , loading , className , quality , width , height , fill , style , onLoad , onLoadingComplete , placeholder ="empty" , blurDataURL , layout , objectFit , objectPosition , lazyBoundary , lazyRoot } = _param, all = _object_without_properties_loose(_param, [
|
|
320
|
+
var { src , sizes , unoptimized =false , priority =false , loading , className , quality , width , height , fill , style , onLoad , onLoadingComplete , placeholder ="empty" , blurDataURL , fetchPriority , layout , objectFit , objectPosition , lazyBoundary , lazyRoot } = _param, all = _object_without_properties_loose(_param, [
|
|
302
321
|
"src",
|
|
303
322
|
"sizes",
|
|
304
323
|
"unoptimized",
|
|
@@ -314,6 +333,7 @@ const Image = /*#__PURE__*/ (0, _react).forwardRef((_param, forwardedRef)=>{
|
|
|
314
333
|
"onLoadingComplete",
|
|
315
334
|
"placeholder",
|
|
316
335
|
"blurDataURL",
|
|
336
|
+
"fetchPriority",
|
|
317
337
|
"layout",
|
|
318
338
|
"objectFit",
|
|
319
339
|
"objectPosition",
|
|
@@ -418,7 +438,7 @@ const Image = /*#__PURE__*/ (0, _react).forwardRef((_param, forwardedRef)=>{
|
|
|
418
438
|
}
|
|
419
439
|
src = typeof src === "string" ? src : staticSrc;
|
|
420
440
|
let isLazy = !priority && (loading === "lazy" || typeof loading === "undefined");
|
|
421
|
-
if (src.startsWith("data:") || src.startsWith("blob:")) {
|
|
441
|
+
if (!src || src.startsWith("data:") || src.startsWith("blob:")) {
|
|
422
442
|
// https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URIs
|
|
423
443
|
unoptimized = true;
|
|
424
444
|
isLazy = false;
|
|
@@ -431,6 +451,9 @@ const Image = /*#__PURE__*/ (0, _react).forwardRef((_param, forwardedRef)=>{
|
|
|
431
451
|
// through the built-in Image Optimization API.
|
|
432
452
|
unoptimized = true;
|
|
433
453
|
}
|
|
454
|
+
if (priority) {
|
|
455
|
+
fetchPriority = "high";
|
|
456
|
+
}
|
|
434
457
|
const [blurComplete, setBlurComplete] = (0, _react).useState(false);
|
|
435
458
|
const [showAltText, setShowAltText] = (0, _react).useState(false);
|
|
436
459
|
const qualityInt = getInt(quality);
|
|
@@ -473,12 +496,6 @@ const Image = /*#__PURE__*/ (0, _react).forwardRef((_param, forwardedRef)=>{
|
|
|
473
496
|
});
|
|
474
497
|
let srcString = src;
|
|
475
498
|
if (false) {}
|
|
476
|
-
const linkProps = {
|
|
477
|
-
// @ts-expect-error upgrade react types to react 18
|
|
478
|
-
imageSrcSet: imgAttributes.srcSet,
|
|
479
|
-
imageSizes: imgAttributes.sizes,
|
|
480
|
-
crossOrigin: rest.crossOrigin
|
|
481
|
-
};
|
|
482
499
|
const onLoadRef = (0, _react).useRef(onLoad);
|
|
483
500
|
(0, _react).useEffect(()=>{
|
|
484
501
|
onLoadRef.current = onLoad;
|
|
@@ -502,6 +519,7 @@ const Image = /*#__PURE__*/ (0, _react).forwardRef((_param, forwardedRef)=>{
|
|
|
502
519
|
blurStyle,
|
|
503
520
|
loading,
|
|
504
521
|
config,
|
|
522
|
+
fetchPriority,
|
|
505
523
|
fill,
|
|
506
524
|
unoptimized,
|
|
507
525
|
placeholder,
|
|
@@ -522,8 +540,12 @@ const Image = /*#__PURE__*/ (0, _react).forwardRef((_param, forwardedRef)=>{
|
|
|
522
540
|
key: "__nimg-" + imgAttributes.src + imgAttributes.srcSet + imgAttributes.sizes,
|
|
523
541
|
rel: "preload",
|
|
524
542
|
as: "image",
|
|
525
|
-
href: imgAttributes.srcSet ? undefined : imgAttributes.src
|
|
526
|
-
|
|
543
|
+
href: imgAttributes.srcSet ? undefined : imgAttributes.src,
|
|
544
|
+
// @ts-expect-error - TODO: upgrade to `@types/react@18`
|
|
545
|
+
imageSrcSet: imgAttributes.srcSet,
|
|
546
|
+
imageSizes: imgAttributes.sizes,
|
|
547
|
+
crossOrigin: rest.crossOrigin
|
|
548
|
+
}, getDynamicProps(fetchPriority)))) : null);
|
|
527
549
|
});
|
|
528
550
|
var _default = Image;
|
|
529
551
|
exports["default"] = _default;
|
|
@@ -289,7 +289,9 @@ function getNextFontLinkTags(nextFontManifest, dangerousAsPath, assetPrefix = ""
|
|
|
289
289
|
};
|
|
290
290
|
}
|
|
291
291
|
class Head extends _react.default.Component {
|
|
292
|
-
static
|
|
292
|
+
static{
|
|
293
|
+
this.contextType = _htmlContext.HtmlContext;
|
|
294
|
+
}
|
|
293
295
|
getCssLinks(files) {
|
|
294
296
|
const { assetPrefix , devOnlyCacheBusterQueryString , dynamicImports , crossOrigin , optimizeCss , optimizeFonts } = this.context;
|
|
295
297
|
const cssFiles = files.allFiles.filter((f)=>f.endsWith(".css"));
|
|
@@ -441,10 +443,23 @@ class Head extends _react.default.Component {
|
|
|
441
443
|
let otherHeadElements = [];
|
|
442
444
|
if (head) {
|
|
443
445
|
head.forEach((c)=>{
|
|
446
|
+
let metaTag;
|
|
447
|
+
if (this.context.strictNextHead) {
|
|
448
|
+
metaTag = /*#__PURE__*/ _react.default.createElement("meta", {
|
|
449
|
+
name: "next-head",
|
|
450
|
+
content: "1"
|
|
451
|
+
});
|
|
452
|
+
}
|
|
444
453
|
if (c && c.type === "link" && c.props["rel"] === "preload" && c.props["as"] === "style") {
|
|
454
|
+
metaTag && cssPreloads.push(metaTag);
|
|
445
455
|
cssPreloads.push(c);
|
|
446
456
|
} else {
|
|
447
|
-
|
|
457
|
+
if (c) {
|
|
458
|
+
if (metaTag && (c.type !== "meta" || !c.props["charSet"])) {
|
|
459
|
+
otherHeadElements.push(metaTag);
|
|
460
|
+
}
|
|
461
|
+
otherHeadElements.push(c);
|
|
462
|
+
}
|
|
448
463
|
}
|
|
449
464
|
});
|
|
450
465
|
head = cssPreloads.concat(otherHeadElements);
|
|
@@ -507,7 +522,7 @@ class Head extends _react.default.Component {
|
|
|
507
522
|
dangerouslySetInnerHTML: {
|
|
508
523
|
__html: `body{display:block}`
|
|
509
524
|
}
|
|
510
|
-
}))), head, /*#__PURE__*/ _react.default.createElement("meta", {
|
|
525
|
+
}))), head, this.context.strictNextHead ? null : /*#__PURE__*/ _react.default.createElement("meta", {
|
|
511
526
|
name: "next-head-count",
|
|
512
527
|
content: _react.default.Children.count(head || []).toString()
|
|
513
528
|
}), children, optimizeFonts && /*#__PURE__*/ _react.default.createElement("meta", {
|
|
@@ -596,7 +611,9 @@ function handleDocumentScriptLoaderItems(scriptLoader, __NEXT_DATA__, props) {
|
|
|
596
611
|
__NEXT_DATA__.scriptLoader = scriptLoaderItems;
|
|
597
612
|
}
|
|
598
613
|
class NextScript extends _react.default.Component {
|
|
599
|
-
static
|
|
614
|
+
static{
|
|
615
|
+
this.contextType = _htmlContext.HtmlContext;
|
|
616
|
+
}
|
|
600
617
|
getDynamicChunks(files) {
|
|
601
618
|
return getDynamicChunks(this.context, this.props, files);
|
|
602
619
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
self.__BUILD_MANIFEST={polyfillFiles:["static/chunks/polyfills-c67a75d1b6f99dc8.js"],devFiles:[],ampDevFiles:[],lowPriorityFiles:["static/
|
|
1
|
+
self.__BUILD_MANIFEST={polyfillFiles:["static/chunks/polyfills-c67a75d1b6f99dc8.js"],devFiles:[],ampDevFiles:[],lowPriorityFiles:["static/9dmPfnTc_AQTHBPvL7xQe/_buildManifest.js","static/9dmPfnTc_AQTHBPvL7xQe/_ssgManifest.js"],rootMainFiles:[],pages:{"/":["static/chunks/webpack-6ef43a8d4a395f49.js","static/chunks/framework-2c29dc3cd933590b.js","static/chunks/main-4dcb7f9b52833aba.js","static/css/60e8258da7362a1a.css","static/chunks/pages/index-0ba5607d1aad8a09.js"],"/404":["static/chunks/webpack-6ef43a8d4a395f49.js","static/chunks/framework-2c29dc3cd933590b.js","static/chunks/main-4dcb7f9b52833aba.js","static/chunks/pages/404-b4b5ce15153d4825.js"],"/_app":["static/chunks/webpack-6ef43a8d4a395f49.js","static/chunks/framework-2c29dc3cd933590b.js","static/chunks/main-4dcb7f9b52833aba.js","static/css/09dfdea53eba31a9.css","static/chunks/pages/_app-02851b06b95b19cb.js"],"/_error":["static/chunks/webpack-6ef43a8d4a395f49.js","static/chunks/framework-2c29dc3cd933590b.js","static/chunks/main-4dcb7f9b52833aba.js","static/chunks/pages/_error-54de1933a164a1ff.js"]},ampFirstPages:[]};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html lang="en"><head><title>Scrabble Solver 2 by Kamil Mielnik</title><meta charSet="utf-8"/><meta name="author" content="Kamil Mielnik"/><meta name="description" content="Scrabble Solver 2 - Free and open-source analysis tool for Scrabble and Literaki. Quickly find top scoring words using given letters and board state. Available in English, French, German, Polish & Spanish."/><meta name="keywords" content="Scrabble Solver,Scrabble,Solver,Board,Open-source,Open,Source,Word,Finder,Cheating,Literaki,Word,English,Français,Deutsch,Polski,فارسی,Español,SOWPODS,TWL06,SJP,FISE-2017,FISE-2,CNRTL,Kamil Mielnik"/><meta name="robots" content="index, follow, notranslate, noimageindex"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><meta property="og:title" content="Scrabble Solver 2 - Free and open-source analysis tool for Scrabble and Literaki. Quickly find top scoring words using given letters and board state. Available in English, French, German, Polish & Spanish."/><meta property="og:type" content="website"/><meta property="og:url" content="https://scrabble-solver.org"/><meta property="og:image" content="https://scrabble-solver.org/og.png"/><meta property="og:image:type" content="image/png"/><meta property="og:image:width" content="1200"/><meta property="og:image:height" content="630"/><meta property="og:image:alt" content="Scrabble Solver 2 - Free and open-source analysis tool for Scrabble and Literaki. Quickly find top scoring words using given letters and board state. Available in English, French, German, Polish & Spanish."/><meta name="next-head-count" content="15"/><link rel="apple-touch-icon-precomposed" sizes="57x57" href="icons/apple-touch-icon-57x57.png"/><link rel="apple-touch-icon-precomposed" sizes="114x114" href="icons/apple-touch-icon-114x114.png"/><link rel="apple-touch-icon-precomposed" sizes="72x72" href="icons/apple-touch-icon-72x72.png"/><link rel="apple-touch-icon-precomposed" sizes="144x144" href="icons/apple-touch-icon-144x144.png"/><link rel="apple-touch-icon-precomposed" sizes="60x60" href="icons/apple-touch-icon-60x60.png"/><link rel="apple-touch-icon-precomposed" sizes="120x120" href="icons/apple-touch-icon-120x120.png"/><link rel="apple-touch-icon-precomposed" sizes="76x76" href="icons/apple-touch-icon-76x76.png"/><link rel="apple-touch-icon-precomposed" sizes="152x152" href="icons/apple-touch-icon-152x152.png"/><link rel="icon" type="image/png" href="icons/favicon-196x196.png" sizes="196x196"/><link rel="icon" type="image/png" href="icons/favicon-96x96.png" sizes="96x96"/><link rel="icon" type="image/png" href="icons/favicon-32x32.png" sizes="32x32"/><link rel="icon" type="image/png" href="icons/favicon-16x16.png" sizes="16x16"/><link rel="icon" type="image/png" href="icons/favicon-128.png" sizes="128x128"/><link rel="icon" href="icons/favicon.svg"/><meta name="application-name" content="Scrabble Solver"/><meta name="msapplication-TileColor" content="#EFE3AE"/><meta name="msapplication-TileImage" content="icons/mstile-144x144.png"/><meta name="msapplication-square70x70logo" content="icons/mstile-70x70.png"/><meta name="msapplication-square150x150logo" content="icons/mstile-150x150.png"/><meta name="msapplication-wide310x150logo" content="icons/mstile-310x150.png"/><meta name="msapplication-square310x310logo" content="icons/mstile-310x310.png"/><link rel="preload" href="/_next/static/css/
|
|
1
|
+
<!DOCTYPE html><html lang="en"><head><title>Scrabble Solver 2 by Kamil Mielnik</title><meta charSet="utf-8"/><meta name="author" content="Kamil Mielnik"/><meta name="description" content="Scrabble Solver 2 - Free and open-source analysis tool for Scrabble and Literaki. Quickly find top scoring words using given letters and board state. Available in English, French, German, Polish & Spanish."/><meta name="keywords" content="Scrabble Solver,Scrabble,Solver,Board,Open-source,Open,Source,Word,Finder,Cheating,Literaki,Word,English,Français,Deutsch,Polski,فارسی,Español,SOWPODS,TWL06,SJP,FISE-2017,FISE-2,CNRTL,Kamil Mielnik"/><meta name="robots" content="index, follow, notranslate, noimageindex"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><meta property="og:title" content="Scrabble Solver 2 - Free and open-source analysis tool for Scrabble and Literaki. Quickly find top scoring words using given letters and board state. Available in English, French, German, Polish & Spanish."/><meta property="og:type" content="website"/><meta property="og:url" content="https://scrabble-solver.org"/><meta property="og:image" content="https://scrabble-solver.org/og.png"/><meta property="og:image:type" content="image/png"/><meta property="og:image:width" content="1200"/><meta property="og:image:height" content="630"/><meta property="og:image:alt" content="Scrabble Solver 2 - Free and open-source analysis tool for Scrabble and Literaki. Quickly find top scoring words using given letters and board state. Available in English, French, German, Polish & Spanish."/><meta name="next-head-count" content="15"/><link rel="apple-touch-icon-precomposed" sizes="57x57" href="icons/apple-touch-icon-57x57.png"/><link rel="apple-touch-icon-precomposed" sizes="114x114" href="icons/apple-touch-icon-114x114.png"/><link rel="apple-touch-icon-precomposed" sizes="72x72" href="icons/apple-touch-icon-72x72.png"/><link rel="apple-touch-icon-precomposed" sizes="144x144" href="icons/apple-touch-icon-144x144.png"/><link rel="apple-touch-icon-precomposed" sizes="60x60" href="icons/apple-touch-icon-60x60.png"/><link rel="apple-touch-icon-precomposed" sizes="120x120" href="icons/apple-touch-icon-120x120.png"/><link rel="apple-touch-icon-precomposed" sizes="76x76" href="icons/apple-touch-icon-76x76.png"/><link rel="apple-touch-icon-precomposed" sizes="152x152" href="icons/apple-touch-icon-152x152.png"/><link rel="icon" type="image/png" href="icons/favicon-196x196.png" sizes="196x196"/><link rel="icon" type="image/png" href="icons/favicon-96x96.png" sizes="96x96"/><link rel="icon" type="image/png" href="icons/favicon-32x32.png" sizes="32x32"/><link rel="icon" type="image/png" href="icons/favicon-16x16.png" sizes="16x16"/><link rel="icon" type="image/png" href="icons/favicon-128.png" sizes="128x128"/><link rel="icon" href="icons/favicon.svg"/><meta name="application-name" content="Scrabble Solver"/><meta name="msapplication-TileColor" content="#EFE3AE"/><meta name="msapplication-TileImage" content="icons/mstile-144x144.png"/><meta name="msapplication-square70x70logo" content="icons/mstile-70x70.png"/><meta name="msapplication-square150x150logo" content="icons/mstile-150x150.png"/><meta name="msapplication-wide310x150logo" content="icons/mstile-310x150.png"/><meta name="msapplication-square310x310logo" content="icons/mstile-310x310.png"/><link rel="preload" href="/_next/static/css/09dfdea53eba31a9.css" as="style"/><link rel="stylesheet" href="/_next/static/css/09dfdea53eba31a9.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-c67a75d1b6f99dc8.js"></script><script src="/_next/static/chunks/webpack-6ef43a8d4a395f49.js" defer=""></script><script src="/_next/static/chunks/framework-2c29dc3cd933590b.js" defer=""></script><script src="/_next/static/chunks/main-4dcb7f9b52833aba.js" defer=""></script><script src="/_next/static/chunks/pages/_app-02851b06b95b19cb.js" defer=""></script><script src="/_next/static/chunks/pages/404-b4b5ce15153d4825.js" defer=""></script><script src="/_next/static/9dmPfnTc_AQTHBPvL7xQe/_buildManifest.js" defer=""></script><script src="/_next/static/9dmPfnTc_AQTHBPvL7xQe/_ssgManifest.js" defer=""></script></head><body><div id="__next"><p style="color:transparent;pointer-events:none;position:absolute;user-select:none;transform:translateY(-9999px)">Scrabble Solver 2 is a free and open-source analysis tool for Scrabble and Literaki. Quickly find top scoring words using given letters and board state. Available in English, French, German, Polish & Spanish. Source code is available on GitHub - contributions are welcome!</p><div class="NotFound_notFound__yhPFA"><a class="NotFound_link__a1OqI" href="/"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" class="NotFound_icon__zBP4O"><path fill="currentColor" d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM4.5 7.5a.5.5 0 0 0 0 1h7a.5.5 0 0 0 0-1h-7z"></path></svg><svg class="NotFound_tiles__Nxd8Z" viewBox="0 0 682 80" xmlns="http://www.w3.org/2000/svg"><g class="PlainTiles_tile__4eIjX" transform="rotate(0, 40, 40)"><rect fill="#f7c2aa" height="80" rx="12" width="80" x="0" y="0"></rect><text dominant-baseline="central" font-size="48" font-weight="bold" text-anchor="middle" x="40" y="40">H</text></g><g class="PlainTiles_tile__4eIjX" transform="rotate(0, 126, 40)"><rect fill="#efe3ae" height="80" rx="12" width="80" x="86" y="0"></rect><text dominant-baseline="central" font-size="48" font-weight="bold" text-anchor="middle" x="126" y="40">T</text></g><g class="PlainTiles_tile__4eIjX" transform="rotate(0, 212, 40)"><rect fill="#efe3ae" height="80" rx="12" width="80" x="172" y="0"></rect><text dominant-baseline="central" font-size="48" font-weight="bold" text-anchor="middle" x="212" y="40">T</text></g><g class="PlainTiles_tile__4eIjX" transform="rotate(0, 298, 40)"><rect fill="#c7d8f9" height="80" rx="12" width="80" x="258" y="0"></rect><text dominant-baseline="central" font-size="48" font-weight="bold" text-anchor="middle" x="298" y="40">P</text></g><g class="PlainTiles_tile__4eIjX" transform="rotate(0, 470, 40)"><rect fill="#bae3ba" height="80" rx="12" width="80" x="430" y="0"></rect><text dominant-baseline="central" font-size="48" font-weight="bold" text-anchor="middle" x="470" y="40">4</text></g><g class="PlainTiles_tile__4eIjX" transform="rotate(0, 556, 40)"><rect fill="#bae3ba" height="80" rx="12" width="80" x="516" y="0"></rect><text dominant-baseline="central" font-size="48" font-weight="bold" text-anchor="middle" x="556" y="40">0</text></g><g class="PlainTiles_tile__4eIjX" transform="rotate(0, 642, 40)"><rect fill="#bae3ba" height="80" rx="12" width="80" x="602" y="0"></rect><text dominant-baseline="central" font-size="48" font-weight="bold" text-anchor="middle" x="642" y="40">4</text></g></svg></a></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/404","query":{},"buildId":"9dmPfnTc_AQTHBPvL7xQe","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":1,"files":["../webpack-runtime.js","../chunks/636.js","../chunks/675.js","../chunks/277.js","../../package.json","../../../node_modules/classnames/package.json","../../../node_modules/include-media-query-builder/package.json","../../../node_modules/react-cool-onclickoutside/package.json","../../../node_modules/react-highlight-words/package.json","../../../node_modules/react-modal/package.json","../../../node_modules/react-portal/package.json","../../../node_modules/react-redux/package.json","../../../node_modules/react-window/package.json","../../../node_modules/store2/package.json","../../../node_modules/@reduxjs/toolkit/package.json","../../../node_modules/next/dist/shared/lib/amp-context.js","../../../node_modules/next/dist/shared/lib/amp-mode.js","../../../node_modules/next/dist/shared/lib/head-manager-context.js","../../../node_modules/next/dist/shared/lib/image-blur-svg.js","../../../node_modules/next/dist/shared/lib/image-config-context.js","../../../node_modules/next/dist/shared/lib/image-config.js","../../../node_modules/next/dist/shared/lib/side-effect.js","../../../node_modules/next/dist/shared/lib/utils/warn-once.js","../../../node_modules/classnames/index.js","../../../node_modules/include-media-query-builder/build/index.js","../../../node_modules/react-cool-onclickoutside/dist/index.js","../../../node_modules/react-highlight-words/dist/main.js","../../../node_modules/react-modal/lib/index.js","../../../node_modules/react-portal/lib/index.js","../../../node_modules/react-redux/lib/index.js","../../../node_modules/react-window/dist/index.cjs.js","../../../node_modules/store2/dist/store2.js","../../../node_modules/@reduxjs/toolkit/dist/index.js","../../../node_modules/next/dist/shared/lib/image-loader.js","../../../node_modules/next/package.json","../../../node_modules/react/package.json","../../../node_modules/react/index.js","../../../node_modules/react-dom/package.json","../../../node_modules/react-dom/client.js","../../../node_modules/react/jsx-runtime.js","../../../node_modules/redux-saga/package.json","../../../node_modules/redux-saga/import-condition-proxy.mjs","../../../node_modules/redux-saga/dist/redux-saga-core-npm-proxy.cjs.js","../../../node_modules/@floating-ui/react/package.json","../../../node_modules/@floating-ui/react/dist/floating-ui.react.mjs","../../../node_modules/@floating-ui/react/dist/floating-ui.react.umd.js","../../../node_modules/react-dom/server.node.js","../../../node_modules/react-dom/server.js","../../../node_modules/@reduxjs/toolkit/dist/redux-toolkit.cjs.production.min.js","../../../node_modules/@reduxjs/toolkit/dist/redux-toolkit.cjs.development.js","../../../node_modules/react/cjs/react.production.min.js","../../../node_modules/react/cjs/react.development.js","../../../node_modules/react/cjs/react-jsx-runtime.production.min.js","../../../node_modules/redux-saga/effects/package.json","../../../node_modules/redux-saga/dist/redux-saga-effects-npm-proxy.cjs.js","../../../node_modules/react/cjs/react-jsx-runtime.development.js","../../../node_modules/@swc/helpers/lib/_interop_require_default.js","../../../node_modules/@swc/helpers/lib/_interop_require_wildcard.js","../../../node_modules/@swc/helpers/package.json","../../../node_modules/include-media-query-builder/build/buildMediaQuery.js","../../../node_modules/include-media-query-builder/build/constants.js","../../../node_modules/include-media-query-builder/build/isOperator.js","../../../node_modules/include-media-query-builder/build/isSize.js","../../../node_modules/include-media-query-builder/build/buildParsedQuery.js","../../../node_modules/include-media-query-builder/build/types.js","../../../node_modules/react-redux/lib/exports.js","../../../node_modules/react-portal/lib/PortalCompat.js","../../../node_modules/react-portal/lib/PortalWithState.js","../../../node_modules/react-modal/lib/components/Modal.js","../../../node_modules/react-redux/lib/utils/reactBatchedUpdates.js","../../../node_modules/react-redux/lib/utils/batch.js","../../../node_modules/react-redux/lib/hooks/useSelector.js","../../../node_modules/react-redux/lib/components/connect.js","../../../node_modules/next/dist/shared/lib/match-remote-pattern.js","../../../node_modules/react-dom/cjs/react-dom-server-legacy.node.production.min.js","../../../node_modules/react-dom/cjs/react-dom-server.node.production.min.js","../../../node_modules/react-dom/cjs/react-dom-server-legacy.node.development.js","../../../node_modules/react-dom/cjs/react-dom-server.node.development.js","../../../node_modules/react-dom/index.js","../../../node_modules/include-media-query-builder/build/parseQuery.js","../../../node_modules/react-redux/lib/components/Provider.js","../../../node_modules/react-redux/lib/hooks/useDispatch.js","../../../node_modules/react-redux/lib/hooks/useStore.js","../../../node_modules/react-redux/lib/components/Context.js","../../../node_modules/react-redux/lib/utils/shallowEqual.js","../../../node_modules/react-redux/lib/types.js","../../../node_modules/react-portal/lib/Portal.js","../../../node_modules/react-portal/lib/LegacyPortal.js","../../../node_modules/react-dom/cjs/react-dom.production.min.js","../../../node_modules/react-dom/cjs/react-dom.development.js","../../../node_modules/react-redux/lib/hooks/useReduxContext.js","../../../node_modules/react-redux/lib/utils/useSyncExternalStore.js","../../../node_modules/react-modal/lib/components/ModalPortal.js","../../../node_modules/react-redux/lib/utils/Subscription.js","../../../node_modules/react-redux/lib/utils/warning.js","../../../node_modules/react-redux/lib/utils/useIsomorphicLayoutEffect.js","../../../node_modules/@babel/runtime/package.json","../../../node_modules/@babel/runtime/helpers/extends.js","../../../node_modules/@babel/runtime/helpers/inheritsLoose.js","../../../node_modules/@babel/runtime/helpers/assertThisInitialized.js","../../../node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js","../../../node_modules/react-modal/lib/helpers/safeHTMLElement.js","../../../node_modules/react-modal/lib/helpers/ariaAppHider.js","../../../node_modules/react-redux/lib/connect/selectorFactory.js","../../../node_modules/react-redux/lib/connect/mapStateToProps.js","../../../node_modules/react-redux/lib/connect/mapDispatchToProps.js","../../../node_modules/react-redux/lib/connect/mergeProps.js","../../../node_modules/memoize-one/package.json","../../../node_modules/memoize-one/dist/memoize-one.cjs.js","../../../node_modules/@floating-ui/react-dom/package.json","../../../node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.umd.js","../../../node_modules/tabbable/package.json","../../../node_modules/tabbable/dist/index.js","../../../node_modules/@redux-saga/core/package.json","../../../node_modules/@redux-saga/core/dist/redux-saga-core.cjs.js","../../../node_modules/aria-hidden/package.json","../../../node_modules/aria-hidden/dist/es5/index.js","../../../node_modules/use-sync-external-store/shim/with-selector.js","../../../node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.mjs","../../../node_modules/react-portal/lib/utils.js","../../../node_modules/@babel/runtime/helpers/interopRequireDefault.js","../../../node_modules/@redux-saga/core/effects/package.json","../../../node_modules/@redux-saga/core/dist/redux-saga-effects.cjs.js","../../../node_modules/next/dist/compiled/micromatch/package.json","../../../node_modules/next/dist/compiled/micromatch/index.js","../../../node_modules/react-modal/lib/helpers/focusManager.js","../../../node_modules/react-modal/lib/helpers/classList.js","../../../node_modules/react-modal/lib/helpers/portalOpenInstances.js","../../../node_modules/react-modal/lib/helpers/bodyTrap.js","../../../node_modules/react-modal/lib/helpers/scopeTab.js","../../../node_modules/use-sync-external-store/package.json","../../../node_modules/prop-types/package.json","../../../node_modules/prop-types/index.js","../../../node_modules/@babel/runtime/helpers/setPrototypeOf.js","../../../node_modules/immer/package.json","../../../node_modules/immer/dist/index.js","../../../node_modules/redux/package.json","../../../node_modules/redux/lib/redux.js","../../../node_modules/reselect/package.json","../../../node_modules/reselect/lib/index.js","../../../node_modules/redux-thunk/package.json","../../../node_modules/redux-thunk/lib/index.js","../../../node_modules/react-redux/node_modules/react-is/package.json","../../../node_modules/react-redux/node_modules/react-is/index.js","../../../node_modules/react-redux/lib/connect/verifySubselectors.js","../../../node_modules/react-redux/lib/utils/bindActionCreators.js","../../../node_modules/react-redux/lib/connect/wrapMapToProps.js","../../../node_modules/react-redux/lib/connect/invalidArgFactory.js","../../../node_modules/react-redux/lib/utils/verifyPlainObject.js","../../../node_modules/react-lifecycles-compat/package.json","../../../node_modules/react-lifecycles-compat/react-lifecycles-compat.cjs.js","../../../node_modules/use-sync-external-store/shim/index.js","../../../node_modules/@redux-saga/core/dist/redux-saga-core.prod.cjs.js","../../../node_modules/@redux-saga/core/dist/redux-saga-core.dev.cjs.js","../../../node_modules/@redux-saga/core/dist/redux-saga-effects.prod.cjs.js","../../../node_modules/@redux-saga/core/dist/redux-saga-effects.dev.cjs.js","../../../node_modules/scheduler/package.json","../../../node_modules/scheduler/index.js","../../../node_modules/react-modal/lib/helpers/tabbable.js","../../../node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.min.js","../../../node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.js","../../../node_modules/hoist-non-react-statics/package.json","../../../node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js","../../../node_modules/immer/dist/immer.cjs.production.min.js","../../../node_modules/immer/dist/immer.cjs.development.js","../../../node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.min.js","../../../node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js","../../../node_modules/react-redux/node_modules/react-is/cjs/react-is.production.min.js","../../../node_modules/react-redux/node_modules/react-is/cjs/react-is.development.js","../../../node_modules/prop-types/factoryWithTypeCheckers.js","../../../node_modules/prop-types/factoryWithThrowingShims.js","../../../node_modules/react-redux/lib/utils/isPlainObject.js","../../../node_modules/@redux-saga/core/dist/io-d39dbb58.js","../../../node_modules/@redux-saga/core/dist/io-a03c6210.js","../../../node_modules/reselect/lib/defaultMemoize.js","../../../node_modules/warning/package.json","../../../node_modules/warning/warning.js","../../../node_modules/exenv/package.json","../../../node_modules/exenv/index.js","../../../node_modules/@babel/runtime/helpers/objectSpread2.js","../../../node_modules/scheduler/cjs/scheduler.production.min.js","../../../node_modules/scheduler/cjs/scheduler.development.js","../../../node_modules/@floating-ui/dom/package.json","../../../node_modules/@floating-ui/dom/dist/floating-ui.dom.umd.js","../../../node_modules/prop-types/checkPropTypes.js","../../../node_modules/prop-types/lib/ReactPropTypesSecret.js","../../../node_modules/prop-types/lib/has.js","../../../node_modules/react-is/package.json","../../../node_modules/react-is/index.js","../../../node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs","../../../node_modules/@babel/runtime/helpers/defineProperty.js","../../../node_modules/@redux-saga/symbols/package.json","../../../node_modules/@redux-saga/symbols/dist/redux-saga-symbols.cjs.js","../../../node_modules/@redux-saga/is/package.json","../../../node_modules/@redux-saga/is/dist/redux-saga-is.cjs.js","../../../node_modules/@redux-saga/deferred/package.json","../../../node_modules/@redux-saga/deferred/dist/redux-saga-deferred.cjs.js","../../../node_modules/@redux-saga/delay-p/package.json","../../../node_modules/@redux-saga/delay-p/dist/redux-saga-delay-p.cjs.js","../../../node_modules/@babel/runtime/helpers/toPropertyKey.js","../../../node_modules/object-assign/index.js","../../../node_modules/react-is/cjs/react-is.development.js","../../../node_modules/react-is/cjs/react-is.production.min.js","../../../node_modules/object-assign/package.json","../../../node_modules/@babel/runtime/helpers/typeof.js","../../../node_modules/@babel/runtime/helpers/toPrimitive.js","../../../node_modules/@floating-ui/core/package.json","../../../node_modules/@floating-ui/core/dist/floating-ui.core.umd.js","../../../node_modules/@floating-ui/core/dist/floating-ui.core.mjs","../../../package.json","../../../src/i18n/de.json","../../../src/i18n/en.json","../../../src/i18n/es.json","../../../src/i18n/fa.json","../../../src/i18n/fr.json","../../../src/i18n/pl.json"]}
|
|
1
|
+
{"version":1,"files":["../webpack-runtime.js","../chunks/636.js","../chunks/675.js","../chunks/277.js","../../package.json","../../../node_modules/classnames/package.json","../../../node_modules/include-media-query-builder/package.json","../../../node_modules/react-cool-onclickoutside/package.json","../../../node_modules/react-highlight-words/package.json","../../../node_modules/react-modal/package.json","../../../node_modules/react-portal/package.json","../../../node_modules/react-redux/package.json","../../../node_modules/react-window/package.json","../../../node_modules/store2/package.json","../../../node_modules/@reduxjs/toolkit/package.json","../../../node_modules/next/dist/shared/lib/amp-context.js","../../../node_modules/next/dist/shared/lib/amp-mode.js","../../../node_modules/next/dist/shared/lib/head-manager-context.js","../../../node_modules/next/dist/shared/lib/image-blur-svg.js","../../../node_modules/next/dist/shared/lib/image-config-context.js","../../../node_modules/next/dist/shared/lib/image-config.js","../../../node_modules/next/dist/shared/lib/side-effect.js","../../../node_modules/next/dist/shared/lib/utils/warn-once.js","../../../node_modules/classnames/index.js","../../../node_modules/include-media-query-builder/build/index.js","../../../node_modules/react-cool-onclickoutside/dist/index.js","../../../node_modules/react-highlight-words/dist/main.js","../../../node_modules/react-modal/lib/index.js","../../../node_modules/react-portal/lib/index.js","../../../node_modules/react-redux/lib/index.js","../../../node_modules/react-window/dist/index.cjs.js","../../../node_modules/store2/dist/store2.js","../../../node_modules/@reduxjs/toolkit/dist/index.js","../../../node_modules/next/dist/shared/lib/image-loader.js","../../../node_modules/next/package.json","../../../node_modules/react/package.json","../../../node_modules/react/index.js","../../../node_modules/react/jsx-runtime.js","../../../node_modules/react-dom/package.json","../../../node_modules/react-dom/client.js","../../../node_modules/redux-saga/package.json","../../../node_modules/redux-saga/import-condition-proxy.mjs","../../../node_modules/redux-saga/dist/redux-saga-core-npm-proxy.cjs.js","../../../node_modules/@floating-ui/react/package.json","../../../node_modules/@floating-ui/react/dist/floating-ui.react.mjs","../../../node_modules/@floating-ui/react/dist/floating-ui.react.umd.js","../../../node_modules/react-dom/server.node.js","../../../node_modules/react-dom/server.js","../../../node_modules/@reduxjs/toolkit/dist/redux-toolkit.cjs.production.min.js","../../../node_modules/@reduxjs/toolkit/dist/redux-toolkit.cjs.development.js","../../../node_modules/redux-saga/effects/package.json","../../../node_modules/redux-saga/dist/redux-saga-effects-npm-proxy.cjs.js","../../../node_modules/react/cjs/react.production.min.js","../../../node_modules/react/cjs/react.development.js","../../../node_modules/react/cjs/react-jsx-runtime.production.min.js","../../../node_modules/react/cjs/react-jsx-runtime.development.js","../../../node_modules/@swc/helpers/lib/_interop_require_default.js","../../../node_modules/@swc/helpers/lib/_interop_require_wildcard.js","../../../node_modules/@swc/helpers/package.json","../../../node_modules/include-media-query-builder/build/buildMediaQuery.js","../../../node_modules/include-media-query-builder/build/buildParsedQuery.js","../../../node_modules/include-media-query-builder/build/constants.js","../../../node_modules/include-media-query-builder/build/isOperator.js","../../../node_modules/include-media-query-builder/build/isSize.js","../../../node_modules/include-media-query-builder/build/types.js","../../../node_modules/react-portal/lib/PortalCompat.js","../../../node_modules/react-portal/lib/PortalWithState.js","../../../node_modules/react-redux/lib/exports.js","../../../node_modules/react-modal/lib/components/Modal.js","../../../node_modules/react-redux/lib/utils/reactBatchedUpdates.js","../../../node_modules/react-redux/lib/utils/batch.js","../../../node_modules/react-redux/lib/hooks/useSelector.js","../../../node_modules/react-redux/lib/components/connect.js","../../../node_modules/next/dist/shared/lib/match-remote-pattern.js","../../../node_modules/react-dom/cjs/react-dom-server-legacy.node.production.min.js","../../../node_modules/react-dom/cjs/react-dom-server-legacy.node.development.js","../../../node_modules/react-dom/cjs/react-dom-server.node.development.js","../../../node_modules/react-dom/cjs/react-dom-server.node.production.min.js","../../../node_modules/react-dom/index.js","../../../node_modules/include-media-query-builder/build/parseQuery.js","../../../node_modules/react-portal/lib/Portal.js","../../../node_modules/react-portal/lib/LegacyPortal.js","../../../node_modules/react-redux/lib/components/Provider.js","../../../node_modules/react-redux/lib/components/Context.js","../../../node_modules/react-redux/lib/hooks/useDispatch.js","../../../node_modules/react-redux/lib/hooks/useStore.js","../../../node_modules/react-redux/lib/utils/shallowEqual.js","../../../node_modules/react-redux/lib/types.js","../../../node_modules/react-dom/cjs/react-dom.production.min.js","../../../node_modules/react-dom/cjs/react-dom.development.js","../../../node_modules/react-modal/lib/components/ModalPortal.js","../../../node_modules/react-redux/lib/utils/useSyncExternalStore.js","../../../node_modules/react-redux/lib/hooks/useReduxContext.js","../../../node_modules/react-redux/lib/utils/Subscription.js","../../../node_modules/react-redux/lib/utils/useIsomorphicLayoutEffect.js","../../../node_modules/react-redux/lib/utils/warning.js","../../../node_modules/@babel/runtime/package.json","../../../node_modules/@babel/runtime/helpers/extends.js","../../../node_modules/@babel/runtime/helpers/assertThisInitialized.js","../../../node_modules/@babel/runtime/helpers/inheritsLoose.js","../../../node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js","../../../node_modules/react-modal/lib/helpers/ariaAppHider.js","../../../node_modules/react-modal/lib/helpers/safeHTMLElement.js","../../../node_modules/react-redux/lib/connect/selectorFactory.js","../../../node_modules/react-redux/lib/connect/mapDispatchToProps.js","../../../node_modules/react-redux/lib/connect/mapStateToProps.js","../../../node_modules/react-redux/lib/connect/mergeProps.js","../../../node_modules/memoize-one/package.json","../../../node_modules/memoize-one/dist/memoize-one.cjs.js","../../../node_modules/@floating-ui/react-dom/package.json","../../../node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.umd.js","../../../node_modules/tabbable/package.json","../../../node_modules/tabbable/dist/index.js","../../../node_modules/@redux-saga/core/package.json","../../../node_modules/@redux-saga/core/dist/redux-saga-core.cjs.js","../../../node_modules/aria-hidden/package.json","../../../node_modules/aria-hidden/dist/es5/index.js","../../../node_modules/use-sync-external-store/shim/with-selector.js","../../../node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.mjs","../../../node_modules/react-portal/lib/utils.js","../../../node_modules/@babel/runtime/helpers/interopRequireDefault.js","../../../node_modules/@redux-saga/core/effects/package.json","../../../node_modules/@redux-saga/core/dist/redux-saga-effects.cjs.js","../../../node_modules/next/dist/compiled/micromatch/package.json","../../../node_modules/next/dist/compiled/micromatch/index.js","../../../node_modules/react-modal/lib/helpers/scopeTab.js","../../../node_modules/react-modal/lib/helpers/portalOpenInstances.js","../../../node_modules/react-modal/lib/helpers/bodyTrap.js","../../../node_modules/react-modal/lib/helpers/focusManager.js","../../../node_modules/react-modal/lib/helpers/classList.js","../../../node_modules/prop-types/package.json","../../../node_modules/prop-types/index.js","../../../node_modules/use-sync-external-store/package.json","../../../node_modules/@babel/runtime/helpers/setPrototypeOf.js","../../../node_modules/immer/package.json","../../../node_modules/immer/dist/index.js","../../../node_modules/redux/package.json","../../../node_modules/redux/lib/redux.js","../../../node_modules/redux-thunk/package.json","../../../node_modules/redux-thunk/lib/index.js","../../../node_modules/reselect/package.json","../../../node_modules/reselect/lib/index.js","../../../node_modules/react-redux/node_modules/react-is/package.json","../../../node_modules/react-redux/node_modules/react-is/index.js","../../../node_modules/react-redux/lib/connect/verifySubselectors.js","../../../node_modules/react-redux/lib/connect/wrapMapToProps.js","../../../node_modules/react-redux/lib/utils/bindActionCreators.js","../../../node_modules/react-redux/lib/connect/invalidArgFactory.js","../../../node_modules/react-redux/lib/utils/verifyPlainObject.js","../../../node_modules/react-lifecycles-compat/package.json","../../../node_modules/react-lifecycles-compat/react-lifecycles-compat.cjs.js","../../../node_modules/use-sync-external-store/shim/index.js","../../../node_modules/@redux-saga/core/dist/redux-saga-effects.prod.cjs.js","../../../node_modules/@redux-saga/core/dist/redux-saga-effects.dev.cjs.js","../../../node_modules/@redux-saga/core/dist/redux-saga-core.prod.cjs.js","../../../node_modules/@redux-saga/core/dist/redux-saga-core.dev.cjs.js","../../../node_modules/scheduler/package.json","../../../node_modules/scheduler/index.js","../../../node_modules/react-modal/lib/helpers/tabbable.js","../../../node_modules/hoist-non-react-statics/package.json","../../../node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js","../../../node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.min.js","../../../node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.js","../../../node_modules/immer/dist/immer.cjs.production.min.js","../../../node_modules/immer/dist/immer.cjs.development.js","../../../node_modules/prop-types/factoryWithTypeCheckers.js","../../../node_modules/prop-types/factoryWithThrowingShims.js","../../../node_modules/react-redux/node_modules/react-is/cjs/react-is.production.min.js","../../../node_modules/react-redux/node_modules/react-is/cjs/react-is.development.js","../../../node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.min.js","../../../node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js","../../../node_modules/react-redux/lib/utils/isPlainObject.js","../../../node_modules/reselect/lib/defaultMemoize.js","../../../node_modules/warning/package.json","../../../node_modules/warning/warning.js","../../../node_modules/exenv/package.json","../../../node_modules/exenv/index.js","../../../node_modules/@redux-saga/core/dist/io-d39dbb58.js","../../../node_modules/@redux-saga/core/dist/io-a03c6210.js","../../../node_modules/@babel/runtime/helpers/objectSpread2.js","../../../node_modules/scheduler/cjs/scheduler.production.min.js","../../../node_modules/scheduler/cjs/scheduler.development.js","../../../node_modules/@floating-ui/dom/package.json","../../../node_modules/@floating-ui/dom/dist/floating-ui.dom.umd.js","../../../node_modules/prop-types/checkPropTypes.js","../../../node_modules/prop-types/lib/ReactPropTypesSecret.js","../../../node_modules/prop-types/lib/has.js","../../../node_modules/react-is/package.json","../../../node_modules/react-is/index.js","../../../node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs","../../../node_modules/@babel/runtime/helpers/defineProperty.js","../../../node_modules/@babel/runtime/helpers/toPropertyKey.js","../../../node_modules/@redux-saga/symbols/package.json","../../../node_modules/@redux-saga/symbols/dist/redux-saga-symbols.cjs.js","../../../node_modules/@redux-saga/delay-p/package.json","../../../node_modules/@redux-saga/delay-p/dist/redux-saga-delay-p.cjs.js","../../../node_modules/@redux-saga/is/package.json","../../../node_modules/@redux-saga/is/dist/redux-saga-is.cjs.js","../../../node_modules/@redux-saga/deferred/package.json","../../../node_modules/@redux-saga/deferred/dist/redux-saga-deferred.cjs.js","../../../node_modules/react-is/cjs/react-is.production.min.js","../../../node_modules/react-is/cjs/react-is.development.js","../../../node_modules/object-assign/index.js","../../../node_modules/object-assign/package.json","../../../node_modules/@babel/runtime/helpers/typeof.js","../../../node_modules/@babel/runtime/helpers/toPrimitive.js","../../../node_modules/@floating-ui/core/package.json","../../../node_modules/@floating-ui/core/dist/floating-ui.core.umd.js","../../../node_modules/@floating-ui/core/dist/floating-ui.core.mjs","../../../package.json","../../../src/i18n/de.json","../../../src/i18n/en.json","../../../src/i18n/es.json","../../../src/i18n/fa.json","../../../src/i18n/fr.json","../../../src/i18n/pl.json"]}
|