@scrabble-solver/scrabble-solver 2.9.3 → 2.10.1
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/.next/BUILD_ID +1 -1
- package/.next/build-manifest.json +11 -11
- package/.next/cache/.tsbuildinfo +1 -1
- package/.next/cache/eslint/.cache_8dgz12 +1 -1
- package/.next/cache/next-server.js.nft.json +1 -1
- package/.next/cache/webpack/client-production/0.pack +0 -0
- package/.next/cache/webpack/client-production/index.pack +0 -0
- package/.next/cache/webpack/edge-server-production/0.pack +0 -0
- package/.next/cache/webpack/edge-server-production/index.pack +0 -0
- package/.next/cache/webpack/server-production/0.pack +0 -0
- package/.next/cache/webpack/server-production/index.pack +0 -0
- package/.next/next-server.js.nft.json +1 -1
- package/.next/prerender-manifest.json +1 -1
- package/.next/routes-manifest.json +1 -1
- package/.next/server/chunks/{429.js → 131.js} +2 -3652
- package/.next/server/chunks/413.js +399 -199
- package/.next/server/chunks/44.js +71 -45
- package/.next/server/chunks/515.js +1114 -542
- package/.next/server/chunks/911.js +96 -2
- package/.next/server/chunks/939.js +1 -0
- package/.next/server/middleware-build-manifest.js +1 -1
- package/.next/server/pages/404.html +2 -2
- package/.next/server/pages/404.js.nft.json +1 -1
- package/.next/server/pages/500.html +2 -2
- package/.next/server/pages/_app.js.nft.json +1 -1
- package/.next/server/pages/api/dictionary/[locale]/[word].js +49 -11
- package/.next/server/pages/api/dictionary/[locale]/[word].js.nft.json +1 -1
- package/.next/server/pages/api/dictionary/[locale].js +1 -8
- package/.next/server/pages/api/dictionary/[locale].js.nft.json +1 -1
- package/.next/server/pages/api/solve.js +67 -57
- package/.next/server/pages/api/solve.js.nft.json +1 -1
- package/.next/server/pages/api/verify.js +2 -9
- package/.next/server/pages/api/verify.js.nft.json +1 -1
- package/.next/server/pages/index.html +9 -1
- package/.next/server/pages/index.js +43 -36
- package/.next/server/pages/index.js.nft.json +1 -1
- package/.next/server/pages/index.json +1 -1
- package/.next/server/pages-manifest.json +1 -1
- package/.next/static/chunks/368-8b386c3106556f62.js +1 -0
- package/.next/static/chunks/pages/{404-8650986dc56dab75.js → 404-932294135c3206dd.js} +1 -1
- package/.next/static/chunks/pages/_app-8f0df20f771045ed.js +1 -0
- package/.next/static/chunks/pages/index-8af7a9d7a2cd98a7.js +1 -0
- package/.next/static/css/6b1833fd19d3a74a.css +1 -0
- package/.next/static/css/a6154e4ca046ca13.css +1 -0
- package/.next/static/css/bad53af6f8616677.css +1 -0
- package/.next/static/hf94cues-LcXZRCpAzQ6w/_buildManifest.js +1 -0
- package/.next/static/{s5pE_3C3ebZuSfaqE7xat → hf94cues-LcXZRCpAzQ6w}/_ssgManifest.js +0 -0
- package/.next/trace +52 -52
- package/package.json +9 -9
- package/src/components/Board/components/Cell/Cell.module.scss +45 -9
- package/src/components/Board/hooks/useGrid.ts +6 -4
- package/src/components/Dictionary/Dictionary.module.scss +8 -1
- package/src/components/EmptyState/EmptyState.tsx +6 -2
- package/src/components/Loading/Loading.tsx +13 -2
- package/src/components/NavButtons/NavButtons.module.scss +8 -7
- package/src/components/NavButtons/NavButtons.tsx +35 -28
- package/src/components/PlainTiles/PlainTiles.tsx +7 -1
- package/src/components/PlainTiles/Tile.tsx +4 -3
- package/src/components/Rack/Rack.tsx +18 -4
- package/src/components/Radio/Radio.module.scss +1 -1
- package/src/components/RemainingTiles/Character.tsx +7 -2
- package/src/components/RemainingTiles/RemainingTiles.tsx +28 -20
- package/src/components/Results/Cell.tsx +5 -3
- package/src/components/Results/Result.tsx +8 -3
- package/src/components/Results/Results.module.scss +31 -9
- package/src/components/Results/Results.tsx +8 -4
- package/src/components/Results/getColumns.ts +58 -0
- package/src/components/Settings/components/AutoGroupTilesSetting/AutoGroupTilesSetting.tsx +2 -2
- package/src/components/Settings/components/ConfigSetting/ConfigSetting.module.scss +1 -0
- package/src/components/Settings/components/LocaleSetting/LocaleSetting.module.scss +12 -1
- package/src/components/Settings/components/LocaleSetting/LocaleSetting.tsx +1 -1
- package/src/components/Settings/components/LocaleSetting/options.ts +16 -2
- package/src/components/Sidebar/Sidebar.module.scss +42 -8
- package/src/components/SvgFontCss/SvgFontCss.tsx +8 -7
- package/src/components/SvgFontCss/createCss.ts +11 -0
- package/src/components/SvgFontCss/createStyle.ts +9 -0
- package/src/components/SvgFontCss/createSvg.ts +10 -0
- package/src/components/SvgFontFix/SvgFontFix.module.scss +5 -0
- package/src/components/SvgFontFix/SvgFontFix.tsx +21 -0
- package/src/components/SvgFontFix/index.ts +1 -0
- package/src/components/Tile/Tile.module.scss +10 -2
- package/src/components/Tile/Tile.tsx +4 -0
- package/src/components/Tile/TilePure.tsx +3 -1
- package/src/components/Words/Words.tsx +4 -3
- package/src/components/index.ts +1 -0
- package/src/hooks/index.ts +2 -0
- package/src/hooks/useDirection.ts +22 -0
- package/src/hooks/useLanguage.ts +22 -0
- package/src/i18n/constants.ts +53 -0
- package/src/i18n/fa.json +56 -0
- package/src/i18n/fr.json +1 -1
- package/src/i18n/i18n.ts +22 -0
- package/src/i18n/index.ts +2 -20
- package/src/icons/FlagFa.svg +95 -0
- package/src/icons/index.ts +1 -0
- package/src/lib/createComparator.ts +22 -0
- package/src/lib/createKeyComparator.ts +4 -2
- package/src/lib/createStringComparator.ts +5 -0
- package/src/lib/detectLocale.ts +4 -0
- package/src/lib/getRemainingTiles.ts +4 -2
- package/src/lib/getRemainingTilesGroups.ts +54 -31
- package/src/lib/index.ts +2 -2
- package/src/lib/sortResults.ts +11 -9
- package/src/lib/unorderedArraysEqual.ts +3 -2
- package/src/pages/api/verify.ts +1 -1
- package/src/pages/index.module.scss +7 -18
- package/src/pages/index.tsx +10 -2
- package/src/sdk/findWordDefinitions.ts +1 -1
- package/src/service-worker/routeVerifyRequests.ts +1 -1
- package/src/state/sagas.ts +19 -5
- package/src/state/selectors.ts +15 -7
- package/src/styles/global.scss +6 -1
- package/.next/static/chunks/880-18e3aea6915aebe7.js +0 -1
- package/.next/static/chunks/pages/_app-183f598b1d4d480b.js +0 -1
- package/.next/static/chunks/pages/index-f1cef1e67e14d022.js +0 -1
- package/.next/static/css/751e8a14776d05d8.css +0 -1
- package/.next/static/css/ad2a08918868cad8.css +0 -1
- package/.next/static/css/e8de67ad5ea35427.css +0 -1
- package/.next/static/s5pE_3C3ebZuSfaqE7xat/_buildManifest.js +0 -1
- package/src/components/Results/constants.ts +0 -42
- package/src/lib/comparator.ts +0 -16
- package/src/lib/stringComparator.ts +0 -5
|
@@ -235,6 +235,7 @@ const literaki = {
|
|
|
235
235
|
[types_1.Locale.EN_GB]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesEn }),
|
|
236
236
|
[types_1.Locale.EN_US]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesEn }),
|
|
237
237
|
[types_1.Locale.ES_ES]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesEs }),
|
|
238
|
+
[types_1.Locale.FA_IR]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesFa }),
|
|
238
239
|
[types_1.Locale.FR_FR]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesFr }),
|
|
239
240
|
[types_1.Locale.PL_PL]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesPl }),
|
|
240
241
|
};
|
|
@@ -251,11 +252,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
251
252
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
252
253
|
};
|
|
253
254
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
254
|
-
exports.tilesDe = exports.tilesPl = exports.tilesFr = exports.tilesEs = exports.tilesEn = void 0;
|
|
255
|
+
exports.tilesDe = exports.tilesPl = exports.tilesFr = exports.tilesFa = exports.tilesEs = exports.tilesEn = void 0;
|
|
255
256
|
var tilesEn_1 = __webpack_require__(17910);
|
|
256
257
|
Object.defineProperty(exports, "tilesEn", ({ enumerable: true, get: function () { return __importDefault(tilesEn_1).default; } }));
|
|
257
258
|
var tilesEs_1 = __webpack_require__(63029);
|
|
258
259
|
Object.defineProperty(exports, "tilesEs", ({ enumerable: true, get: function () { return __importDefault(tilesEs_1).default; } }));
|
|
260
|
+
var tilesFa_1 = __webpack_require__(35366);
|
|
261
|
+
Object.defineProperty(exports, "tilesFa", ({ enumerable: true, get: function () { return __importDefault(tilesFa_1).default; } }));
|
|
259
262
|
var tilesFr_1 = __webpack_require__(59541);
|
|
260
263
|
Object.defineProperty(exports, "tilesFr", ({ enumerable: true, get: function () { return __importDefault(tilesFr_1).default; } }));
|
|
261
264
|
var tilesPl_1 = __webpack_require__(2647);
|
|
@@ -383,6 +386,50 @@ const tilesEs = [
|
|
|
383
386
|
exports["default"] = tilesEs;
|
|
384
387
|
|
|
385
388
|
|
|
389
|
+
/***/ }),
|
|
390
|
+
|
|
391
|
+
/***/ 35366:
|
|
392
|
+
/***/ ((__unused_webpack_module, exports) => {
|
|
393
|
+
|
|
394
|
+
|
|
395
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
396
|
+
const tilesFa = [
|
|
397
|
+
{ character: 'ا', count: 12, score: 1 },
|
|
398
|
+
{ character: 'ب', count: 4, score: 1 },
|
|
399
|
+
{ character: 'پ', count: 1, score: 6 },
|
|
400
|
+
{ character: 'ت', count: 4, score: 1 },
|
|
401
|
+
{ character: 'ث', count: 1, score: 10 },
|
|
402
|
+
{ character: 'ج', count: 2, score: 5 },
|
|
403
|
+
{ character: 'چ', count: 1, score: 6 },
|
|
404
|
+
{ character: 'ح', count: 1, score: 6 },
|
|
405
|
+
{ character: 'خ', count: 2, score: 5 },
|
|
406
|
+
{ character: 'د', count: 6, score: 1 },
|
|
407
|
+
{ character: 'ذ', count: 1, score: 10 },
|
|
408
|
+
{ character: 'ر', count: 7, score: 1 },
|
|
409
|
+
{ character: 'ز', count: 3, score: 4 },
|
|
410
|
+
{ character: 'ژ', count: 1, score: 10 },
|
|
411
|
+
{ character: 'س', count: 3, score: 2 },
|
|
412
|
+
{ character: 'ش', count: 3, score: 3 },
|
|
413
|
+
{ character: 'ص', count: 1, score: 6 },
|
|
414
|
+
{ character: 'ض', count: 1, score: 8 },
|
|
415
|
+
{ character: 'ط', count: 1, score: 8 },
|
|
416
|
+
{ character: 'ظ', count: 1, score: 10 },
|
|
417
|
+
{ character: 'ع', count: 2, score: 5 },
|
|
418
|
+
{ character: 'غ', count: 1, score: 8 },
|
|
419
|
+
{ character: 'ف', count: 2, score: 4 },
|
|
420
|
+
{ character: 'ق', count: 2, score: 5 },
|
|
421
|
+
{ character: 'ک', count: 3, score: 3 },
|
|
422
|
+
{ character: 'گ', count: 2, score: 4 },
|
|
423
|
+
{ character: 'ل', count: 3, score: 2 },
|
|
424
|
+
{ character: 'م', count: 5, score: 1 },
|
|
425
|
+
{ character: 'ن', count: 6, score: 1 },
|
|
426
|
+
{ character: 'و', count: 5, score: 1 },
|
|
427
|
+
{ character: 'ه', count: 5, score: 1 },
|
|
428
|
+
{ character: 'ی', count: 8, score: 1 },
|
|
429
|
+
];
|
|
430
|
+
exports["default"] = tilesFa;
|
|
431
|
+
|
|
432
|
+
|
|
386
433
|
/***/ }),
|
|
387
434
|
|
|
388
435
|
/***/ 59541:
|
|
@@ -585,6 +632,7 @@ const scrabble = {
|
|
|
585
632
|
[types_1.Locale.DE_DE]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesDe }),
|
|
586
633
|
[types_1.Locale.EN_US]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesEn }),
|
|
587
634
|
[types_1.Locale.ES_ES]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesEs }),
|
|
635
|
+
[types_1.Locale.FA_IR]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesFa }),
|
|
588
636
|
[types_1.Locale.FR_FR]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesFr }),
|
|
589
637
|
[types_1.Locale.PL_PL]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesPl }),
|
|
590
638
|
};
|
|
@@ -601,11 +649,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
601
649
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
602
650
|
};
|
|
603
651
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
604
|
-
exports.tilesDe = exports.tilesPl = exports.tilesFr = exports.tilesEs = exports.tilesEn = void 0;
|
|
652
|
+
exports.tilesDe = exports.tilesPl = exports.tilesFr = exports.tilesFa = exports.tilesEs = exports.tilesEn = void 0;
|
|
605
653
|
var tilesEn_1 = __webpack_require__(76149);
|
|
606
654
|
Object.defineProperty(exports, "tilesEn", ({ enumerable: true, get: function () { return __importDefault(tilesEn_1).default; } }));
|
|
607
655
|
var tilesEs_1 = __webpack_require__(14537);
|
|
608
656
|
Object.defineProperty(exports, "tilesEs", ({ enumerable: true, get: function () { return __importDefault(tilesEs_1).default; } }));
|
|
657
|
+
var tilesFa_1 = __webpack_require__(22878);
|
|
658
|
+
Object.defineProperty(exports, "tilesFa", ({ enumerable: true, get: function () { return __importDefault(tilesFa_1).default; } }));
|
|
609
659
|
var tilesFr_1 = __webpack_require__(72866);
|
|
610
660
|
Object.defineProperty(exports, "tilesFr", ({ enumerable: true, get: function () { return __importDefault(tilesFr_1).default; } }));
|
|
611
661
|
var tilesPl_1 = __webpack_require__(85667);
|
|
@@ -733,6 +783,50 @@ const tilesEs = [
|
|
|
733
783
|
exports["default"] = tilesEs;
|
|
734
784
|
|
|
735
785
|
|
|
786
|
+
/***/ }),
|
|
787
|
+
|
|
788
|
+
/***/ 22878:
|
|
789
|
+
/***/ ((__unused_webpack_module, exports) => {
|
|
790
|
+
|
|
791
|
+
|
|
792
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
793
|
+
const tilesFa = [
|
|
794
|
+
{ character: 'ا', count: 12, score: 1 },
|
|
795
|
+
{ character: 'ب', count: 4, score: 1 },
|
|
796
|
+
{ character: 'پ', count: 1, score: 6 },
|
|
797
|
+
{ character: 'ت', count: 4, score: 1 },
|
|
798
|
+
{ character: 'ث', count: 1, score: 10 },
|
|
799
|
+
{ character: 'ج', count: 2, score: 5 },
|
|
800
|
+
{ character: 'چ', count: 1, score: 6 },
|
|
801
|
+
{ character: 'ح', count: 1, score: 6 },
|
|
802
|
+
{ character: 'خ', count: 2, score: 5 },
|
|
803
|
+
{ character: 'د', count: 6, score: 1 },
|
|
804
|
+
{ character: 'ذ', count: 1, score: 10 },
|
|
805
|
+
{ character: 'ر', count: 7, score: 1 },
|
|
806
|
+
{ character: 'ز', count: 3, score: 4 },
|
|
807
|
+
{ character: 'ژ', count: 1, score: 10 },
|
|
808
|
+
{ character: 'س', count: 3, score: 2 },
|
|
809
|
+
{ character: 'ش', count: 3, score: 3 },
|
|
810
|
+
{ character: 'ص', count: 1, score: 6 },
|
|
811
|
+
{ character: 'ض', count: 1, score: 8 },
|
|
812
|
+
{ character: 'ط', count: 1, score: 8 },
|
|
813
|
+
{ character: 'ظ', count: 1, score: 10 },
|
|
814
|
+
{ character: 'ع', count: 2, score: 5 },
|
|
815
|
+
{ character: 'غ', count: 1, score: 8 },
|
|
816
|
+
{ character: 'ف', count: 2, score: 4 },
|
|
817
|
+
{ character: 'ق', count: 2, score: 5 },
|
|
818
|
+
{ character: 'ک', count: 3, score: 3 },
|
|
819
|
+
{ character: 'گ', count: 2, score: 4 },
|
|
820
|
+
{ character: 'ل', count: 3, score: 2 },
|
|
821
|
+
{ character: 'م', count: 5, score: 1 },
|
|
822
|
+
{ character: 'ن', count: 6, score: 1 },
|
|
823
|
+
{ character: 'و', count: 5, score: 1 },
|
|
824
|
+
{ character: 'ه', count: 5, score: 1 },
|
|
825
|
+
{ character: 'ی', count: 8, score: 1 },
|
|
826
|
+
];
|
|
827
|
+
exports["default"] = tilesFa;
|
|
828
|
+
|
|
829
|
+
|
|
736
830
|
/***/ }),
|
|
737
831
|
|
|
738
832
|
/***/ 72866:
|
|
@@ -843,6 +937,7 @@ exports.CONSONANTS = [
|
|
|
843
937
|
'm',
|
|
844
938
|
'n',
|
|
845
939
|
'ń',
|
|
940
|
+
'ñ',
|
|
846
941
|
'p',
|
|
847
942
|
'q',
|
|
848
943
|
'r',
|
|
@@ -861,7 +956,104 @@ exports.VOWELS = ['a', 'ą', 'ä', 'e', 'ę', 'i', 'o', 'ó', 'ö', 'u', 'ü', '
|
|
|
861
956
|
|
|
862
957
|
/***/ }),
|
|
863
958
|
|
|
864
|
-
/***/
|
|
959
|
+
/***/ 43898:
|
|
960
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
961
|
+
|
|
962
|
+
|
|
963
|
+
// EXPORTS
|
|
964
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
965
|
+
"q": () => (/* reexport */ LOCALE_FEATURES),
|
|
966
|
+
"Z": () => (/* reexport */ i18n_i18n)
|
|
967
|
+
});
|
|
968
|
+
|
|
969
|
+
// EXTERNAL MODULE: ../types/build/index.js
|
|
970
|
+
var build = __webpack_require__(34046);
|
|
971
|
+
;// CONCATENATED MODULE: ./src/i18n/de.json
|
|
972
|
+
const de_namespaceObject = JSON.parse('{"cell.filter-cell":"Zielort - klicken zum Wechseln","cell.set-blank":"Als Blanko markieren","cell.set-not-blank":"Nicht als Blanko markieren","cell.toggle-direction":"Schreibrichtung - klicken zum Wechseln","common.blanks":"Blankos","common.clear":"Löschen","common.close":"Schließen","common.consonants":"Konsonanten","common.loading":"Laden","common.points":"Punkte","common.tiles":"Steine","common.two-letter-tiles":"Zwei-Buchstaben","common.vowels":"Vokale","common.word":"Wort","common.words":"Wörter","dictionary.empty-state.no-definitions":"Wort existiert im Wörterbuch aber hat keine Definition.","dictionary.empty-state.no-results":"Wort kann nicht im Wörterbuch gefunden werden.","dictionary.empty-state.not-allowed":"Dieses Wort ist nicht erlaubt.","dictionary.empty-state.uninitialized":"Die Wörterbuchdefinition des letzten markierten Wortes wird hier angezeigt.","dictionary.input.placeholder":"Durchsuche Wörterbuch...","empty-state.error":"Fehler","empty-state.info":"Info","empty-state.success":"Juhuu!","empty-state.warning":"Oje!","github":"Schau dieses Projekt auf GitHub an","keyMap":"Tastaturkürzel","keyMap.board":"Brett","keyMap.board.toggle-blank":"Als Blanko markieren / aufheben","keyMap.board.toggle-direction":"Schreibrichtung umschalten","keyMap.board-and-rack":"Brett & Ablage","keyMap.board-and-rack.insert-two-letter-tile":"Zwei-Buchstaben Stein hinzufügen","keyMap.board-and-rack.navigate":"Navigieren","keyMap.board-and-rack.remove-tile":"Stein entfernen","keyMap.board-and-rack.submit":"Lösen starten","keyMap.rack":"Ablage","keyMap.rack.insert-blank":"Blanko hinzufügen (Leertaste)","rack.placeholder":"Steine…","remaining-tiles":"Restliche Steine","results.empty-state.no-filtered-results":"Keine Ergebnisse für diese Anfrage.","results.empty-state.no-results":"Keine Ergebnisse - kein Wort konnte generiert werden.","results.empty-state.outdated":"Ergebnisse sind alt. Klicken zum Aktualisieren.","results.empty-state.uninitialized":"Wörter die aus deinen Buchstaben generiert wurden erscheinen hier.","results.input.placeholder":"Suchergebnisse... (RegExp)","results.solve":"Lösen","settings":"Einstellungen","settings.autoGroupTiles":"Restliche Steine gruppieren","settings.autoGroupTiles.left":"Linke Seite","settings.autoGroupTiles.right":"Rechte Seite","settings.autoGroupTiles.null":"Nicht gruppieren","settings.game":"Spiel","settings.language":"Sprache","words":"Gebildete Wörter","words.invalid":"Falsch","words.valid":"Korrekt"}');
|
|
973
|
+
;// CONCATENATED MODULE: ./src/i18n/en.json
|
|
974
|
+
const en_namespaceObject = JSON.parse('{"cell.filter-cell":"Target destination - click to toggle","cell.set-blank":"Mark it a blank","cell.set-not-blank":"Mark it not a blank","cell.toggle-direction":"Typing direction - click to toggle","common.blanks":"Blanks","common.clear":"Clear","common.close":"Close","common.consonants":"Consonants","common.loading":"Loading","common.points":"Points","common.tiles":"Tiles","common.two-letter-tiles":"Two-letter","common.vowels":"Vowels","common.word":"Word","common.words":"Words","dictionary.empty-state.no-definitions":"Word exists in the dictionary but it does not have a definition.","dictionary.empty-state.no-results":"Unable to find word definition in the dictionary.","dictionary.empty-state.not-allowed":"This word is not allowed.","dictionary.empty-state.uninitialized":"Dictionary definition of the most recently highlighted word will be shown here.","dictionary.input.placeholder":"Search dictionary...","empty-state.error":"Error","empty-state.info":"Info","empty-state.success":"Yeah!","empty-state.warning":"Oops!","github":"See this project on GitHub","keyMap":"Keyboard shortcuts","keyMap.board":"Board","keyMap.board.toggle-blank":"Mark/unmark tile as a blank","keyMap.board.toggle-direction":"Toggle typing direction","keyMap.board-and-rack":"Board & rack","keyMap.board-and-rack.insert-two-letter-tile":"Insert two-letter tile","keyMap.board-and-rack.navigate":"Navigate","keyMap.board-and-rack.remove-tile":"Remove tile","keyMap.board-and-rack.submit":"Start solving","keyMap.rack":"Rack","keyMap.rack.insert-blank":"Insert blank (spacebar)","rack.placeholder":"Letters","remaining-tiles":"Remaining tiles","results.empty-state.no-filtered-results":"No result matches this query.","results.empty-state.no-results":"No results - unable to generate any words.","results.empty-state.outdated":"Results are outdated. Click below to update.","results.empty-state.uninitialized":"Words generated from your letters will be shown here.","results.input.placeholder":"Search results... (RegExp)","results.solve":"Solve","settings":"Settings","settings.autoGroupTiles":"Group remaining tiles","settings.autoGroupTiles.left":"On the left","settings.autoGroupTiles.right":"On the right","settings.autoGroupTiles.null":"Do not group","settings.game":"Game","settings.language":"Language","words":"Created words","words.invalid":"Invalid","words.valid":"Valid"}');
|
|
975
|
+
;// CONCATENATED MODULE: ./src/i18n/es.json
|
|
976
|
+
const es_namespaceObject = JSON.parse('{"cell.filter-cell":"Destino objetivo: haga clic para alternar","cell.set-blank":"Marcar como en blanco","cell.set-not-blank":"Marcar como no en blanco","cell.toggle-direction":"Dirección de escritura: haga clic para alternar","common.blanks":"Blancos","common.clear":"Borrar","common.close":"Cerrar","common.consonants":"Consonantes","common.loading":"Cargando","common.points":"Puntos","common.tiles":"Longitud","common.two-letter-tiles":"Dos letras","common.vowels":"Vocales","common.word":"Palabra","common.words":"Palabras","dictionary.empty-state.no-definitions":"La palabra existe en el diccionario pero no tiene una definición.","dictionary.empty-state.no-results":"No se puede encontrar la definición de palabra en el diccionario.","dictionary.empty-state.not-allowed":"Esta palabra no es aceptable.","dictionary.empty-state.uninitialized":"Aquí se mostrará la definición del diccionario de la última palabra resaltada.","dictionary.input.placeholder":"Busca el diccionario...","empty-state.error":"Error","empty-state.info":"Info","empty-state.success":"Sí!","empty-state.warning":"Vaya!","github":"Ver este proyecto en GitHub","keyMap":"Atajos de teclado","keyMap.board":"Tablero","keyMap.board.toggle-blank":"Marcar / desmarcar un espacio en blanco","keyMap.board.toggle-direction":"Alternar dirección de escritura","keyMap.board-and-rack":"Tablero y estante","keyMap.board-and-rack.insert-two-letter-tile":"Insertar mosaico de dos letras","keyMap.board-and-rack.navigate":"Navegar","keyMap.board-and-rack.remove-tile":"Quitar Letra","keyMap.board-and-rack.submit":"Empezar a resolver","keyMap.rack":"Estante","keyMap.rack.insert-blank":"Insertar espacio en blanco (barra espaciadora)","rack.placeholder":"Letras…","remaining-tiles":"Casillas restantes","results.empty-state.no-filtered-results":"Ningún resultado coincide con esta consulta.","results.empty-state.no-results":"No hay resultados; no se pueden generar palabras","results.empty-state.outdated":"Los resultados están desactualizados. Haga clic a continuación para actualizar.","results.empty-state.uninitialized":"Aquí se mostrarán las palabras generadas a partir de sus letras.","results.input.placeholder":"Busque una solución... (RegExp)","results.solve":"Resolver","settings":"Configuración","settings.autoGroupTiles":"Agrupar casillas restantes","settings.autoGroupTiles.left":"A la izquierda","settings.autoGroupTiles.right":"A la derecha","settings.autoGroupTiles.null":"No agrupar","settings.game":"Juego","settings.language":"Idioma","words":"Palabras creadas","words.invalid":"Incorrecto","words.valid":"Correcto"}');
|
|
977
|
+
;// CONCATENATED MODULE: ./src/i18n/fa.json
|
|
978
|
+
const fa_namespaceObject = JSON.parse('{"cell.filter-cell":"مقصد - کلیک برای تغییر","cell.set-blank":"علامت گذاری به عنوان خالی","cell.set-not-blank":"علامت گذاری به عنوان غیر خالی","cell.toggle-direction":"جهت تایپ - کلیک برای تغییر","common.blanks":"خالی","common.clear":"پاک کردن","common.close":"بستن","common.consonants":"حروف صامت","common.loading":"در حال بارگزاری","common.points":"امتیازات","common.tiles":"کاشی ها","common.two-letter-tiles":"دو حرفی","common.vowels":"حروف مصوت","common.word":"کلمه","common.words":"کلمات","dictionary.empty-state.no-definitions":"کلمه در فرهنگ لغت وجود دارد، ولی معنایی برای آن ثبت نشده است.","dictionary.empty-state.no-results":"کلمه در فرهنگ لغت یافت نشد.","dictionary.empty-state.not-allowed":"این کلمه مجاز نیست.","dictionary.empty-state.uninitialized":"معنی لغت اینجا نمایش داده خواهد شد.","dictionary.input.placeholder":"جستجو در فرهنگ لغت ...","empty-state.error":"خطا","empty-state.info":"اطلاعات","empty-state.success":"حله!","empty-state.warning":"اوووخ!","github":"به این پروژه در گیتهاب سر بزنید","keyMap":"میانبر های کیبورد","keyMap.board":"صفحه","keyMap.board.toggle-blank":"علامت/عدم علامت گذاری کاشی به عنوان خالی","keyMap.board.toggle-direction":"تغییر جهت تایپ","keyMap.board-and-rack":"صفحه و طاقچه","keyMap.board-and-rack.insert-two-letter-tile":"وارد کردن کاشی دو حرفی","keyMap.board-and-rack.navigate":"حرکت","keyMap.board-and-rack.remove-tile":"حذف کاشی","keyMap.board-and-rack.submit":"حل کردن","keyMap.rack":"طاقچه","keyMap.rack.insert-blank":"وارد کردن کاشی خالی (دکمه اسپیس)","rack.placeholder":"لیستحرف","remaining-tiles":"کاشی های باقی مانده","results.empty-state.no-filtered-results":"پاسخی یافت نشد.","results.empty-state.no-results":"کلمه قابل استفاده پیدا نشد.","results.empty-state.outdated":"نتایج به روز نیستند، برای بروز رسانی کلیک کنید.","results.empty-state.uninitialized":"کلمات تولید شده از حروف شما اینجا نمایش داده خواهد شد.","results.input.placeholder":"جستجو در نتایج (RegExp)","results.solve":"حل کن","settings":"تنظیمات","settings.autoGroupTiles":"کاشی های باقی مانده ی طاقچه را کنار هم قرار بده","settings.autoGroupTiles.left":"در سمت چپ","settings.autoGroupTiles.right":"در سمت راست","settings.autoGroupTiles.null":"کنار هم قرار نده","settings.game":"بازی","settings.language":"زبان","words":"کلمات ساخته شده","words.invalid":"نا معتبر","words.valid":"معتبر"}');
|
|
979
|
+
;// CONCATENATED MODULE: ./src/i18n/fr.json
|
|
980
|
+
const fr_namespaceObject = JSON.parse('{"cell.filter-cell":"Destination cible - cliquer pour changer","cell.set-blank":"Marquer comme vide","cell.set-not-blank":"Marquer comme non vide","cell.toggle-direction":"Direction d\'écriture - cliquer pour changer","common.blanks":"Cases vides","common.clear":"Effacer","common.close":"Fermer","common.consonants":"Consonnes","common.loading":"Chargement","common.points":"Points","common.tiles":"Cases","common.two-letter-tiles":"Deux lettres","common.vowels":"Voyelles","common.word":"Mot","common.words":"Mots","dictionary.empty-state.no-definitions":"Le mot existe dans le dictionary mais n\'a pas de définition.","dictionary.empty-state.no-results":"Impossible de trouver une définition pour ce mot dans le dictionaire.","dictionary.empty-state.not-allowed":"Ce mot n\'est pas pas acceptable.","dictionary.empty-state.uninitialized":"La définition dictionaire du dernier mot surligné sera affichée ici.","dictionary.input.placeholder":"Rechercher dans le dictionnaire...","empty-state.error":"Erreur","empty-state.info":"Info","empty-state.success":"Ouais!","empty-state.warning":"Oups!","github":"Voir ce projet sur GitHub","keyMap":"Raccourcis clavier","keyMap.board":"Plateau","keyMap.board.toggle-blank":"Marqué/Démarqué la case en tant que vide","keyMap.board.toggle-direction":"Faire basculer la direction d\'écriture","keyMap.board-and-rack":"Plateau & chevalet","keyMap.board-and-rack.insert-two-letter-tile":"Insérer une tuile de deux lettres","keyMap.board-and-rack.navigate":"Naviguer","keyMap.board-and-rack.remove-tile":"Supprimer une case","keyMap.board-and-rack.submit":"Commencer la résolution","keyMap.rack":"Chevalet","keyMap.rack.insert-blank":"Inserer une case vide (spacebar)","rack.placeholder":"Lettres","remaining-tiles":"Cases restantes","results.empty-state.no-filtered-results":"Aucun résultat ne correspond à cette requête","results.empty-state.no-results":"Pas de résultats - impossible de générer des mots.","results.empty-state.outdated":"Les résultats sont dépassé. Cliquer ci-dessous pour mettre à jour.","results.empty-state.uninitialized":"Les mots générés à partir de vos lettres seront affichés ici.","results.input.placeholder":"Rechercher les résultats... (RegExp)","results.solve":"Résoudre","settings":"Options","settings.autoGroupTiles":"Grouper les cases restantes","settings.autoGroupTiles.left":"Vers la droite","settings.autoGroupTiles.right":"Vers la gauche","settings.autoGroupTiles.null":"Ne pas grouper","settings.game":"Jeu","settings.language":"Langue","words":"Mots créés","words.invalid":"Incorrect","words.valid":"Corriger"}');
|
|
981
|
+
;// CONCATENATED MODULE: ./src/i18n/pl.json
|
|
982
|
+
const pl_namespaceObject = JSON.parse('{"cell.filter-cell":"Miejsce docelowe - kliknij aby zmienić","cell.set-blank":"Oznacz jako blank","cell.set-not-blank":"Oznacz jako nie blank","cell.toggle-direction":"Kierunek wpisywania - kliknij aby zmienić","common.blanks":"Blanki","common.clear":"Wyczyść","common.close":"Zamknij","common.consonants":"Spółgłoski","common.loading":"Ładowanie","common.points":"Punkty","common.tiles":"Płytki","common.two-letter-tiles":"Dwuliterowe","common.vowels":"Samogłoski","common.word":"Słowo","common.words":"Słowa","dictionary.empty-state.no-definitions":"Słowo istnieje w słowniku ale nie posiada definicji.","dictionary.empty-state.no-results":"Nie udało się znaleźć definicji słowa w słowniku.","dictionary.empty-state.not-allowed":"To słowo nie jest dopuszczalne w grach.","dictionary.empty-state.uninitialized":"Tu zostanie wyświetlona słownikowa definicja ostatnio podświetlonego słowa.","dictionary.input.placeholder":"Szukaj w słowniku...","empty-state.error":"Błąd","empty-state.info":"Info","empty-state.success":"Hurra!","empty-state.warning":"Ups!","github":"Zobacz ten projekt na GitHubie","keyMap":"Skróty klawiszowe","keyMap.board":"Plansza","keyMap.board.toggle-blank":"Oznacz/odznacz płytkę jako blank","keyMap.board.toggle-direction":"Zmień kierunek wpisywania","keyMap.board-and-rack":"Plansza i stojak","keyMap.board-and-rack.insert-two-letter-tile":"Wstaw dwuliterową płytkę","keyMap.board-and-rack.navigate":"Nawigacja","keyMap.board-and-rack.remove-tile":"Zdejmij płytkę","keyMap.board-and-rack.submit":"Rozpocznij wyszukiwanie","keyMap.rack":"Stojak","keyMap.rack.insert-blank":"Wstaw blanka (spacja)","rack.placeholder":"Literki","remaining-tiles":"Pozostałe płytki","results.empty-state.no-filtered-results":"Żaden wynik nie pasuje do tej kwerendy.","results.empty-state.no-results":"Brak wyników - nie można wygenerować żadnego słowa.","results.empty-state.outdated":"Wyniki są nieaktualne. Kliknij poniżej, aby zaktualizować.","results.empty-state.uninitialized":"Tu zostaną wyświetlone słowa wygenerowane z Twoich liter.","results.input.placeholder":"Szukaj rozwiązania... (RegExp)","results.solve":"Rozwiąż","settings":"Opcje","settings.autoGroupTiles":"Grupuj pozostałe płytki","settings.autoGroupTiles.left":"Po lewej","settings.autoGroupTiles.right":"Po prawej","settings.autoGroupTiles.null":"Nie grupuj","settings.game":"Gra","settings.language":"Język","words":"Utworzone słowa","words.invalid":"Niepoprawne","words.valid":"Poprawne"}');
|
|
983
|
+
;// CONCATENATED MODULE: ./src/i18n/i18n.ts
|
|
984
|
+
|
|
985
|
+
|
|
986
|
+
|
|
987
|
+
|
|
988
|
+
|
|
989
|
+
|
|
990
|
+
|
|
991
|
+
const i18n = {
|
|
992
|
+
[build.Locale.DE_DE]: de_namespaceObject,
|
|
993
|
+
[build.Locale.EN_GB]: en_namespaceObject,
|
|
994
|
+
[build.Locale.EN_US]: en_namespaceObject,
|
|
995
|
+
[build.Locale.ES_ES]: es_namespaceObject,
|
|
996
|
+
[build.Locale.FA_IR]: fa_namespaceObject,
|
|
997
|
+
[build.Locale.FR_FR]: fr_namespaceObject,
|
|
998
|
+
[build.Locale.PL_PL]: pl_namespaceObject
|
|
999
|
+
};
|
|
1000
|
+
/* harmony default export */ const i18n_i18n = (i18n);
|
|
1001
|
+
|
|
1002
|
+
;// CONCATENATED MODULE: ./src/i18n/constants.ts
|
|
1003
|
+
|
|
1004
|
+
const LOCALE_FEATURES = {
|
|
1005
|
+
[build.Locale.DE_DE]: {
|
|
1006
|
+
direction: "ltr",
|
|
1007
|
+
fontFamily: "Open Sans",
|
|
1008
|
+
consonants: true,
|
|
1009
|
+
vowels: true
|
|
1010
|
+
},
|
|
1011
|
+
[build.Locale.EN_GB]: {
|
|
1012
|
+
direction: "ltr",
|
|
1013
|
+
fontFamily: "Open Sans",
|
|
1014
|
+
consonants: true,
|
|
1015
|
+
vowels: true
|
|
1016
|
+
},
|
|
1017
|
+
[build.Locale.EN_US]: {
|
|
1018
|
+
direction: "ltr",
|
|
1019
|
+
fontFamily: "Open Sans",
|
|
1020
|
+
consonants: true,
|
|
1021
|
+
vowels: true
|
|
1022
|
+
},
|
|
1023
|
+
[build.Locale.ES_ES]: {
|
|
1024
|
+
direction: "ltr",
|
|
1025
|
+
fontFamily: "Open Sans",
|
|
1026
|
+
consonants: true,
|
|
1027
|
+
vowels: true
|
|
1028
|
+
},
|
|
1029
|
+
[build.Locale.FA_IR]: {
|
|
1030
|
+
direction: "rtl",
|
|
1031
|
+
fontFamily: "Vazirmatn",
|
|
1032
|
+
consonants: false,
|
|
1033
|
+
vowels: false
|
|
1034
|
+
},
|
|
1035
|
+
[build.Locale.FR_FR]: {
|
|
1036
|
+
direction: "ltr",
|
|
1037
|
+
fontFamily: "Open Sans",
|
|
1038
|
+
consonants: true,
|
|
1039
|
+
vowels: true
|
|
1040
|
+
},
|
|
1041
|
+
[build.Locale.PL_PL]: {
|
|
1042
|
+
direction: "ltr",
|
|
1043
|
+
fontFamily: "Open Sans",
|
|
1044
|
+
consonants: true,
|
|
1045
|
+
vowels: true
|
|
1046
|
+
}
|
|
1047
|
+
};
|
|
1048
|
+
|
|
1049
|
+
;// CONCATENATED MODULE: ./src/i18n/index.ts
|
|
1050
|
+
|
|
1051
|
+
|
|
1052
|
+
|
|
1053
|
+
|
|
1054
|
+
/***/ }),
|
|
1055
|
+
|
|
1056
|
+
/***/ 30459:
|
|
865
1057
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
866
1058
|
|
|
867
1059
|
|
|
@@ -891,7 +1083,7 @@ __webpack_require__.d(__webpack_exports__, {
|
|
|
891
1083
|
"gV": () => (/* reexport */ lib_zipCharactersAndTiles)
|
|
892
1084
|
});
|
|
893
1085
|
|
|
894
|
-
// UNUSED EXPORTS:
|
|
1086
|
+
// UNUSED EXPORTS: createComparator, createKeyComparator, createStringComparator, getRemainingTilesCount, getTotalRemainingTilesCount, isStringArray, numberComparator, reverseComparator
|
|
895
1087
|
|
|
896
1088
|
;// CONCATENATED MODULE: ./src/lib/canUseDom.ts
|
|
897
1089
|
const canUseDom = Boolean( false && 0);
|
|
@@ -968,6 +1160,9 @@ const detectLocale = ()=>{
|
|
|
968
1160
|
if (window.navigator.languages.includes("en-GB")) {
|
|
969
1161
|
return build.Locale.EN_GB;
|
|
970
1162
|
}
|
|
1163
|
+
if (window.navigator.languages.includes("fa") || window.navigator.languages.includes("fa-IR")) {
|
|
1164
|
+
return build.Locale.FA_IR;
|
|
1165
|
+
}
|
|
971
1166
|
if (window.navigator.languages.includes("fr-FR")) {
|
|
972
1167
|
return build.Locale.FR_FR;
|
|
973
1168
|
}
|
|
@@ -1030,23 +1225,24 @@ const getCellSize = (config, width, height)=>{
|
|
|
1030
1225
|
};
|
|
1031
1226
|
/* harmony default export */ const lib_getCellSize = (getCellSize);
|
|
1032
1227
|
|
|
1228
|
+
;// CONCATENATED MODULE: ./src/lib/createStringComparator.ts
|
|
1229
|
+
const createStringComparator = (locale)=>(a, b)=>a.localeCompare(b, locale);
|
|
1230
|
+
/* harmony default export */ const lib_createStringComparator = (createStringComparator);
|
|
1231
|
+
|
|
1033
1232
|
;// CONCATENATED MODULE: ./src/lib/numberComparator.ts
|
|
1034
1233
|
const numberComparator = (a, b)=>a - b;
|
|
1035
1234
|
/* harmony default export */ const lib_numberComparator = (numberComparator);
|
|
1036
1235
|
|
|
1037
|
-
;// CONCATENATED MODULE: ./src/lib/stringComparator.ts
|
|
1038
|
-
const stringComparator = (a, b)=>a.localeCompare(b);
|
|
1039
|
-
/* harmony default export */ const lib_stringComparator = (stringComparator);
|
|
1040
|
-
|
|
1041
1236
|
;// CONCATENATED MODULE: ./src/lib/createKeyComparator.ts
|
|
1042
1237
|
|
|
1043
1238
|
|
|
1044
|
-
const createKeyComparator = (key)=>{
|
|
1239
|
+
const createKeyComparator = (key, locale)=>{
|
|
1240
|
+
const stringComparator = lib_createStringComparator(locale);
|
|
1045
1241
|
return (a, b)=>{
|
|
1046
1242
|
const aValue = a[key];
|
|
1047
1243
|
const bValue = b[key];
|
|
1048
1244
|
if (typeof aValue === "string" && typeof bValue === "string") {
|
|
1049
|
-
return
|
|
1245
|
+
return stringComparator(aValue, bValue);
|
|
1050
1246
|
}
|
|
1051
1247
|
if (typeof aValue === "number" && typeof bValue === "number") {
|
|
1052
1248
|
return lib_numberComparator(aValue, bValue);
|
|
@@ -1059,7 +1255,7 @@ const createKeyComparator = (key)=>{
|
|
|
1059
1255
|
;// CONCATENATED MODULE: ./src/lib/getRemainingTiles.ts
|
|
1060
1256
|
|
|
1061
1257
|
|
|
1062
|
-
const getRemainingTiles = (config, board, characters)=>{
|
|
1258
|
+
const getRemainingTiles = (config, board, characters, locale)=>{
|
|
1063
1259
|
const nonEmptyCells = board.rows.flat().filter((cell)=>!cell.isEmpty);
|
|
1064
1260
|
const letterCells = nonEmptyCells.filter((cell)=>!cell.tile.isBlank);
|
|
1065
1261
|
const remainingTiles = Object.fromEntries(config.tiles.map((tile)=>[
|
|
@@ -1091,8 +1287,9 @@ const getRemainingTiles = (config, board, characters)=>{
|
|
|
1091
1287
|
for (const letter1 of letters){
|
|
1092
1288
|
++remainingTiles[letter1].usedCount;
|
|
1093
1289
|
}
|
|
1290
|
+
const comparator = lib_createKeyComparator("character", locale);
|
|
1094
1291
|
return [
|
|
1095
|
-
...Object.values(remainingTiles).sort(
|
|
1292
|
+
...Object.values(remainingTiles).sort(comparator),
|
|
1096
1293
|
blank
|
|
1097
1294
|
];
|
|
1098
1295
|
};
|
|
@@ -1115,38 +1312,49 @@ const getTotalRemainingTilesCount = (remainingTiles)=>{
|
|
|
1115
1312
|
|
|
1116
1313
|
|
|
1117
1314
|
const getRemainingTilesGroups = (remainingTiles)=>{
|
|
1118
|
-
const consonants = remainingTiles.filter(
|
|
1119
|
-
const vowels = remainingTiles.filter(
|
|
1120
|
-
const
|
|
1121
|
-
const
|
|
1122
|
-
|
|
1123
|
-
|
|
1124
|
-
|
|
1125
|
-
|
|
1126
|
-
|
|
1127
|
-
|
|
1128
|
-
|
|
1129
|
-
|
|
1130
|
-
|
|
1131
|
-
|
|
1132
|
-
|
|
1133
|
-
|
|
1134
|
-
|
|
1135
|
-
|
|
1136
|
-
|
|
1137
|
-
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
|
-
|
|
1141
|
-
|
|
1142
|
-
|
|
1143
|
-
|
|
1144
|
-
|
|
1145
|
-
|
|
1146
|
-
|
|
1147
|
-
|
|
1315
|
+
const consonants = remainingTiles.filter(isConsonant);
|
|
1316
|
+
const vowels = remainingTiles.filter(isVowel);
|
|
1317
|
+
const other = remainingTiles.filter(isOther);
|
|
1318
|
+
const groups = [];
|
|
1319
|
+
groups.push({
|
|
1320
|
+
remainingCount: lib_getRemainingTilesCount(vowels),
|
|
1321
|
+
tiles: vowels,
|
|
1322
|
+
translationKey: "common.vowels",
|
|
1323
|
+
totalCount: lib_getTotalRemainingTilesCount(vowels)
|
|
1324
|
+
});
|
|
1325
|
+
groups.push({
|
|
1326
|
+
remainingCount: lib_getRemainingTilesCount(consonants),
|
|
1327
|
+
tiles: consonants,
|
|
1328
|
+
translationKey: "common.consonants",
|
|
1329
|
+
totalCount: lib_getTotalRemainingTilesCount(consonants)
|
|
1330
|
+
});
|
|
1331
|
+
groups.push({
|
|
1332
|
+
remainingCount: lib_getRemainingTilesCount(other),
|
|
1333
|
+
tiles: other,
|
|
1334
|
+
translationKey: "common.tiles",
|
|
1335
|
+
totalCount: lib_getTotalRemainingTilesCount(other)
|
|
1336
|
+
});
|
|
1337
|
+
const twoCharacterTiles = remainingTiles.filter(isTwoCharacter);
|
|
1338
|
+
const blanks = remainingTiles.filter(isBlank);
|
|
1339
|
+
groups.push({
|
|
1340
|
+
remainingCount: lib_getRemainingTilesCount(twoCharacterTiles),
|
|
1341
|
+
tiles: twoCharacterTiles,
|
|
1342
|
+
translationKey: "common.two-letter-tiles",
|
|
1343
|
+
totalCount: lib_getTotalRemainingTilesCount(twoCharacterTiles)
|
|
1344
|
+
});
|
|
1345
|
+
groups.push({
|
|
1346
|
+
remainingCount: lib_getRemainingTilesCount(blanks),
|
|
1347
|
+
tiles: blanks,
|
|
1348
|
+
translationKey: "common.blanks",
|
|
1349
|
+
totalCount: lib_getTotalRemainingTilesCount(blanks)
|
|
1350
|
+
});
|
|
1148
1351
|
return groups.filter(({ totalCount })=>totalCount > 0);
|
|
1149
1352
|
};
|
|
1353
|
+
const isConsonant = (tile)=>constants_build.CONSONANTS.includes(tile.character);
|
|
1354
|
+
const isVowel = (tile)=>constants_build.VOWELS.includes(tile.character);
|
|
1355
|
+
const isTwoCharacter = (tile)=>tile.character.length === 2;
|
|
1356
|
+
const isBlank = (tile)=>tile.character === constants_build.BLANK;
|
|
1357
|
+
const isOther = (tile)=>!isConsonant(tile) && !isVowel(tile) && !isBlank(tile) && !isTwoCharacter(tile);
|
|
1150
1358
|
/* harmony default export */ const lib_getRemainingTilesGroups = (getRemainingTilesGroups);
|
|
1151
1359
|
|
|
1152
1360
|
;// CONCATENATED MODULE: ./src/lib/getTileSizes.ts
|
|
@@ -1249,19 +1457,20 @@ const reverseComparator = (comparator)=>{
|
|
|
1249
1457
|
|
|
1250
1458
|
|
|
1251
1459
|
const comparators = {
|
|
1252
|
-
[types/* ResultColumn.BlanksCount */.M.BlanksCount]: lib_createKeyComparator("blanksCount"),
|
|
1253
|
-
[types/* ResultColumn.ConsonantsCount */.M.ConsonantsCount]: lib_createKeyComparator("consonantsCount"),
|
|
1254
|
-
[types/* ResultColumn.Points */.M.Points]: lib_createKeyComparator("points"),
|
|
1255
|
-
[types/* ResultColumn.TilesCount */.M.TilesCount]: lib_createKeyComparator("tilesCount"),
|
|
1256
|
-
[types/* ResultColumn.VowelsCount */.M.VowelsCount]: lib_createKeyComparator("vowelsCount"),
|
|
1257
|
-
[types/* ResultColumn.Word */.M.Word]: lib_createKeyComparator("word"),
|
|
1258
|
-
[types/* ResultColumn.WordsCount */.M.WordsCount]: lib_createKeyComparator("wordsCount")
|
|
1259
|
-
};
|
|
1260
|
-
const sortResults = (results, column, sortDirection)=>{
|
|
1460
|
+
[types/* ResultColumn.BlanksCount */.M.BlanksCount]: (locale)=>lib_createKeyComparator("blanksCount", locale),
|
|
1461
|
+
[types/* ResultColumn.ConsonantsCount */.M.ConsonantsCount]: (locale)=>lib_createKeyComparator("consonantsCount", locale),
|
|
1462
|
+
[types/* ResultColumn.Points */.M.Points]: (locale)=>lib_createKeyComparator("points", locale),
|
|
1463
|
+
[types/* ResultColumn.TilesCount */.M.TilesCount]: (locale)=>lib_createKeyComparator("tilesCount", locale),
|
|
1464
|
+
[types/* ResultColumn.VowelsCount */.M.VowelsCount]: (locale)=>lib_createKeyComparator("vowelsCount", locale),
|
|
1465
|
+
[types/* ResultColumn.Word */.M.Word]: (locale)=>lib_createKeyComparator("word", locale),
|
|
1466
|
+
[types/* ResultColumn.WordsCount */.M.WordsCount]: (locale)=>lib_createKeyComparator("wordsCount", locale)
|
|
1467
|
+
};
|
|
1468
|
+
const sortResults = (results, column, sortDirection, locale)=>{
|
|
1261
1469
|
if (typeof results === "undefined") {
|
|
1262
1470
|
return results;
|
|
1263
1471
|
}
|
|
1264
|
-
const
|
|
1472
|
+
const createComparator = comparators[column];
|
|
1473
|
+
const comparator = createComparator(locale);
|
|
1265
1474
|
const finalComparator = sortDirection === types/* SortDirection.Descending */.S.Descending ? lib_reverseComparator(comparator) : comparator;
|
|
1266
1475
|
return [
|
|
1267
1476
|
...results
|
|
@@ -1269,32 +1478,36 @@ const sortResults = (results, column, sortDirection)=>{
|
|
|
1269
1478
|
};
|
|
1270
1479
|
/* harmony default export */ const lib_sortResults = (sortResults);
|
|
1271
1480
|
|
|
1272
|
-
;// CONCATENATED MODULE: ./src/lib/
|
|
1481
|
+
;// CONCATENATED MODULE: ./src/lib/createComparator.ts
|
|
1273
1482
|
|
|
1274
1483
|
|
|
1275
|
-
const
|
|
1276
|
-
|
|
1277
|
-
|
|
1278
|
-
|
|
1279
|
-
|
|
1280
|
-
|
|
1281
|
-
|
|
1282
|
-
|
|
1484
|
+
const createComparator = (locale)=>{
|
|
1485
|
+
const stringComparator = lib_createStringComparator(locale);
|
|
1486
|
+
return (a, b)=>{
|
|
1487
|
+
if (typeof a === "string" && typeof b === "string") {
|
|
1488
|
+
return stringComparator(a, b);
|
|
1489
|
+
}
|
|
1490
|
+
if (typeof a === "number" && typeof b === "number") {
|
|
1491
|
+
return lib_numberComparator(a, b);
|
|
1492
|
+
}
|
|
1493
|
+
return 0;
|
|
1494
|
+
};
|
|
1283
1495
|
};
|
|
1284
|
-
/* harmony default export */ const
|
|
1496
|
+
/* harmony default export */ const lib_createComparator = (createComparator);
|
|
1285
1497
|
|
|
1286
1498
|
;// CONCATENATED MODULE: ./src/lib/unorderedArraysEqual.ts
|
|
1287
1499
|
|
|
1288
|
-
const unorderedArraysEqual = (a, b)=>{
|
|
1500
|
+
const unorderedArraysEqual = (a, b, locale)=>{
|
|
1289
1501
|
if (a.length !== b.length) {
|
|
1290
1502
|
return false;
|
|
1291
1503
|
}
|
|
1504
|
+
const comparator = lib_createComparator(locale);
|
|
1292
1505
|
const aSorted = [
|
|
1293
1506
|
...a
|
|
1294
|
-
].sort(
|
|
1507
|
+
].sort(comparator);
|
|
1295
1508
|
const bSorted = [
|
|
1296
1509
|
...b
|
|
1297
|
-
].sort(
|
|
1510
|
+
].sort(comparator);
|
|
1298
1511
|
return aSorted.every((character, index)=>character === bSorted[index]);
|
|
1299
1512
|
};
|
|
1300
1513
|
/* harmony default export */ const lib_unorderedArraysEqual = (unorderedArraysEqual);
|
|
@@ -1536,7 +1749,7 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
|
|
|
1536
1749
|
/* harmony import */ var _actions__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(89969);
|
|
1537
1750
|
/* harmony import */ var _createAppStore__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(33282);
|
|
1538
1751
|
/* harmony import */ var _localStorage__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(83773);
|
|
1539
|
-
/* harmony import */ var _selectors__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(
|
|
1752
|
+
/* harmony import */ var _selectors__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(40897);
|
|
1540
1753
|
/* harmony import */ var _slices__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(99134);
|
|
1541
1754
|
/* harmony import */ var _useTranslate__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(41573);
|
|
1542
1755
|
/* harmony import */ var _useTypedSelector__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(53872);
|
|
@@ -1650,7 +1863,7 @@ __webpack_require__.d(__webpack_exports__, {
|
|
|
1650
1863
|
// EXTERNAL MODULE: external "redux-saga/effects"
|
|
1651
1864
|
var effects_ = __webpack_require__(56477);
|
|
1652
1865
|
// EXTERNAL MODULE: ./src/lib/index.ts + 29 modules
|
|
1653
|
-
var lib = __webpack_require__(
|
|
1866
|
+
var lib = __webpack_require__(30459);
|
|
1654
1867
|
// EXTERNAL MODULE: ../types/build/index.js
|
|
1655
1868
|
var build = __webpack_require__(34046);
|
|
1656
1869
|
;// CONCATENATED MODULE: ./src/sdk/fetch.ts
|
|
@@ -1696,7 +1909,7 @@ const fetchJson = async (input, init)=>{
|
|
|
1696
1909
|
|
|
1697
1910
|
|
|
1698
1911
|
const findWordDefinitions = async (locale, word)=>{
|
|
1699
|
-
const json = await sdk_fetchJson(`/api/dictionary/${locale}/${word}`);
|
|
1912
|
+
const json = await sdk_fetchJson(`/api/dictionary/${locale}/${encodeURIComponent(word)}`);
|
|
1700
1913
|
return json.map(build.WordDefinition.fromJson);
|
|
1701
1914
|
};
|
|
1702
1915
|
/* harmony default export */ const sdk_findWordDefinitions = (findWordDefinitions);
|
|
@@ -1748,8 +1961,8 @@ const visit = ()=>{
|
|
|
1748
1961
|
|
|
1749
1962
|
// EXTERNAL MODULE: ./src/state/actions.ts
|
|
1750
1963
|
var actions = __webpack_require__(89969);
|
|
1751
|
-
// EXTERNAL MODULE: ./src/state/selectors.ts
|
|
1752
|
-
var selectors = __webpack_require__(
|
|
1964
|
+
// EXTERNAL MODULE: ./src/state/selectors.ts
|
|
1965
|
+
var selectors = __webpack_require__(40897);
|
|
1753
1966
|
// EXTERNAL MODULE: ./src/state/slices/index.ts + 16 modules
|
|
1754
1967
|
var slices = __webpack_require__(99134);
|
|
1755
1968
|
;// CONCATENATED MODULE: ./src/state/sagas.ts
|
|
@@ -1789,7 +2002,7 @@ function* onRackValueChange() {
|
|
|
1789
2002
|
yield (0,effects_.put)(slices/* resultsSlice.actions.changeResultCandidate */._C.actions.changeResultCandidate(null));
|
|
1790
2003
|
}
|
|
1791
2004
|
function* onApplyResult({ payload: result }) {
|
|
1792
|
-
const autoGroupTiles = yield (0,effects_.select)(selectors/*
|
|
2005
|
+
const autoGroupTiles = yield (0,effects_.select)(selectors/* selectLocaleAutoGroupTiles */.lP);
|
|
1793
2006
|
yield (0,effects_.put)(slices/* boardSlice.actions.applyResult */.I8.actions.applyResult(result));
|
|
1794
2007
|
yield (0,effects_.put)(slices/* cellFilterSlice.actions.reset */.mO.actions.reset());
|
|
1795
2008
|
yield (0,effects_.put)(slices/* rackSlice.actions.removeTiles */.O_.actions.removeTiles(result.tiles));
|
|
@@ -1797,8 +2010,13 @@ function* onApplyResult({ payload: result }) {
|
|
|
1797
2010
|
yield (0,effects_.put)(slices/* verifySlice.actions.submit */.Gt.actions.submit());
|
|
1798
2011
|
}
|
|
1799
2012
|
function* onConfigIdChange() {
|
|
2013
|
+
const characters = yield (0,effects_.select)(selectors/* selectCharacters */.yp);
|
|
2014
|
+
if (characters.length > 0) {
|
|
2015
|
+
yield (0,effects_.put)(slices/* solveSlice.actions.submit */.TP.actions.submit());
|
|
2016
|
+
} else {
|
|
2017
|
+
yield (0,effects_.put)(slices/* resultsSlice.actions.reset */._C.actions.reset());
|
|
2018
|
+
}
|
|
1800
2019
|
yield (0,effects_.put)(slices/* resultsSlice.actions.reset */._C.actions.reset());
|
|
1801
|
-
yield (0,effects_.put)(slices/* solveSlice.actions.submit */.TP.actions.submit());
|
|
1802
2020
|
yield (0,effects_.put)(slices/* verifySlice.actions.submit */.Gt.actions.submit());
|
|
1803
2021
|
yield* ensureProperTilesCount();
|
|
1804
2022
|
}
|
|
@@ -1829,9 +2047,14 @@ function* onReset() {
|
|
|
1829
2047
|
yield (0,effects_.put)(slices/* verifySlice.actions.submit */.Gt.actions.submit());
|
|
1830
2048
|
}
|
|
1831
2049
|
function* onLocaleChange() {
|
|
2050
|
+
const characters = yield (0,effects_.select)(selectors/* selectCharacters */.yp);
|
|
2051
|
+
if (characters.length > 0) {
|
|
2052
|
+
yield (0,effects_.put)(slices/* solveSlice.actions.submit */.TP.actions.submit());
|
|
2053
|
+
} else {
|
|
2054
|
+
yield (0,effects_.put)(slices/* resultsSlice.actions.reset */._C.actions.reset());
|
|
2055
|
+
}
|
|
1832
2056
|
yield (0,effects_.put)(slices/* dictionarySlice.actions.reset */.lj.actions.reset());
|
|
1833
2057
|
yield (0,effects_.put)(slices/* resultsSlice.actions.changeResultCandidate */._C.actions.changeResultCandidate(null));
|
|
1834
|
-
yield (0,effects_.put)(slices/* solveSlice.actions.submit */.TP.actions.submit());
|
|
1835
2058
|
yield (0,effects_.put)(slices/* verifySlice.actions.submit */.Gt.actions.submit());
|
|
1836
2059
|
}
|
|
1837
2060
|
function* onResultCandidateChange({ payload: result }) {
|
|
@@ -1902,7 +2125,7 @@ function* ensureProperTilesCount() {
|
|
|
1902
2125
|
} else if (config.maximumCharactersCount < characters.length) {
|
|
1903
2126
|
const nonNulls = characters.filter(Boolean).slice(0, config.maximumCharactersCount);
|
|
1904
2127
|
const differenceCount1 = Math.abs(config.maximumCharactersCount - nonNulls.length);
|
|
1905
|
-
const autoGroupTiles = yield (0,effects_.select)(selectors/*
|
|
2128
|
+
const autoGroupTiles = yield (0,effects_.select)(selectors/* selectLocaleAutoGroupTiles */.lP);
|
|
1906
2129
|
yield (0,effects_.put)(slices/* rackSlice.actions.init */.O_.actions.init([
|
|
1907
2130
|
...nonNulls,
|
|
1908
2131
|
...Array(differenceCount1).fill(null)
|
|
@@ -1914,80 +2137,49 @@ function* ensureProperTilesCount() {
|
|
|
1914
2137
|
|
|
1915
2138
|
/***/ }),
|
|
1916
2139
|
|
|
1917
|
-
/***/
|
|
2140
|
+
/***/ 40897:
|
|
1918
2141
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
1919
2142
|
|
|
1920
|
-
|
|
1921
|
-
|
|
1922
|
-
|
|
1923
|
-
|
|
1924
|
-
|
|
1925
|
-
|
|
1926
|
-
|
|
1927
|
-
|
|
1928
|
-
|
|
1929
|
-
|
|
1930
|
-
|
|
1931
|
-
|
|
1932
|
-
|
|
1933
|
-
|
|
1934
|
-
|
|
1935
|
-
|
|
1936
|
-
|
|
1937
|
-
|
|
1938
|
-
|
|
1939
|
-
|
|
1940
|
-
|
|
1941
|
-
|
|
1942
|
-
|
|
1943
|
-
|
|
1944
|
-
|
|
1945
|
-
|
|
1946
|
-
|
|
1947
|
-
|
|
1948
|
-
|
|
1949
|
-
|
|
1950
|
-
|
|
1951
|
-
|
|
1952
|
-
|
|
1953
|
-
|
|
1954
|
-
|
|
1955
|
-
|
|
1956
|
-
var
|
|
1957
|
-
|
|
1958
|
-
var
|
|
1959
|
-
|
|
1960
|
-
var types_build = __webpack_require__(34046);
|
|
1961
|
-
;// CONCATENATED MODULE: ./src/i18n/de.json
|
|
1962
|
-
const de_namespaceObject = JSON.parse('{"cell.filter-cell":"Zielort - klicken zum Wechseln","cell.set-blank":"Als Blanko markieren","cell.set-not-blank":"Nicht als Blanko markieren","cell.toggle-direction":"Schreibrichtung - klicken zum Wechseln","common.blanks":"Blankos","common.clear":"Löschen","common.close":"Schließen","common.consonants":"Konsonanten","common.loading":"Laden","common.points":"Punkte","common.tiles":"Steine","common.two-letter-tiles":"Zwei-Buchstaben","common.vowels":"Vokale","common.word":"Wort","common.words":"Wörter","dictionary.empty-state.no-definitions":"Wort existiert im Wörterbuch aber hat keine Definition.","dictionary.empty-state.no-results":"Wort kann nicht im Wörterbuch gefunden werden.","dictionary.empty-state.not-allowed":"Dieses Wort ist nicht erlaubt.","dictionary.empty-state.uninitialized":"Die Wörterbuchdefinition des letzten markierten Wortes wird hier angezeigt.","dictionary.input.placeholder":"Durchsuche Wörterbuch...","empty-state.error":"Fehler","empty-state.info":"Info","empty-state.success":"Juhuu!","empty-state.warning":"Oje!","github":"Schau dieses Projekt auf GitHub an","keyMap":"Tastaturkürzel","keyMap.board":"Brett","keyMap.board.toggle-blank":"Als Blanko markieren / aufheben","keyMap.board.toggle-direction":"Schreibrichtung umschalten","keyMap.board-and-rack":"Brett & Ablage","keyMap.board-and-rack.insert-two-letter-tile":"Zwei-Buchstaben Stein hinzufügen","keyMap.board-and-rack.navigate":"Navigieren","keyMap.board-and-rack.remove-tile":"Stein entfernen","keyMap.board-and-rack.submit":"Lösen starten","keyMap.rack":"Ablage","keyMap.rack.insert-blank":"Blanko hinzufügen (Leertaste)","rack.placeholder":"Steine…","remaining-tiles":"Restliche Steine","results.empty-state.no-filtered-results":"Keine Ergebnisse für diese Anfrage.","results.empty-state.no-results":"Keine Ergebnisse - kein Wort konnte generiert werden.","results.empty-state.outdated":"Ergebnisse sind alt. Klicken zum Aktualisieren.","results.empty-state.uninitialized":"Wörter die aus deinen Buchstaben generiert wurden erscheinen hier.","results.input.placeholder":"Suchergebnisse... (RegExp)","results.solve":"Lösen","settings":"Einstellungen","settings.autoGroupTiles":"Restliche Steine gruppieren","settings.autoGroupTiles.left":"Linke Seite","settings.autoGroupTiles.right":"Rechte Seite","settings.autoGroupTiles.null":"Nicht gruppieren","settings.game":"Spiel","settings.language":"Sprache","words":"Gebildete Wörter","words.invalid":"Falsch","words.valid":"Korrekt"}');
|
|
1963
|
-
;// CONCATENATED MODULE: ./src/i18n/en.json
|
|
1964
|
-
const en_namespaceObject = JSON.parse('{"cell.filter-cell":"Target destination - click to toggle","cell.set-blank":"Mark it a blank","cell.set-not-blank":"Mark it not a blank","cell.toggle-direction":"Typing direction - click to toggle","common.blanks":"Blanks","common.clear":"Clear","common.close":"Close","common.consonants":"Consonants","common.loading":"Loading","common.points":"Points","common.tiles":"Tiles","common.two-letter-tiles":"Two-letter","common.vowels":"Vowels","common.word":"Word","common.words":"Words","dictionary.empty-state.no-definitions":"Word exists in the dictionary but it does not have a definition.","dictionary.empty-state.no-results":"Unable to find word definition in the dictionary.","dictionary.empty-state.not-allowed":"This word is not allowed.","dictionary.empty-state.uninitialized":"Dictionary definition of the most recently highlighted word will be shown here.","dictionary.input.placeholder":"Search dictionary...","empty-state.error":"Error","empty-state.info":"Info","empty-state.success":"Yeah!","empty-state.warning":"Oops!","github":"See this project on GitHub","keyMap":"Keyboard shortcuts","keyMap.board":"Board","keyMap.board.toggle-blank":"Mark/unmark tile as a blank","keyMap.board.toggle-direction":"Toggle typing direction","keyMap.board-and-rack":"Board & rack","keyMap.board-and-rack.insert-two-letter-tile":"Insert two-letter tile","keyMap.board-and-rack.navigate":"Navigate","keyMap.board-and-rack.remove-tile":"Remove tile","keyMap.board-and-rack.submit":"Start solving","keyMap.rack":"Rack","keyMap.rack.insert-blank":"Insert blank (spacebar)","rack.placeholder":"Letters","remaining-tiles":"Remaining tiles","results.empty-state.no-filtered-results":"No result matches this query.","results.empty-state.no-results":"No results - unable to generate any words.","results.empty-state.outdated":"Results are outdated. Click below to update.","results.empty-state.uninitialized":"Words generated from your letters will be shown here.","results.input.placeholder":"Search results... (RegExp)","results.solve":"Solve","settings":"Settings","settings.autoGroupTiles":"Group remaining tiles","settings.autoGroupTiles.left":"On the left","settings.autoGroupTiles.right":"On the right","settings.autoGroupTiles.null":"Do not group","settings.game":"Game","settings.language":"Language","words":"Created words","words.invalid":"Invalid","words.valid":"Valid"}');
|
|
1965
|
-
;// CONCATENATED MODULE: ./src/i18n/es.json
|
|
1966
|
-
const es_namespaceObject = JSON.parse('{"cell.filter-cell":"Destino objetivo: haga clic para alternar","cell.set-blank":"Marcar como en blanco","cell.set-not-blank":"Marcar como no en blanco","cell.toggle-direction":"Dirección de escritura: haga clic para alternar","common.blanks":"Blancos","common.clear":"Borrar","common.close":"Cerrar","common.consonants":"Consonantes","common.loading":"Cargando","common.points":"Puntos","common.tiles":"Longitud","common.two-letter-tiles":"Dos letras","common.vowels":"Vocales","common.word":"Palabra","common.words":"Palabras","dictionary.empty-state.no-definitions":"La palabra existe en el diccionario pero no tiene una definición.","dictionary.empty-state.no-results":"No se puede encontrar la definición de palabra en el diccionario.","dictionary.empty-state.not-allowed":"Esta palabra no es aceptable.","dictionary.empty-state.uninitialized":"Aquí se mostrará la definición del diccionario de la última palabra resaltada.","dictionary.input.placeholder":"Busca el diccionario...","empty-state.error":"Error","empty-state.info":"Info","empty-state.success":"Sí!","empty-state.warning":"Vaya!","github":"Ver este proyecto en GitHub","keyMap":"Atajos de teclado","keyMap.board":"Tablero","keyMap.board.toggle-blank":"Marcar / desmarcar un espacio en blanco","keyMap.board.toggle-direction":"Alternar dirección de escritura","keyMap.board-and-rack":"Tablero y estante","keyMap.board-and-rack.insert-two-letter-tile":"Insertar mosaico de dos letras","keyMap.board-and-rack.navigate":"Navegar","keyMap.board-and-rack.remove-tile":"Quitar Letra","keyMap.board-and-rack.submit":"Empezar a resolver","keyMap.rack":"Estante","keyMap.rack.insert-blank":"Insertar espacio en blanco (barra espaciadora)","rack.placeholder":"Letras…","remaining-tiles":"Casillas restantes","results.empty-state.no-filtered-results":"Ningún resultado coincide con esta consulta.","results.empty-state.no-results":"No hay resultados; no se pueden generar palabras","results.empty-state.outdated":"Los resultados están desactualizados. Haga clic a continuación para actualizar.","results.empty-state.uninitialized":"Aquí se mostrarán las palabras generadas a partir de sus letras.","results.input.placeholder":"Busque una solución... (RegExp)","results.solve":"Resolver","settings":"Configuración","settings.autoGroupTiles":"Agrupar casillas restantes","settings.autoGroupTiles.left":"A la izquierda","settings.autoGroupTiles.right":"A la derecha","settings.autoGroupTiles.null":"No agrupar","settings.game":"Juego","settings.language":"Idioma","words":"Palabras creadas","words.invalid":"Incorrecto","words.valid":"Correcto"}');
|
|
1967
|
-
;// CONCATENATED MODULE: ./src/i18n/fr.json
|
|
1968
|
-
const fr_namespaceObject = JSON.parse('{"cell.filter-cell":"Destination cible - cliquer pour changer","cell.set-blank":"Marquer comme vide","cell.set-not-blank":"Marquer comme non vide","cell.toggle-direction":"Direction d\'écriture - cliquer pour changer","common.blanks":"Cases vides","common.clear":"Effacer","common.close":"Fermer","common.consonants":"Consonnes","common.loading":"Chargement","common.points":"Points","common.tiles":"Cases","common.two-letter-tiles":"Deux lettres","common.vowels":"Voyelles","common.word":"Mot","common.words":"Mots","dictionary.empty-state.no-definitions":"Le mot existe dans le dictionary mais n\'a pas de définition.","dictionary.empty-state.no-results":"Impossible de trouver une définition pour ce mot dans le dictionaire.","dictionary.empty-state.not-allowed":"Ce mot n\'est pas pas acceptable.","dictionary.empty-state.uninitialized":"La définition dictionaire du dernier mot surligné sera affichée ici.","dictionary.input.placeholder":"Rechercher dans le dictionnaire...","empty-state.error":"Erreur","empty-state.info":"Info","empty-state.success":"Ouais!","empty-state.warning":"Oups!","github":"Voir ce projet sur GitHub","keyMap":"Raccourcis clavier","keyMap.board":"Plateau","keyMap.board.toggle-blank":"Marqué/Démarqué la case en tant que vide","keyMap.board.toggle-direction":"Faire basculer la direction d\'écriture","keyMap.board-and-rack":"Plateau & chevalet","keyMap.board-and-rack.insert-two-letter-tile":"Insérer une tuile de deux lettres","keyMap.board-and-rack.navigate":"Naviguer","keyMap.board-and-rack.remove-tile":"Supprimer une case","keyMap.board-and-rack.submit":"Commencer la résolution","keyMap.rack":"Chevalet","keyMap.rack.insert-blank":"Inserer une case vide (spacebar)","rack.placeholder":"Lettres","remaining-tiles":"Cases restantes","results.empty-state.no-filtered-results":"Aucun résultat ne correspond à cette requête","results.empty-state.no-results":"Pas de résultats - impossible de générer des mots.","results.empty-state.outdated":"Les résultats sont dépassé. Cliquer ci-dessous pour mettre à jour.","results.empty-state.uninitialized":"Words generated from your letters will be shown here.","results.input.placeholder":"Rechercher les résultats... (RegExp)","results.solve":"Résoudre","settings":"Options","settings.autoGroupTiles":"Grouper les cases restantes","settings.autoGroupTiles.left":"Vers la droite","settings.autoGroupTiles.right":"Vers la gauche","settings.autoGroupTiles.null":"Ne pas grouper","settings.game":"Jeu","settings.language":"Langue","words":"Mots créés","words.invalid":"Incorrect","words.valid":"Corriger"}');
|
|
1969
|
-
;// CONCATENATED MODULE: ./src/i18n/pl.json
|
|
1970
|
-
const pl_namespaceObject = JSON.parse('{"cell.filter-cell":"Miejsce docelowe - kliknij aby zmienić","cell.set-blank":"Oznacz jako blank","cell.set-not-blank":"Oznacz jako nie blank","cell.toggle-direction":"Kierunek wpisywania - kliknij aby zmienić","common.blanks":"Blanki","common.clear":"Wyczyść","common.close":"Zamknij","common.consonants":"Spółgłoski","common.loading":"Ładowanie","common.points":"Punkty","common.tiles":"Płytki","common.two-letter-tiles":"Dwuliterowe","common.vowels":"Samogłoski","common.word":"Słowo","common.words":"Słowa","dictionary.empty-state.no-definitions":"Słowo istnieje w słowniku ale nie posiada definicji.","dictionary.empty-state.no-results":"Nie udało się znaleźć definicji słowa w słowniku.","dictionary.empty-state.not-allowed":"To słowo nie jest dopuszczalne w grach.","dictionary.empty-state.uninitialized":"Tu zostanie wyświetlona słownikowa definicja ostatnio podświetlonego słowa.","dictionary.input.placeholder":"Szukaj w słowniku...","empty-state.error":"Błąd","empty-state.info":"Info","empty-state.success":"Hurra!","empty-state.warning":"Ups!","github":"Zobacz ten projekt na GitHubie","keyMap":"Skróty klawiszowe","keyMap.board":"Plansza","keyMap.board.toggle-blank":"Oznacz/odznacz płytkę jako blank","keyMap.board.toggle-direction":"Zmień kierunek wpisywania","keyMap.board-and-rack":"Plansza i stojak","keyMap.board-and-rack.insert-two-letter-tile":"Wstaw dwuliterową płytkę","keyMap.board-and-rack.navigate":"Nawigacja","keyMap.board-and-rack.remove-tile":"Zdejmij płytkę","keyMap.board-and-rack.submit":"Rozpocznij wyszukiwanie","keyMap.rack":"Stojak","keyMap.rack.insert-blank":"Wstaw blanka (spacja)","rack.placeholder":"Literki","remaining-tiles":"Pozostałe płytki","results.empty-state.no-filtered-results":"Żaden wynik nie pasuje do tej kwerendy.","results.empty-state.no-results":"Brak wyników - nie można wygenerować żadnego słowa.","results.empty-state.outdated":"Wyniki są nieaktualne. Kliknij poniżej, aby zaktualizować.","results.empty-state.uninitialized":"Tu zostaną wyświetlone słowa wygenerowane z Twoich liter.","results.input.placeholder":"Szukaj rozwiązania... (RegExp)","results.solve":"Rozwiąż","settings":"Opcje","settings.autoGroupTiles":"Grupuj pozostałe płytki","settings.autoGroupTiles.left":"Po lewej","settings.autoGroupTiles.right":"Po prawej","settings.autoGroupTiles.null":"Nie grupuj","settings.game":"Gra","settings.language":"Język","words":"Utworzone słowa","words.invalid":"Niepoprawne","words.valid":"Poprawne"}');
|
|
1971
|
-
;// CONCATENATED MODULE: ./src/i18n/index.ts
|
|
1972
|
-
|
|
1973
|
-
|
|
1974
|
-
|
|
1975
|
-
|
|
1976
|
-
|
|
1977
|
-
|
|
1978
|
-
const i18n = {
|
|
1979
|
-
[types_build.Locale.DE_DE]: de_namespaceObject,
|
|
1980
|
-
[types_build.Locale.EN_GB]: en_namespaceObject,
|
|
1981
|
-
[types_build.Locale.EN_US]: en_namespaceObject,
|
|
1982
|
-
[types_build.Locale.ES_ES]: es_namespaceObject,
|
|
1983
|
-
[types_build.Locale.FR_FR]: fr_namespaceObject,
|
|
1984
|
-
[types_build.Locale.PL_PL]: pl_namespaceObject
|
|
1985
|
-
};
|
|
1986
|
-
/* harmony default export */ const src_i18n = (i18n);
|
|
1987
|
-
|
|
1988
|
-
// EXTERNAL MODULE: ./src/lib/index.ts + 29 modules
|
|
1989
|
-
var lib = __webpack_require__(75558);
|
|
1990
|
-
;// CONCATENATED MODULE: ./src/state/selectors.ts
|
|
2143
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
2144
|
+
/* harmony export */ "$o": () => (/* binding */ selectConfig),
|
|
2145
|
+
/* harmony export */ "En": () => (/* binding */ selectHasOverusedTiles),
|
|
2146
|
+
/* harmony export */ "HM": () => (/* binding */ selectVerify),
|
|
2147
|
+
/* harmony export */ "Mj": () => (/* binding */ selectAreResultsOutdated),
|
|
2148
|
+
/* harmony export */ "O0": () => (/* binding */ selectCellBonus),
|
|
2149
|
+
/* harmony export */ "Or": () => (/* binding */ selectCharacterPoints),
|
|
2150
|
+
/* harmony export */ "QB": () => (/* binding */ selectRack),
|
|
2151
|
+
/* harmony export */ "QL": () => (/* binding */ selectResultsQuery),
|
|
2152
|
+
/* harmony export */ "R": () => (/* binding */ selectResultsSortColumn),
|
|
2153
|
+
/* harmony export */ "Rn": () => (/* binding */ selectSolveError),
|
|
2154
|
+
/* harmony export */ "Yj": () => (/* binding */ selectRemainingTilesGroups),
|
|
2155
|
+
/* harmony export */ "ZA": () => (/* binding */ selectRowsWithCandidate),
|
|
2156
|
+
/* harmony export */ "ZO": () => (/* binding */ selectBoard),
|
|
2157
|
+
/* harmony export */ "Zf": () => (/* binding */ selectTilePoints),
|
|
2158
|
+
/* harmony export */ "bs": () => (/* binding */ selectHasInvalidWords),
|
|
2159
|
+
/* harmony export */ "dN": () => (/* binding */ selectSortedFilteredResults),
|
|
2160
|
+
/* harmony export */ "f2": () => (/* binding */ selectSortedResults),
|
|
2161
|
+
/* harmony export */ "fN": () => (/* binding */ selectLocale),
|
|
2162
|
+
/* harmony export */ "id": () => (/* binding */ selectCellIsFiltered),
|
|
2163
|
+
/* harmony export */ "lP": () => (/* binding */ selectLocaleAutoGroupTiles),
|
|
2164
|
+
/* harmony export */ "mK": () => (/* binding */ selectDictionaryError),
|
|
2165
|
+
/* harmony export */ "md": () => (/* binding */ selectConfigId),
|
|
2166
|
+
/* harmony export */ "nb": () => (/* binding */ selectTranslations),
|
|
2167
|
+
/* harmony export */ "sH": () => (/* binding */ selectResultsSortDirection),
|
|
2168
|
+
/* harmony export */ "uz": () => (/* binding */ selectAutoGroupTiles),
|
|
2169
|
+
/* harmony export */ "w1": () => (/* binding */ selectDictionary),
|
|
2170
|
+
/* harmony export */ "xU": () => (/* binding */ selectIsLoading),
|
|
2171
|
+
/* harmony export */ "yp": () => (/* binding */ selectCharacters),
|
|
2172
|
+
/* harmony export */ "z$": () => (/* binding */ selectResultCandidateTiles)
|
|
2173
|
+
/* harmony export */ });
|
|
2174
|
+
/* unused harmony exports selectCellFilter, selectResults, selectResultCandidate, selectResultCandidateCells, selectTranslation, selectLastSolvedParameters, selectHaveCharactersChanged, selectHasBoardChanged, selectRemainingTiles */
|
|
2175
|
+
/* harmony import */ var _reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(75184);
|
|
2176
|
+
/* harmony import */ var _reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__);
|
|
2177
|
+
/* harmony import */ var _scrabble_solver_configs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(89418);
|
|
2178
|
+
/* harmony import */ var _scrabble_solver_configs__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_scrabble_solver_configs__WEBPACK_IMPORTED_MODULE_1__);
|
|
2179
|
+
/* harmony import */ var _scrabble_solver_types__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(34046);
|
|
2180
|
+
/* harmony import */ var _scrabble_solver_types__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_scrabble_solver_types__WEBPACK_IMPORTED_MODULE_2__);
|
|
2181
|
+
/* harmony import */ var i18n__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(43898);
|
|
2182
|
+
/* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(30459);
|
|
1991
2183
|
|
|
1992
2184
|
|
|
1993
2185
|
|
|
@@ -2006,49 +2198,59 @@ const selectSettingsRoot = (state)=>state.settings;
|
|
|
2006
2198
|
const selectSolveRoot = (state)=>state.solve;
|
|
2007
2199
|
const selectVerifyRoot = (state)=>state.verify;
|
|
2008
2200
|
const selectDictionary = selectDictionaryRoot;
|
|
2009
|
-
const selectDictionaryError = (0,
|
|
2201
|
+
const selectDictionaryError = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
|
|
2010
2202
|
selectDictionaryRoot
|
|
2011
2203
|
], (dictionary)=>{
|
|
2012
|
-
return (0,
|
|
2204
|
+
return (0,_scrabble_solver_types__WEBPACK_IMPORTED_MODULE_2__.isError)(dictionary.error) ? dictionary.error : undefined;
|
|
2013
2205
|
});
|
|
2014
|
-
const
|
|
2206
|
+
const selectLocale = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
|
|
2207
|
+
selectSettingsRoot
|
|
2208
|
+
], (settings)=>settings.locale);
|
|
2209
|
+
const selectAutoGroupTiles = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
|
|
2015
2210
|
selectSettingsRoot
|
|
2016
2211
|
], (settings)=>settings.autoGroupTiles);
|
|
2017
|
-
const
|
|
2212
|
+
const selectLocaleAutoGroupTiles = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
|
|
2213
|
+
selectLocale,
|
|
2018
2214
|
selectSettingsRoot
|
|
2019
|
-
], (settings)=>
|
|
2215
|
+
], (locale, settings)=>{
|
|
2216
|
+
if (i18n__WEBPACK_IMPORTED_MODULE_3__/* .LOCALE_FEATURES */ .q[locale].direction === "ltr" || settings.autoGroupTiles === null) {
|
|
2217
|
+
return settings.autoGroupTiles;
|
|
2218
|
+
}
|
|
2219
|
+
return settings.autoGroupTiles === "left" ? "right" : "left";
|
|
2220
|
+
});
|
|
2020
2221
|
const selectBoard = selectBoardRoot;
|
|
2021
|
-
const selectConfigId = (0,
|
|
2222
|
+
const selectConfigId = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
|
|
2022
2223
|
selectSettingsRoot
|
|
2023
2224
|
], (settings)=>settings.configId);
|
|
2024
|
-
const selectConfig = (0,
|
|
2225
|
+
const selectConfig = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
|
|
2025
2226
|
selectConfigId,
|
|
2026
2227
|
selectLocale
|
|
2027
|
-
],
|
|
2228
|
+
], _scrabble_solver_configs__WEBPACK_IMPORTED_MODULE_1__.getLocaleConfig);
|
|
2028
2229
|
const selectCellFilter = selectCellFilterRoot;
|
|
2029
|
-
const selectCellIsFiltered = (0,
|
|
2230
|
+
const selectCellIsFiltered = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
|
|
2030
2231
|
selectCellFilter,
|
|
2031
2232
|
selectPoint
|
|
2032
2233
|
], (cellFilter, { x , y })=>{
|
|
2033
2234
|
return cellFilter.some((cell)=>cell.x === x && cell.y === y);
|
|
2034
2235
|
});
|
|
2035
|
-
const selectResults = (0,
|
|
2236
|
+
const selectResults = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
|
|
2036
2237
|
selectResultsRoot
|
|
2037
2238
|
], (results)=>results.results);
|
|
2038
|
-
const selectResultsQuery = (0,
|
|
2239
|
+
const selectResultsQuery = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
|
|
2039
2240
|
selectResultsRoot
|
|
2040
2241
|
], (results)=>results.query);
|
|
2041
|
-
const selectResultsSortColumn = (0,
|
|
2242
|
+
const selectResultsSortColumn = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
|
|
2042
2243
|
selectResultsRoot
|
|
2043
2244
|
], (results)=>results.sort.column);
|
|
2044
|
-
const selectResultsSortDirection = (0,
|
|
2245
|
+
const selectResultsSortDirection = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
|
|
2045
2246
|
selectResultsRoot
|
|
2046
2247
|
], (results)=>results.sort.direction);
|
|
2047
|
-
const selectSortedResults = (0,
|
|
2248
|
+
const selectSortedResults = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
|
|
2048
2249
|
selectResults,
|
|
2049
2250
|
selectResultsSortColumn,
|
|
2050
|
-
selectResultsSortDirection
|
|
2051
|
-
|
|
2251
|
+
selectResultsSortDirection,
|
|
2252
|
+
selectLocale
|
|
2253
|
+
], lib__WEBPACK_IMPORTED_MODULE_4__/* .sortResults */ .uj);
|
|
2052
2254
|
const filterResultsByQuery = (results, query)=>{
|
|
2053
2255
|
if (query.trim().length === 0) {
|
|
2054
2256
|
return results;
|
|
@@ -2064,7 +2266,7 @@ const filterResultsByQuery = (results, query)=>{
|
|
|
2064
2266
|
return regExp.test(result.word);
|
|
2065
2267
|
});
|
|
2066
2268
|
};
|
|
2067
|
-
const selectSortedFilteredResults = (0,
|
|
2269
|
+
const selectSortedFilteredResults = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
|
|
2068
2270
|
selectSortedResults,
|
|
2069
2271
|
selectResultsQuery,
|
|
2070
2272
|
selectCellFilter
|
|
@@ -2080,43 +2282,43 @@ const selectSortedFilteredResults = (0,toolkit_.createSelector)([
|
|
|
2080
2282
|
return cellFilter.every(({ x , y })=>result.cells.some((cell)=>cell.x === x && cell.y === y));
|
|
2081
2283
|
});
|
|
2082
2284
|
});
|
|
2083
|
-
const selectResultCandidate = (0,
|
|
2285
|
+
const selectResultCandidate = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
|
|
2084
2286
|
selectResultsRoot
|
|
2085
2287
|
], (results)=>results.candidate);
|
|
2086
|
-
const selectResultCandidateCells = (0,
|
|
2288
|
+
const selectResultCandidateCells = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
|
|
2087
2289
|
selectResultCandidate
|
|
2088
2290
|
], (resultCandidate)=>resultCandidate?.cells || []);
|
|
2089
|
-
const selectResultCandidateTiles = (0,
|
|
2291
|
+
const selectResultCandidateTiles = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
|
|
2090
2292
|
selectResultCandidate
|
|
2091
2293
|
], (resultCandidate)=>resultCandidate?.tiles || []);
|
|
2092
|
-
const selectRowsWithCandidate = (0,
|
|
2294
|
+
const selectRowsWithCandidate = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
|
|
2093
2295
|
selectBoardRoot,
|
|
2094
2296
|
selectResultCandidateCells
|
|
2095
2297
|
], (board, cells)=>{
|
|
2096
|
-
return board.rows.map((row, y)=>row.map((cell, x)=>(0,
|
|
2298
|
+
return board.rows.map((row, y)=>row.map((cell, x)=>(0,lib__WEBPACK_IMPORTED_MODULE_4__/* .findCell */ .Jp)(cells, x, y) || cell));
|
|
2097
2299
|
});
|
|
2098
|
-
const selectCellBonus = (0,
|
|
2300
|
+
const selectCellBonus = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
|
|
2099
2301
|
selectConfig,
|
|
2100
2302
|
selectCell
|
|
2101
2303
|
], (config, cell)=>{
|
|
2102
2304
|
return config.getCellBonus(cell);
|
|
2103
2305
|
});
|
|
2104
|
-
const selectCharacterPoints = (0,
|
|
2306
|
+
const selectCharacterPoints = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
|
|
2105
2307
|
selectConfig,
|
|
2106
2308
|
selectCharacter
|
|
2107
2309
|
], (config, character)=>{
|
|
2108
2310
|
return config.getCharacterPoints(character);
|
|
2109
2311
|
});
|
|
2110
|
-
const selectTilePoints = (0,
|
|
2312
|
+
const selectTilePoints = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
|
|
2111
2313
|
selectConfig,
|
|
2112
2314
|
selectTile
|
|
2113
2315
|
], (config, tile)=>{
|
|
2114
2316
|
return config.getTilePoints(tile);
|
|
2115
2317
|
});
|
|
2116
|
-
const selectTranslations = (0,
|
|
2318
|
+
const selectTranslations = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
|
|
2117
2319
|
selectLocale
|
|
2118
|
-
], (locale)=>
|
|
2119
|
-
const selectTranslation = (0,
|
|
2320
|
+
], (locale)=>i18n__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z[locale]);
|
|
2321
|
+
const selectTranslation = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
|
|
2120
2322
|
selectTranslations,
|
|
2121
2323
|
selectLocale,
|
|
2122
2324
|
(_, id)=>id
|
|
@@ -2128,47 +2330,49 @@ const selectTranslation = (0,toolkit_.createSelector)([
|
|
|
2128
2330
|
return translation;
|
|
2129
2331
|
});
|
|
2130
2332
|
const selectRack = selectRackRoot;
|
|
2131
|
-
const selectCharacters = (0,
|
|
2132
|
-
const selectLastSolvedParameters = (0,
|
|
2333
|
+
const selectCharacters = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)(selectRackRoot, (rack)=>rack.filter((tile)=>tile !== null));
|
|
2334
|
+
const selectLastSolvedParameters = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
|
|
2133
2335
|
selectSolveRoot
|
|
2134
2336
|
], (solve)=>solve.lastSolvedParameters);
|
|
2135
|
-
const selectIsLoading = (0,
|
|
2337
|
+
const selectIsLoading = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
|
|
2136
2338
|
selectSolveRoot
|
|
2137
2339
|
], (solve)=>solve.isLoading);
|
|
2138
|
-
const selectSolveError = (0,
|
|
2340
|
+
const selectSolveError = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
|
|
2139
2341
|
selectSolveRoot
|
|
2140
2342
|
], (solve)=>{
|
|
2141
|
-
return (0,
|
|
2343
|
+
return (0,_scrabble_solver_types__WEBPACK_IMPORTED_MODULE_2__.isError)(solve.error) ? solve.error : undefined;
|
|
2142
2344
|
});
|
|
2143
|
-
const selectHaveCharactersChanged = (0,
|
|
2345
|
+
const selectHaveCharactersChanged = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
|
|
2144
2346
|
selectLastSolvedParameters,
|
|
2145
|
-
selectCharacters
|
|
2146
|
-
|
|
2147
|
-
|
|
2347
|
+
selectCharacters,
|
|
2348
|
+
selectLocale
|
|
2349
|
+
], (lastSolvedParameters, characters, locale)=>{
|
|
2350
|
+
return !(0,lib__WEBPACK_IMPORTED_MODULE_4__/* .unorderedArraysEqual */ .DR)(lastSolvedParameters.characters, characters, locale);
|
|
2148
2351
|
});
|
|
2149
|
-
const selectHasBoardChanged = (0,
|
|
2352
|
+
const selectHasBoardChanged = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
|
|
2150
2353
|
selectLastSolvedParameters,
|
|
2151
2354
|
selectBoardRoot
|
|
2152
2355
|
], (lastSolvedParameters, board)=>!lastSolvedParameters.board.equals(board));
|
|
2153
|
-
const selectAreResultsOutdated = (0,
|
|
2356
|
+
const selectAreResultsOutdated = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
|
|
2154
2357
|
selectHasBoardChanged,
|
|
2155
2358
|
selectHaveCharactersChanged
|
|
2156
2359
|
], (hasBoardChanged, haveCharactersChanged)=>hasBoardChanged || haveCharactersChanged);
|
|
2157
|
-
const selectRemainingTiles = (0,
|
|
2360
|
+
const selectRemainingTiles = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
|
|
2158
2361
|
selectConfig,
|
|
2159
2362
|
selectBoardRoot,
|
|
2160
|
-
selectCharacters
|
|
2161
|
-
|
|
2162
|
-
|
|
2363
|
+
selectCharacters,
|
|
2364
|
+
selectLocale
|
|
2365
|
+
], lib__WEBPACK_IMPORTED_MODULE_4__/* .getRemainingTiles */ .ZM);
|
|
2366
|
+
const selectHasOverusedTiles = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
|
|
2163
2367
|
selectRemainingTiles
|
|
2164
2368
|
], (remainingTiles)=>{
|
|
2165
2369
|
return remainingTiles.some(({ count , usedCount })=>usedCount > count);
|
|
2166
2370
|
});
|
|
2167
|
-
const selectRemainingTilesGroups = (0,
|
|
2371
|
+
const selectRemainingTilesGroups = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
|
|
2168
2372
|
selectRemainingTiles
|
|
2169
|
-
],
|
|
2373
|
+
], lib__WEBPACK_IMPORTED_MODULE_4__/* .getRemainingTilesGroups */ .op);
|
|
2170
2374
|
const selectVerify = selectVerifyRoot;
|
|
2171
|
-
const selectHasInvalidWords = (0,
|
|
2375
|
+
const selectHasInvalidWords = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
|
|
2172
2376
|
selectVerify
|
|
2173
2377
|
], ({ invalidWords })=>{
|
|
2174
2378
|
return invalidWords.length > 0;
|
|
@@ -2387,7 +2591,7 @@ const dictionarySlice = (0,toolkit_.createSlice)({
|
|
|
2387
2591
|
/* harmony default export */ const slices_dictionarySlice = (dictionarySlice);
|
|
2388
2592
|
|
|
2389
2593
|
// EXTERNAL MODULE: ./src/lib/index.ts + 29 modules
|
|
2390
|
-
var lib = __webpack_require__(
|
|
2594
|
+
var lib = __webpack_require__(30459);
|
|
2391
2595
|
;// CONCATENATED MODULE: ./src/state/slices/rackInitialState.ts
|
|
2392
2596
|
const rackInitialState = [
|
|
2393
2597
|
null,
|
|
@@ -2683,7 +2887,7 @@ const verifySlice = (0,toolkit_.createSlice)({
|
|
|
2683
2887
|
/* harmony export */ });
|
|
2684
2888
|
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
|
|
2685
2889
|
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
|
|
2686
|
-
/* harmony import */ var _selectors__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(
|
|
2890
|
+
/* harmony import */ var _selectors__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(40897);
|
|
2687
2891
|
/* harmony import */ var _useTypedSelector__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(53872);
|
|
2688
2892
|
|
|
2689
2893
|
|
|
@@ -3239,6 +3443,7 @@ var Locale;
|
|
|
3239
3443
|
Locale["EN_GB"] = "en-GB";
|
|
3240
3444
|
Locale["EN_US"] = "en-US";
|
|
3241
3445
|
Locale["ES_ES"] = "es-ES";
|
|
3446
|
+
Locale["FA_IR"] = "fa-IR";
|
|
3242
3447
|
Locale["FR_FR"] = "fr-FR";
|
|
3243
3448
|
Locale["PL_PL"] = "pl-PL";
|
|
3244
3449
|
})(Locale || (Locale = {}));
|
|
@@ -3328,7 +3533,6 @@ class Result {
|
|
|
3328
3533
|
this.points = points;
|
|
3329
3534
|
this.pointsRatio = getPointsRatio(tiles, points);
|
|
3330
3535
|
this.tiles = tiles;
|
|
3331
|
-
this.tilesCharacters = getTilesCharacters(tiles);
|
|
3332
3536
|
this.tilesCount = tiles.length;
|
|
3333
3537
|
this.vowelsCount = getVowels(tiles).length;
|
|
3334
3538
|
this.word = getWord(cells);
|
|
@@ -3352,15 +3556,11 @@ class Result {
|
|
|
3352
3556
|
};
|
|
3353
3557
|
}
|
|
3354
3558
|
}
|
|
3355
|
-
const charactersComparator = (a, b) => a.localeCompare(b);
|
|
3356
3559
|
const getBlanks = (tiles) => tiles.filter(({ isBlank }) => isBlank);
|
|
3357
3560
|
const getConsonants = (tiles) => tiles.filter(isConsonant);
|
|
3358
3561
|
const getVowels = (tiles) => tiles.filter(isVowel);
|
|
3359
|
-
const getNonBlankCharacters = (tiles) => getNonBlanks(tiles).map(({ character }) => character);
|
|
3360
|
-
const getNonBlanks = (tiles) => tiles.filter(({ isBlank }) => !isBlank);
|
|
3361
3562
|
const getPointsRatio = (tiles, points) => points / tiles.length;
|
|
3362
3563
|
const getTiles = (cells) => cells.filter(({ isEmpty }) => isEmpty).map(({ tile }) => tile);
|
|
3363
|
-
const getTilesCharacters = (tiles) => getNonBlankCharacters(tiles).sort(charactersComparator).join('');
|
|
3364
3564
|
// eslint-disable-next-line prefer-template
|
|
3365
3565
|
const getWord = (cells) => cells.reduce((word, cell) => word + cell.toString(), '');
|
|
3366
3566
|
const getWords = (cells, collisions) => [cells, ...collisions].map(getWord);
|