@scrabble-solver/word-lists 2.13.4 → 2.13.5-alpha.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/build/getWordList.d.ts +1 -2
- package/build/getWordList.js +11 -20
- package/build/index.d.ts +2 -6
- package/build/index.js +3 -15
- package/build/languages/english.d.ts +2 -0
- package/build/languages/english.js +15 -0
- package/build/languages/french.d.ts +1 -0
- package/build/languages/french.js +11 -0
- package/build/languages/german.d.ts +1 -0
- package/build/languages/german.js +10 -0
- package/build/languages/index.d.ts +7 -0
- package/build/languages/index.js +33 -0
- package/build/languages/persian.d.ts +1 -0
- package/build/languages/persian.js +10 -0
- package/build/languages/polish.d.ts +1 -0
- package/build/languages/polish.js +42 -0
- package/build/languages/romanian.d.ts +1 -0
- package/build/languages/romanian.js +11 -0
- package/build/languages/spanish.d.ts +1 -0
- package/build/languages/spanish.js +19 -0
- package/package.json +3 -3
- package/src/getWordList.ts +10 -19
- package/src/index.ts +2 -6
- package/src/languages/english.ts +14 -0
- package/src/{getFrFrWordList.ts → languages/french.ts} +2 -4
- package/src/{getDeDeWordList.ts → languages/german.ts} +2 -4
- package/src/languages/index.ts +7 -0
- package/src/{getFaIrWordList.ts → languages/persian.ts} +2 -4
- package/src/{getPlPlWordList.ts → languages/polish.ts} +2 -4
- package/src/{getRoRoWordList.ts → languages/romanian.ts} +2 -4
- package/src/{getEsEsWordList.ts → languages/spanish.ts} +2 -4
- package/src/getEnGbWordList.ts +0 -11
- package/src/getEnUsWordList.ts +0 -11
package/build/getWordList.d.ts
CHANGED
package/build/getWordList.js
CHANGED
|
@@ -1,26 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getWordList = void 0;
|
|
6
4
|
const types_1 = require("@scrabble-solver/types");
|
|
7
|
-
const
|
|
8
|
-
const getEnGbWordList_1 = __importDefault(require("./getEnGbWordList"));
|
|
9
|
-
const getEnUsWordList_1 = __importDefault(require("./getEnUsWordList"));
|
|
10
|
-
const getEsEsWordList_1 = __importDefault(require("./getEsEsWordList"));
|
|
11
|
-
const getFaIrWordList_1 = __importDefault(require("./getFaIrWordList"));
|
|
12
|
-
const getFrFrWordList_1 = __importDefault(require("./getFrFrWordList"));
|
|
13
|
-
const getPlPlWordList_1 = __importDefault(require("./getPlPlWordList"));
|
|
14
|
-
const getRoRoWordList_1 = __importDefault(require("./getRoRoWordList"));
|
|
5
|
+
const languages_1 = require("./languages");
|
|
15
6
|
const localeMap = {
|
|
16
|
-
[types_1.Locale.DE_DE]:
|
|
17
|
-
[types_1.Locale.EN_GB]:
|
|
18
|
-
[types_1.Locale.EN_US]:
|
|
19
|
-
[types_1.Locale.ES_ES]:
|
|
20
|
-
[types_1.Locale.FA_IR]:
|
|
21
|
-
[types_1.Locale.FR_FR]:
|
|
22
|
-
[types_1.Locale.PL_PL]:
|
|
23
|
-
[types_1.Locale.RO_RO]:
|
|
7
|
+
[types_1.Locale.DE_DE]: languages_1.german.getWordList,
|
|
8
|
+
[types_1.Locale.EN_GB]: languages_1.english.getWordListGb,
|
|
9
|
+
[types_1.Locale.EN_US]: languages_1.english.getWordListUs,
|
|
10
|
+
[types_1.Locale.ES_ES]: languages_1.spanish.getWordList,
|
|
11
|
+
[types_1.Locale.FA_IR]: languages_1.persian.getWordList,
|
|
12
|
+
[types_1.Locale.FR_FR]: languages_1.french.getWordList,
|
|
13
|
+
[types_1.Locale.PL_PL]: languages_1.polish.getWordList,
|
|
14
|
+
[types_1.Locale.RO_RO]: languages_1.romanian.getWordList,
|
|
24
15
|
};
|
|
25
16
|
const getWordList = (locale) => localeMap[locale]();
|
|
26
|
-
exports.
|
|
17
|
+
exports.getWordList = getWordList;
|
package/build/index.d.ts
CHANGED
|
@@ -1,7 +1,3 @@
|
|
|
1
|
-
export {
|
|
2
|
-
export
|
|
3
|
-
export { default as getFrFrWordList } from './getFrFrWordList';
|
|
4
|
-
export { default as getPlPlWordList } from './getPlPlWordList';
|
|
5
|
-
export { default as getDeDeWordList } from './getDeDeWordList';
|
|
6
|
-
export { default as getWordList } from './getWordList';
|
|
1
|
+
export { getWordList } from './getWordList';
|
|
2
|
+
export * from './languages';
|
|
7
3
|
export * from './lib';
|
package/build/index.js
CHANGED
|
@@ -13,21 +13,9 @@ var __createBinding = (this && this.__createBinding) || (Object.create ? (functi
|
|
|
13
13
|
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
17
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
18
|
-
};
|
|
19
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
-
exports.getWordList =
|
|
21
|
-
var getEnUsWordList_1 = require("./getEnUsWordList");
|
|
22
|
-
Object.defineProperty(exports, "getEnUsWordList", { enumerable: true, get: function () { return __importDefault(getEnUsWordList_1).default; } });
|
|
23
|
-
var getEnGbWordList_1 = require("./getEnGbWordList");
|
|
24
|
-
Object.defineProperty(exports, "getEnGbWordList", { enumerable: true, get: function () { return __importDefault(getEnGbWordList_1).default; } });
|
|
25
|
-
var getFrFrWordList_1 = require("./getFrFrWordList");
|
|
26
|
-
Object.defineProperty(exports, "getFrFrWordList", { enumerable: true, get: function () { return __importDefault(getFrFrWordList_1).default; } });
|
|
27
|
-
var getPlPlWordList_1 = require("./getPlPlWordList");
|
|
28
|
-
Object.defineProperty(exports, "getPlPlWordList", { enumerable: true, get: function () { return __importDefault(getPlPlWordList_1).default; } });
|
|
29
|
-
var getDeDeWordList_1 = require("./getDeDeWordList");
|
|
30
|
-
Object.defineProperty(exports, "getDeDeWordList", { enumerable: true, get: function () { return __importDefault(getDeDeWordList_1).default; } });
|
|
17
|
+
exports.getWordList = void 0;
|
|
31
18
|
var getWordList_1 = require("./getWordList");
|
|
32
|
-
Object.defineProperty(exports, "getWordList", { enumerable: true, get: function () { return
|
|
19
|
+
Object.defineProperty(exports, "getWordList", { enumerable: true, get: function () { return getWordList_1.getWordList; } });
|
|
20
|
+
__exportStar(require("./languages"), exports);
|
|
33
21
|
__exportStar(require("./lib"), exports);
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getWordListUs = exports.getWordListGb = void 0;
|
|
4
|
+
const types_1 = require("@scrabble-solver/types");
|
|
5
|
+
const lib_1 = require("../lib");
|
|
6
|
+
const EN_GB_FILE_URL = 'https://www.wordgamedictionary.com/sowpods/download/sowpods.txt';
|
|
7
|
+
const EN_US_FILE_URL = 'https://www.wordgamedictionary.com/twl06/download/twl06.txt';
|
|
8
|
+
const getWordListGb = async () => {
|
|
9
|
+
return (0, lib_1.getTxtWordList)(EN_GB_FILE_URL, types_1.Locale.EN_GB);
|
|
10
|
+
};
|
|
11
|
+
exports.getWordListGb = getWordListGb;
|
|
12
|
+
const getWordListUs = async () => {
|
|
13
|
+
return (0, lib_1.getTxtWordList)(EN_US_FILE_URL, types_1.Locale.EN_US);
|
|
14
|
+
};
|
|
15
|
+
exports.getWordListUs = getWordListUs;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const getWordList: () => Promise<string[]>;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getWordList = void 0;
|
|
4
|
+
const types_1 = require("@scrabble-solver/types");
|
|
5
|
+
const lib_1 = require("../lib");
|
|
6
|
+
const FILE_URL = 'https://raw.githubusercontent.com/Thecoolsim/French-Scrabble-ODS8/main/French%20ODS%20dictionary.txt';
|
|
7
|
+
const getWordList = async () => {
|
|
8
|
+
const words = await (0, lib_1.getTxtWordList)(FILE_URL, types_1.Locale.FR_FR);
|
|
9
|
+
return (0, lib_1.latinizeDiacritics)(words);
|
|
10
|
+
};
|
|
11
|
+
exports.getWordList = getWordList;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const getWordList: () => Promise<string[]>;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getWordList = void 0;
|
|
4
|
+
const types_1 = require("@scrabble-solver/types");
|
|
5
|
+
const lib_1 = require("../lib");
|
|
6
|
+
const FILE_URL = 'https://raw.githubusercontent.com/hippler/german-wordlist/master/words.txt';
|
|
7
|
+
const getWordList = async () => {
|
|
8
|
+
return (0, lib_1.getTxtWordList)(FILE_URL, types_1.Locale.DE_DE);
|
|
9
|
+
};
|
|
10
|
+
exports.getWordList = getWordList;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export * as english from './english';
|
|
2
|
+
export * as german from './german';
|
|
3
|
+
export * as french from './french';
|
|
4
|
+
export * as persian from './persian';
|
|
5
|
+
export * as polish from './polish';
|
|
6
|
+
export * as romanian from './romanian';
|
|
7
|
+
export * as spanish from './spanish';
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.spanish = exports.romanian = exports.polish = exports.persian = exports.french = exports.german = exports.english = void 0;
|
|
27
|
+
exports.english = __importStar(require("./english"));
|
|
28
|
+
exports.german = __importStar(require("./german"));
|
|
29
|
+
exports.french = __importStar(require("./french"));
|
|
30
|
+
exports.persian = __importStar(require("./persian"));
|
|
31
|
+
exports.polish = __importStar(require("./polish"));
|
|
32
|
+
exports.romanian = __importStar(require("./romanian"));
|
|
33
|
+
exports.spanish = __importStar(require("./spanish"));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const getWordList: () => Promise<string[]>;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getWordList = void 0;
|
|
4
|
+
const types_1 = require("@scrabble-solver/types");
|
|
5
|
+
const lib_1 = require("../lib");
|
|
6
|
+
const FILE_URL = 'https://raw.githubusercontent.com/MansourM/persian-to-persian-dictionary/main/moein/words.txt';
|
|
7
|
+
const getWordList = async () => {
|
|
8
|
+
return (0, lib_1.getTxtWordList)(FILE_URL, types_1.Locale.FA_IR);
|
|
9
|
+
};
|
|
10
|
+
exports.getWordList = getWordList;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const getWordList: () => Promise<string[]>;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.getWordList = void 0;
|
|
7
|
+
const cheerio_1 = require("cheerio");
|
|
8
|
+
const fs_1 = __importDefault(require("fs"));
|
|
9
|
+
const url_1 = require("url");
|
|
10
|
+
const lib_1 = require("../lib");
|
|
11
|
+
const PAGE_URL = 'https://sjp.pl/sl/growy/';
|
|
12
|
+
const FILE_TO_EXTRACT_FROM_ZIP = 'slowa.txt';
|
|
13
|
+
const getWordList = async () => {
|
|
14
|
+
const tempFilepath = (0, lib_1.getTempFilepath)();
|
|
15
|
+
const zipUrl = await fetchZipUrl(PAGE_URL);
|
|
16
|
+
const zipTempFilename = await (0, lib_1.downloadFile)(zipUrl);
|
|
17
|
+
await (0, lib_1.unzip)(zipTempFilename, FILE_TO_EXTRACT_FROM_ZIP, tempFilepath);
|
|
18
|
+
fs_1.default.unlinkSync(zipTempFilename);
|
|
19
|
+
const file = fs_1.default.readFileSync(tempFilepath, 'utf-8');
|
|
20
|
+
fs_1.default.unlinkSync(tempFilepath);
|
|
21
|
+
const words = (0, lib_1.extractWords)(file.toLocaleString(), 'pl-PL');
|
|
22
|
+
return words;
|
|
23
|
+
};
|
|
24
|
+
exports.getWordList = getWordList;
|
|
25
|
+
const fetchZipUrl = async (url) => {
|
|
26
|
+
const html = await (0, lib_1.downloadHtml)(url);
|
|
27
|
+
const filename = await parseZipContainingPage(html);
|
|
28
|
+
const { href } = new url_1.URL(filename, url);
|
|
29
|
+
return href;
|
|
30
|
+
};
|
|
31
|
+
const parseZipContainingPage = (html) => {
|
|
32
|
+
const $ = (0, cheerio_1.load)(html);
|
|
33
|
+
const $links = $('a');
|
|
34
|
+
const links = Array.from($links)
|
|
35
|
+
.map((link) => $(link).attr('href'))
|
|
36
|
+
.filter(Boolean);
|
|
37
|
+
const zipFilename = links.find((link) => link.endsWith('.zip'));
|
|
38
|
+
if (typeof zipFilename === 'undefined') {
|
|
39
|
+
throw new Error('Cannot find link to zip file on the page');
|
|
40
|
+
}
|
|
41
|
+
return zipFilename;
|
|
42
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const getWordList: () => Promise<string[]>;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getWordList = void 0;
|
|
4
|
+
const types_1 = require("@scrabble-solver/types");
|
|
5
|
+
const lib_1 = require("../lib");
|
|
6
|
+
const FILE_URL = 'https://raw.githubusercontent.com/kamilmielnik/scrabble-dictionaries/master/romanian/loc-5.0.txt';
|
|
7
|
+
const getWordList = async () => {
|
|
8
|
+
const words = await (0, lib_1.getTxtWordList)(FILE_URL, types_1.Locale.RO_RO);
|
|
9
|
+
return (0, lib_1.latinizeDiacritics)(words);
|
|
10
|
+
};
|
|
11
|
+
exports.getWordList = getWordList;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const getWordList: () => Promise<string[]>;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.getWordList = void 0;
|
|
7
|
+
const types_1 = require("@scrabble-solver/types");
|
|
8
|
+
const latinize_1 = __importDefault(require("latinize"));
|
|
9
|
+
const lib_1 = require("../lib");
|
|
10
|
+
const FILE_URL = 'https://raw.githubusercontent.com/kamilmielnik/scrabble-dictionaries/master/spanish/fise-2.txt';
|
|
11
|
+
const N_PLACEHOLDER = '---n---';
|
|
12
|
+
const getWordList = async () => {
|
|
13
|
+
const words = await (0, lib_1.getTxtWordList)(FILE_URL, types_1.Locale.ES_ES);
|
|
14
|
+
return words
|
|
15
|
+
.map((word) => word.replaceAll('ñ', N_PLACEHOLDER))
|
|
16
|
+
.map(latinize_1.default)
|
|
17
|
+
.map((word) => word.replaceAll(N_PLACEHOLDER, 'ñ'));
|
|
18
|
+
};
|
|
19
|
+
exports.getWordList = getWordList;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@scrabble-solver/word-lists",
|
|
3
|
-
"version": "2.13.
|
|
3
|
+
"version": "2.13.5-alpha.1",
|
|
4
4
|
"description": "Scrabble Solver 2 - Word lists",
|
|
5
5
|
"main": "build/index.js",
|
|
6
6
|
"types": "build/index.d.ts",
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
"clean": "rimraf build/"
|
|
24
24
|
},
|
|
25
25
|
"dependencies": {
|
|
26
|
-
"@scrabble-solver/types": "^2.13.
|
|
26
|
+
"@scrabble-solver/types": "^2.13.5-alpha.1",
|
|
27
27
|
"cheerio": "^1.0.0-rc.12",
|
|
28
28
|
"follow-redirects": "^1.15.5",
|
|
29
29
|
"latinize": "^1.0.0",
|
|
@@ -34,5 +34,5 @@
|
|
|
34
34
|
"@types/latinize": "^0.2.18",
|
|
35
35
|
"@types/unzipper": "^0.10.9"
|
|
36
36
|
},
|
|
37
|
-
"gitHead": "
|
|
37
|
+
"gitHead": "0843db4c5016829979718054193926bf71d67038"
|
|
38
38
|
}
|
package/src/getWordList.ts
CHANGED
|
@@ -1,25 +1,16 @@
|
|
|
1
1
|
import { Locale } from '@scrabble-solver/types';
|
|
2
2
|
|
|
3
|
-
import
|
|
4
|
-
import getEnGbWordList from './getEnGbWordList';
|
|
5
|
-
import getEnUsWordList from './getEnUsWordList';
|
|
6
|
-
import getEsEsWordList from './getEsEsWordList';
|
|
7
|
-
import getFaIrWordList from './getFaIrWordList';
|
|
8
|
-
import getFrFrWordList from './getFrFrWordList';
|
|
9
|
-
import getPlPlWordList from './getPlPlWordList';
|
|
10
|
-
import getRoRoWordList from './getRoRoWordList';
|
|
3
|
+
import { english, french, german, persian, polish, romanian, spanish } from './languages';
|
|
11
4
|
|
|
12
5
|
const localeMap: Record<Locale, () => Promise<string[]>> = {
|
|
13
|
-
[Locale.DE_DE]:
|
|
14
|
-
[Locale.EN_GB]:
|
|
15
|
-
[Locale.EN_US]:
|
|
16
|
-
[Locale.ES_ES]:
|
|
17
|
-
[Locale.FA_IR]:
|
|
18
|
-
[Locale.FR_FR]:
|
|
19
|
-
[Locale.PL_PL]:
|
|
20
|
-
[Locale.RO_RO]:
|
|
6
|
+
[Locale.DE_DE]: german.getWordList,
|
|
7
|
+
[Locale.EN_GB]: english.getWordListGb,
|
|
8
|
+
[Locale.EN_US]: english.getWordListUs,
|
|
9
|
+
[Locale.ES_ES]: spanish.getWordList,
|
|
10
|
+
[Locale.FA_IR]: persian.getWordList,
|
|
11
|
+
[Locale.FR_FR]: french.getWordList,
|
|
12
|
+
[Locale.PL_PL]: polish.getWordList,
|
|
13
|
+
[Locale.RO_RO]: romanian.getWordList,
|
|
21
14
|
};
|
|
22
15
|
|
|
23
|
-
const getWordList = (locale: Locale): Promise<string[]> => localeMap[locale]();
|
|
24
|
-
|
|
25
|
-
export default getWordList;
|
|
16
|
+
export const getWordList = (locale: Locale): Promise<string[]> => localeMap[locale]();
|
package/src/index.ts
CHANGED
|
@@ -1,7 +1,3 @@
|
|
|
1
|
-
export {
|
|
2
|
-
export
|
|
3
|
-
export { default as getFrFrWordList } from './getFrFrWordList';
|
|
4
|
-
export { default as getPlPlWordList } from './getPlPlWordList';
|
|
5
|
-
export { default as getDeDeWordList } from './getDeDeWordList';
|
|
6
|
-
export { default as getWordList } from './getWordList';
|
|
1
|
+
export { getWordList } from './getWordList';
|
|
2
|
+
export * from './languages';
|
|
7
3
|
export * from './lib';
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Locale } from '@scrabble-solver/types';
|
|
2
|
+
|
|
3
|
+
import { getTxtWordList } from '../lib';
|
|
4
|
+
|
|
5
|
+
const EN_GB_FILE_URL = 'https://www.wordgamedictionary.com/sowpods/download/sowpods.txt';
|
|
6
|
+
const EN_US_FILE_URL = 'https://www.wordgamedictionary.com/twl06/download/twl06.txt';
|
|
7
|
+
|
|
8
|
+
export const getWordListGb = async (): Promise<string[]> => {
|
|
9
|
+
return getTxtWordList(EN_GB_FILE_URL, Locale.EN_GB);
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
export const getWordListUs = async (): Promise<string[]> => {
|
|
13
|
+
return getTxtWordList(EN_US_FILE_URL, Locale.EN_US);
|
|
14
|
+
};
|
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
import { Locale } from '@scrabble-solver/types';
|
|
2
2
|
|
|
3
|
-
import { getTxtWordList, latinizeDiacritics } from '
|
|
3
|
+
import { getTxtWordList, latinizeDiacritics } from '../lib';
|
|
4
4
|
|
|
5
5
|
const FILE_URL = 'https://raw.githubusercontent.com/Thecoolsim/French-Scrabble-ODS8/main/French%20ODS%20dictionary.txt';
|
|
6
6
|
|
|
7
|
-
const
|
|
7
|
+
export const getWordList = async (): Promise<string[]> => {
|
|
8
8
|
const words = await getTxtWordList(FILE_URL, Locale.FR_FR);
|
|
9
9
|
return latinizeDiacritics(words);
|
|
10
10
|
};
|
|
11
|
-
|
|
12
|
-
export default getFrFrWordList;
|
|
@@ -1,11 +1,9 @@
|
|
|
1
1
|
import { Locale } from '@scrabble-solver/types';
|
|
2
2
|
|
|
3
|
-
import { getTxtWordList } from '
|
|
3
|
+
import { getTxtWordList } from '../lib';
|
|
4
4
|
|
|
5
5
|
const FILE_URL = 'https://raw.githubusercontent.com/hippler/german-wordlist/master/words.txt';
|
|
6
6
|
|
|
7
|
-
const
|
|
7
|
+
export const getWordList = async (): Promise<string[]> => {
|
|
8
8
|
return getTxtWordList(FILE_URL, Locale.DE_DE);
|
|
9
9
|
};
|
|
10
|
-
|
|
11
|
-
export default getDeDeWordList;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export * as english from './english';
|
|
2
|
+
export * as german from './german';
|
|
3
|
+
export * as french from './french';
|
|
4
|
+
export * as persian from './persian';
|
|
5
|
+
export * as polish from './polish';
|
|
6
|
+
export * as romanian from './romanian';
|
|
7
|
+
export * as spanish from './spanish';
|
|
@@ -1,11 +1,9 @@
|
|
|
1
1
|
import { Locale } from '@scrabble-solver/types';
|
|
2
2
|
|
|
3
|
-
import { getTxtWordList } from '
|
|
3
|
+
import { getTxtWordList } from '../lib';
|
|
4
4
|
|
|
5
5
|
const FILE_URL = 'https://raw.githubusercontent.com/MansourM/persian-to-persian-dictionary/main/moein/words.txt';
|
|
6
6
|
|
|
7
|
-
const
|
|
7
|
+
export const getWordList = async (): Promise<string[]> => {
|
|
8
8
|
return getTxtWordList(FILE_URL, Locale.FA_IR);
|
|
9
9
|
};
|
|
10
|
-
|
|
11
|
-
export default getFaIrWordList;
|
|
@@ -2,12 +2,12 @@ import { load } from 'cheerio';
|
|
|
2
2
|
import fs from 'fs';
|
|
3
3
|
import { URL } from 'url';
|
|
4
4
|
|
|
5
|
-
import { downloadFile, downloadHtml, extractWords, getTempFilepath, unzip } from '
|
|
5
|
+
import { downloadFile, downloadHtml, extractWords, getTempFilepath, unzip } from '../lib';
|
|
6
6
|
|
|
7
7
|
const PAGE_URL = 'https://sjp.pl/sl/growy/';
|
|
8
8
|
const FILE_TO_EXTRACT_FROM_ZIP = 'slowa.txt';
|
|
9
9
|
|
|
10
|
-
const
|
|
10
|
+
export const getWordList = async (): Promise<string[]> => {
|
|
11
11
|
const tempFilepath = getTempFilepath();
|
|
12
12
|
const zipUrl = await fetchZipUrl(PAGE_URL);
|
|
13
13
|
const zipTempFilename = await downloadFile(zipUrl);
|
|
@@ -40,5 +40,3 @@ const parseZipContainingPage = (html: string): string => {
|
|
|
40
40
|
|
|
41
41
|
return zipFilename;
|
|
42
42
|
};
|
|
43
|
-
|
|
44
|
-
export default getPlPlWordList;
|
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
import { Locale } from '@scrabble-solver/types';
|
|
2
2
|
|
|
3
|
-
import { getTxtWordList, latinizeDiacritics } from '
|
|
3
|
+
import { getTxtWordList, latinizeDiacritics } from '../lib';
|
|
4
4
|
|
|
5
5
|
const FILE_URL = 'https://raw.githubusercontent.com/kamilmielnik/scrabble-dictionaries/master/romanian/loc-5.0.txt';
|
|
6
6
|
|
|
7
|
-
const
|
|
7
|
+
export const getWordList = async (): Promise<string[]> => {
|
|
8
8
|
const words = await getTxtWordList(FILE_URL, Locale.RO_RO);
|
|
9
9
|
return latinizeDiacritics(words);
|
|
10
10
|
};
|
|
11
|
-
|
|
12
|
-
export default getRoRoWordList;
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { Locale } from '@scrabble-solver/types';
|
|
2
2
|
import latinize from 'latinize';
|
|
3
3
|
|
|
4
|
-
import { getTxtWordList } from '
|
|
4
|
+
import { getTxtWordList } from '../lib';
|
|
5
5
|
|
|
6
6
|
const FILE_URL = 'https://raw.githubusercontent.com/kamilmielnik/scrabble-dictionaries/master/spanish/fise-2.txt';
|
|
7
7
|
const N_PLACEHOLDER = '---n---';
|
|
8
8
|
|
|
9
|
-
const
|
|
9
|
+
export const getWordList = async (): Promise<string[]> => {
|
|
10
10
|
const words = await getTxtWordList(FILE_URL, Locale.ES_ES);
|
|
11
11
|
|
|
12
12
|
return words
|
|
@@ -14,5 +14,3 @@ const getEsEsWordList = async (): Promise<string[]> => {
|
|
|
14
14
|
.map(latinize)
|
|
15
15
|
.map((word) => word.replaceAll(N_PLACEHOLDER, 'ñ'));
|
|
16
16
|
};
|
|
17
|
-
|
|
18
|
-
export default getEsEsWordList;
|
package/src/getEnGbWordList.ts
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { Locale } from '@scrabble-solver/types';
|
|
2
|
-
|
|
3
|
-
import { getTxtWordList } from './lib';
|
|
4
|
-
|
|
5
|
-
const FILE_URL = 'https://www.wordgamedictionary.com/sowpods/download/sowpods.txt';
|
|
6
|
-
|
|
7
|
-
const getEnGbWordList = async (): Promise<string[]> => {
|
|
8
|
-
return getTxtWordList(FILE_URL, Locale.EN_GB);
|
|
9
|
-
};
|
|
10
|
-
|
|
11
|
-
export default getEnGbWordList;
|
package/src/getEnUsWordList.ts
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { Locale } from '@scrabble-solver/types';
|
|
2
|
-
|
|
3
|
-
import { getTxtWordList } from './lib';
|
|
4
|
-
|
|
5
|
-
const FILE_URL = 'https://www.wordgamedictionary.com/twl06/download/twl06.txt';
|
|
6
|
-
|
|
7
|
-
const getEnUsWordList = async (): Promise<string[]> => {
|
|
8
|
-
return getTxtWordList(FILE_URL, Locale.EN_US);
|
|
9
|
-
};
|
|
10
|
-
|
|
11
|
-
export default getEnUsWordList;
|