@scrabble-solver/scrabble-solver 2.13.1 → 2.13.3
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 +16 -16
- package/.next/cache/.tsbuildinfo +1 -1
- package/.next/cache/eslint/.cache_8dgz12 +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-minimal-server.js.nft.json +1 -0
- package/.next/next-server.js.nft.json +1 -1
- package/.next/prerender-manifest.js +1 -0
- package/.next/prerender-manifest.json +1 -1
- package/.next/required-server-files.json +1 -1
- package/.next/routes-manifest.json +1 -1
- package/.next/server/InjectManifest.js.nft.json +1 -1
- package/.next/server/chunks/28.js +1 -0
- package/.next/server/chunks/331.js +6 -0
- package/.next/server/chunks/577.js +1 -0
- package/.next/server/chunks/911.js +1 -1083
- package/.next/server/chunks/977.js +1 -0
- package/.next/server/functions-config-manifest.json +1 -0
- package/.next/server/middleware-build-manifest.js +1 -1
- package/.next/server/middleware-react-loadable-manifest.js +1 -1
- package/.next/server/next-font-manifest.js +1 -1
- package/.next/server/next-font-manifest.json +1 -6
- package/.next/server/pages/404.html +1 -1
- package/.next/server/pages/404.js.nft.json +1 -1
- package/.next/server/pages/500.html +1 -1
- package/.next/server/pages/_app.js +1 -380
- package/.next/server/pages/_app.js.nft.json +1 -1
- package/.next/server/pages/_document.js +1 -212
- package/.next/server/pages/_document.js.nft.json +1 -1
- package/.next/server/pages/_error.js +1 -166
- package/.next/server/pages/_error.js.nft.json +1 -1
- package/.next/server/pages/api/dictionary/[locale]/[word].js +2 -836
- package/.next/server/pages/api/dictionary/[locale]/[word].js.nft.json +1 -1
- package/.next/server/pages/api/dictionary/[locale].js +1 -192
- package/.next/server/pages/api/dictionary/[locale].js.nft.json +1 -1
- package/.next/server/pages/api/solve.js +1 -1121
- package/.next/server/pages/api/solve.js.nft.json +1 -1
- package/.next/server/pages/api/verify.js +1 -213
- package/.next/server/pages/api/verify.js.nft.json +1 -1
- package/.next/server/pages/api/visit.js +1 -131
- package/.next/server/pages/api/visit.js.nft.json +1 -1
- package/.next/server/pages/index.html +1 -1
- package/.next/server/pages/index.js +1 -2088
- 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 -12
- package/.next/server/webpack-api-runtime.js +1 -172
- package/.next/server/webpack-runtime.js +1 -229
- package/.next/static/chunks/framework-1728d40275bc359a.js +49 -0
- package/.next/static/chunks/main-5fb7abbfc135de15.js +1 -0
- package/.next/static/chunks/pages/404-b6e238bb4117d451.js +1 -0
- package/.next/static/chunks/pages/_app-b95404c40a0092e6.js +17 -0
- package/.next/static/chunks/pages/_error-db043fa3544f8809.js +1 -0
- package/.next/static/chunks/pages/index-59d569ef79bc2580.js +1 -0
- package/.next/static/css/8fa2fb99b90e109e.css +1 -0
- package/.next/static/css/c80ebc6fd13311f1.css +2 -0
- package/.next/static/r00VHxlMI-jbGWpg3nm2M/_buildManifest.js +1 -0
- package/.next/trace +44 -51
- package/package.json +31 -32
- package/src/i18n/ro.json +5 -5
- package/src/state/slices/boardSlice.ts +4 -4
- package/src/state/store.ts +1 -1
- package/.next/cache/next-server.js.nft.json +0 -1
- package/.next/server/chunks/210.js +0 -109
- package/.next/server/chunks/277.js +0 -11942
- package/.next/server/chunks/44.js +0 -1813
- package/.next/server/chunks/50.js +0 -12119
- package/.next/server/chunks/636.js +0 -286
- package/.next/server/chunks/675.js +0 -572
- package/.next/server/chunks/859.js +0 -835
- package/.next/server/chunks/865.js +0 -20424
- package/.next/server/chunks/907.js +0 -42530
- package/.next/server/chunks/987.js +0 -91
- package/.next/static/RJ5_dKU0dHcryeTVO6SSX/_buildManifest.js +0 -1
- package/.next/static/chunks/framework-2c29dc3cd933590b.js +0 -49
- package/.next/static/chunks/main-4dcb7f9b52833aba.js +0 -1
- package/.next/static/chunks/pages/404-b4b5ce15153d4825.js +0 -1
- package/.next/static/chunks/pages/_app-b92880dde164b954.js +0 -32
- package/.next/static/chunks/pages/_error-54de1933a164a1ff.js +0 -1
- package/.next/static/chunks/pages/index-f56eaa969a831c70.js +0 -1
- package/.next/static/css/4e8b47fe382a8a8f.css +0 -2
- package/.next/static/css/cfae5256f1689f57.css +0 -1
- /package/.next/static/{RJ5_dKU0dHcryeTVO6SSX → r00VHxlMI-jbGWpg3nm2M}/_ssgManifest.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":1,"files":["
|
|
1
|
+
{"version":1,"files":["../../../../package.json","../../../package.json","../../chunks/911.js","../../chunks/977.js","../../webpack-api-runtime.js"]}
|
|
@@ -1,213 +1 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
(() => {
|
|
3
|
-
var exports = {};
|
|
4
|
-
exports.id = 876;
|
|
5
|
-
exports.ids = [876];
|
|
6
|
-
exports.modules = {
|
|
7
|
-
|
|
8
|
-
/***/ 60871:
|
|
9
|
-
/***/ ((module) => {
|
|
10
|
-
|
|
11
|
-
module.exports = require("buffer");
|
|
12
|
-
|
|
13
|
-
/***/ }),
|
|
14
|
-
|
|
15
|
-
/***/ 39491:
|
|
16
|
-
/***/ ((module) => {
|
|
17
|
-
|
|
18
|
-
module.exports = require("assert");
|
|
19
|
-
|
|
20
|
-
/***/ }),
|
|
21
|
-
|
|
22
|
-
/***/ 22057:
|
|
23
|
-
/***/ ((module) => {
|
|
24
|
-
|
|
25
|
-
module.exports = require("constants");
|
|
26
|
-
|
|
27
|
-
/***/ }),
|
|
28
|
-
|
|
29
|
-
/***/ 6113:
|
|
30
|
-
/***/ ((module) => {
|
|
31
|
-
|
|
32
|
-
module.exports = require("crypto");
|
|
33
|
-
|
|
34
|
-
/***/ }),
|
|
35
|
-
|
|
36
|
-
/***/ 82361:
|
|
37
|
-
/***/ ((module) => {
|
|
38
|
-
|
|
39
|
-
module.exports = require("events");
|
|
40
|
-
|
|
41
|
-
/***/ }),
|
|
42
|
-
|
|
43
|
-
/***/ 57147:
|
|
44
|
-
/***/ ((module) => {
|
|
45
|
-
|
|
46
|
-
module.exports = require("fs");
|
|
47
|
-
|
|
48
|
-
/***/ }),
|
|
49
|
-
|
|
50
|
-
/***/ 13685:
|
|
51
|
-
/***/ ((module) => {
|
|
52
|
-
|
|
53
|
-
module.exports = require("http");
|
|
54
|
-
|
|
55
|
-
/***/ }),
|
|
56
|
-
|
|
57
|
-
/***/ 95687:
|
|
58
|
-
/***/ ((module) => {
|
|
59
|
-
|
|
60
|
-
module.exports = require("https");
|
|
61
|
-
|
|
62
|
-
/***/ }),
|
|
63
|
-
|
|
64
|
-
/***/ 22037:
|
|
65
|
-
/***/ ((module) => {
|
|
66
|
-
|
|
67
|
-
module.exports = require("os");
|
|
68
|
-
|
|
69
|
-
/***/ }),
|
|
70
|
-
|
|
71
|
-
/***/ 71017:
|
|
72
|
-
/***/ ((module) => {
|
|
73
|
-
|
|
74
|
-
module.exports = require("path");
|
|
75
|
-
|
|
76
|
-
/***/ }),
|
|
77
|
-
|
|
78
|
-
/***/ 12781:
|
|
79
|
-
/***/ ((module) => {
|
|
80
|
-
|
|
81
|
-
module.exports = require("stream");
|
|
82
|
-
|
|
83
|
-
/***/ }),
|
|
84
|
-
|
|
85
|
-
/***/ 71576:
|
|
86
|
-
/***/ ((module) => {
|
|
87
|
-
|
|
88
|
-
module.exports = require("string_decoder");
|
|
89
|
-
|
|
90
|
-
/***/ }),
|
|
91
|
-
|
|
92
|
-
/***/ 76224:
|
|
93
|
-
/***/ ((module) => {
|
|
94
|
-
|
|
95
|
-
module.exports = require("tty");
|
|
96
|
-
|
|
97
|
-
/***/ }),
|
|
98
|
-
|
|
99
|
-
/***/ 57310:
|
|
100
|
-
/***/ ((module) => {
|
|
101
|
-
|
|
102
|
-
module.exports = require("url");
|
|
103
|
-
|
|
104
|
-
/***/ }),
|
|
105
|
-
|
|
106
|
-
/***/ 73837:
|
|
107
|
-
/***/ ((module) => {
|
|
108
|
-
|
|
109
|
-
module.exports = require("util");
|
|
110
|
-
|
|
111
|
-
/***/ }),
|
|
112
|
-
|
|
113
|
-
/***/ 59796:
|
|
114
|
-
/***/ ((module) => {
|
|
115
|
-
|
|
116
|
-
module.exports = require("zlib");
|
|
117
|
-
|
|
118
|
-
/***/ }),
|
|
119
|
-
|
|
120
|
-
/***/ 2911:
|
|
121
|
-
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
122
|
-
|
|
123
|
-
__webpack_require__.r(__webpack_exports__);
|
|
124
|
-
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
125
|
-
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
|
|
126
|
-
/* harmony export */ });
|
|
127
|
-
/* harmony import */ var _scrabble_solver_configs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(27911);
|
|
128
|
-
/* harmony import */ var _scrabble_solver_configs__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_scrabble_solver_configs__WEBPACK_IMPORTED_MODULE_0__);
|
|
129
|
-
/* harmony import */ var _scrabble_solver_dictionaries__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(89044);
|
|
130
|
-
/* harmony import */ var _scrabble_solver_dictionaries__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_scrabble_solver_dictionaries__WEBPACK_IMPORTED_MODULE_1__);
|
|
131
|
-
/* harmony import */ var _scrabble_solver_logger__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(52954);
|
|
132
|
-
/* harmony import */ var _scrabble_solver_logger__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_scrabble_solver_logger__WEBPACK_IMPORTED_MODULE_2__);
|
|
133
|
-
/* harmony import */ var _scrabble_solver_types__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(46452);
|
|
134
|
-
/* harmony import */ var _scrabble_solver_types__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_scrabble_solver_types__WEBPACK_IMPORTED_MODULE_3__);
|
|
135
|
-
/* harmony import */ var api__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(84021);
|
|
136
|
-
/* harmony import */ var api__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(31210);
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
const verify = async (request, response)=>{
|
|
143
|
-
const meta = (0,api__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z)(request);
|
|
144
|
-
try {
|
|
145
|
-
const { board , locale } = parseRequest(request);
|
|
146
|
-
_scrabble_solver_logger__WEBPACK_IMPORTED_MODULE_2___default().info("verify - request", {
|
|
147
|
-
meta,
|
|
148
|
-
payload: {
|
|
149
|
-
board: board.toString(),
|
|
150
|
-
boardBlanksCount: board.getBlanksCount(),
|
|
151
|
-
boardTilesCount: board.getTilesCount(),
|
|
152
|
-
game: request.body.game,
|
|
153
|
-
locale
|
|
154
|
-
}
|
|
155
|
-
});
|
|
156
|
-
const trie = await _scrabble_solver_dictionaries__WEBPACK_IMPORTED_MODULE_1__.dictionaries.get(locale);
|
|
157
|
-
const words = board.getWords().sort((a, b)=>a.localeCompare(b, locale));
|
|
158
|
-
const invalidWords = words.filter((word)=>!trie.has(word));
|
|
159
|
-
const validWords = words.filter((word)=>trie.has(word));
|
|
160
|
-
response.status(200).send({
|
|
161
|
-
invalidWords,
|
|
162
|
-
validWords
|
|
163
|
-
});
|
|
164
|
-
} catch (error) {
|
|
165
|
-
const message = error instanceof Error ? error.message : "Unknown error";
|
|
166
|
-
_scrabble_solver_logger__WEBPACK_IMPORTED_MODULE_2___default().error("verify - error", {
|
|
167
|
-
error,
|
|
168
|
-
meta
|
|
169
|
-
});
|
|
170
|
-
response.status(500).send({
|
|
171
|
-
error: "Server error",
|
|
172
|
-
message
|
|
173
|
-
});
|
|
174
|
-
}
|
|
175
|
-
};
|
|
176
|
-
const parseRequest = (request)=>{
|
|
177
|
-
const { board: boardJson , game , locale } = request.body;
|
|
178
|
-
if (!(0,_scrabble_solver_types__WEBPACK_IMPORTED_MODULE_3__.isLocale)(locale)) {
|
|
179
|
-
throw new Error('Invalid "locale" parameter');
|
|
180
|
-
}
|
|
181
|
-
if (!(0,_scrabble_solver_types__WEBPACK_IMPORTED_MODULE_3__.isGame)(game)) {
|
|
182
|
-
throw new Error('Invalid "game" parameter');
|
|
183
|
-
}
|
|
184
|
-
if (!(0,_scrabble_solver_configs__WEBPACK_IMPORTED_MODULE_0__.hasConfig)(game, locale)) {
|
|
185
|
-
throw new Error(`No game "${game}" in "${locale}"`);
|
|
186
|
-
}
|
|
187
|
-
const config = (0,_scrabble_solver_configs__WEBPACK_IMPORTED_MODULE_0__.getConfig)(game, locale);
|
|
188
|
-
if (!(0,_scrabble_solver_types__WEBPACK_IMPORTED_MODULE_3__.isBoardJson)(boardJson) || !(0,api__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z)(boardJson, config)) {
|
|
189
|
-
throw new Error('Invalid "board" parameter');
|
|
190
|
-
}
|
|
191
|
-
const board = _scrabble_solver_types__WEBPACK_IMPORTED_MODULE_3__.Board.fromJson(boardJson);
|
|
192
|
-
return {
|
|
193
|
-
board,
|
|
194
|
-
config,
|
|
195
|
-
locale
|
|
196
|
-
};
|
|
197
|
-
};
|
|
198
|
-
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (verify);
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
/***/ })
|
|
202
|
-
|
|
203
|
-
};
|
|
204
|
-
;
|
|
205
|
-
|
|
206
|
-
// load runtime
|
|
207
|
-
var __webpack_require__ = require("../../webpack-api-runtime.js");
|
|
208
|
-
__webpack_require__.C(exports);
|
|
209
|
-
var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
|
|
210
|
-
var __webpack_exports__ = __webpack_require__.X(0, [50,907,987,44,911,210], () => (__webpack_exec__(2911)));
|
|
211
|
-
module.exports = __webpack_exports__;
|
|
212
|
-
|
|
213
|
-
})();
|
|
1
|
+
"use strict";(()=>{var r={};r.id=876,r.ids=[876],r.modules={9119:r=>{r.exports=require("@kamilmielnik/trie")},8048:r=>{r.exports=require("cheerio")},6953:r=>{r.exports=require("follow-redirects")},1118:r=>{r.exports=require("latinize")},145:r=>{r.exports=require("next/dist/compiled/next-server/pages-api.runtime.prod.js")},4616:r=>{r.exports=require("unzipper")},7773:r=>{r.exports=require("winston")},6113:r=>{r.exports=require("crypto")},7147:r=>{r.exports=require("fs")},2037:r=>{r.exports=require("os")},1017:r=>{r.exports=require("path")},7310:r=>{r.exports=require("url")},6724:(r,e,t)=>{t.r(e),t.d(e,{config:()=>x,default:()=>m,routeModule:()=>v});var i={};t.r(i),t.d(i,{default:()=>g});var o=t(9150),a=t(1631),l=t(6835),n=t(7911),s=t(9044),u=t(2954),d=t.n(u),f=t(6452),p=t(9927),h=t(1525);let c=r=>{let{board:e,game:t,locale:i}=r.body;if(!(0,f.isLocale)(i))throw Error('Invalid "locale" parameter');if(!(0,f.isGame)(t))throw Error('Invalid "game" parameter');if(!(0,n.hasConfig)(t,i))throw Error(`No game "${t}" in "${i}"`);let o=(0,n.getConfig)(t,i);if(!(0,f.isBoardJson)(e)||!(0,h.Z)(e,o))throw Error('Invalid "board" parameter');return{board:f.Board.fromJson(e),config:o,locale:i}},g=async(r,e)=>{let t=(0,p.Z)(r);try{let{board:i,locale:o}=c(r);d().info("verify - request",{meta:t,payload:{board:i.toString(),boardBlanksCount:i.getBlanksCount(),boardTilesCount:i.getTilesCount(),game:r.body.game,locale:o}});let a=await s.dictionaries.get(o),l=i.getWords().sort((r,e)=>r.localeCompare(e,o)),n=l.filter(r=>!a.has(r)),u=l.filter(r=>a.has(r));e.status(200).send({invalidWords:n,validWords:u})}catch(i){let r=i instanceof Error?i.message:"Unknown error";d().error("verify - error",{error:i,meta:t}),e.status(500).send({error:"Server error",message:r})}},m=(0,l.l)(i,"default"),x=(0,l.l)(i,"config"),v=new o.PagesAPIRouteModule({definition:{kind:a.x.PAGES_API,page:"/api/verify",pathname:"/api/verify",bundlePath:"",filename:""},userland:i})},1525:(r,e,t)=>{t.d(e,{Z:()=>n});var i=t(9953);let o=(r,e)=>{let{isEmpty:t,tile:o,x:a,y:l}=r;return!(a<0)&&!(a>=e.boardWidth)&&!(l<0)&&!(l>=e.boardHeight)&&(!t||null===o)&&(null===o||!!(0,i.Z)(o.character))},a=(r,e)=>{if(r.length!==e.boardWidth)return!1;for(let t of r)if(!o(t,e))return!1;return!0},l=(r,e)=>{for(let t of r.flat().filter(r=>r&&r.tile&&e.isTwoCharacterTilePrefix(r.tile.character)))for(let i of e.twoCharacterTiles){let e=t.y+1<r.length,o=t.x+1<r[0].length,a=r[t.y+1][t.x],l=r[t.y][t.x+1],n=e&&a.tile&&a.tile.character===i[1],s=o&&l.tile&&l.tile.character===i[1],u=n||s;if(t.tile&&i.startsWith(t.tile.character)&&u)return!1}return!0},n=(r,e)=>{if(r.length!==e.boardHeight)return!1;for(let t of r)if(!a(t,e))return!1;return l(r,e)}},9953:(r,e,t)=>{t.d(e,{Z:()=>i});let i=r=>0!==r.length&&r.length<=2}};var e=require("../../webpack-api-runtime.js");e.C(r);var t=r=>e(e.s=r),i=e.X(0,[977,911],()=>t(6724));module.exports=i})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":1,"files":["
|
|
1
|
+
{"version":1,"files":["../../../../package.json","../../../package.json","../../chunks/911.js","../../chunks/977.js","../../webpack-api-runtime.js"]}
|
|
@@ -1,131 +1 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
(() => {
|
|
3
|
-
var exports = {};
|
|
4
|
-
exports.id = 322;
|
|
5
|
-
exports.ids = [322];
|
|
6
|
-
exports.modules = {
|
|
7
|
-
|
|
8
|
-
/***/ 60871:
|
|
9
|
-
/***/ ((module) => {
|
|
10
|
-
|
|
11
|
-
module.exports = require("buffer");
|
|
12
|
-
|
|
13
|
-
/***/ }),
|
|
14
|
-
|
|
15
|
-
/***/ 82361:
|
|
16
|
-
/***/ ((module) => {
|
|
17
|
-
|
|
18
|
-
module.exports = require("events");
|
|
19
|
-
|
|
20
|
-
/***/ }),
|
|
21
|
-
|
|
22
|
-
/***/ 57147:
|
|
23
|
-
/***/ ((module) => {
|
|
24
|
-
|
|
25
|
-
module.exports = require("fs");
|
|
26
|
-
|
|
27
|
-
/***/ }),
|
|
28
|
-
|
|
29
|
-
/***/ 13685:
|
|
30
|
-
/***/ ((module) => {
|
|
31
|
-
|
|
32
|
-
module.exports = require("http");
|
|
33
|
-
|
|
34
|
-
/***/ }),
|
|
35
|
-
|
|
36
|
-
/***/ 95687:
|
|
37
|
-
/***/ ((module) => {
|
|
38
|
-
|
|
39
|
-
module.exports = require("https");
|
|
40
|
-
|
|
41
|
-
/***/ }),
|
|
42
|
-
|
|
43
|
-
/***/ 22037:
|
|
44
|
-
/***/ ((module) => {
|
|
45
|
-
|
|
46
|
-
module.exports = require("os");
|
|
47
|
-
|
|
48
|
-
/***/ }),
|
|
49
|
-
|
|
50
|
-
/***/ 71017:
|
|
51
|
-
/***/ ((module) => {
|
|
52
|
-
|
|
53
|
-
module.exports = require("path");
|
|
54
|
-
|
|
55
|
-
/***/ }),
|
|
56
|
-
|
|
57
|
-
/***/ 12781:
|
|
58
|
-
/***/ ((module) => {
|
|
59
|
-
|
|
60
|
-
module.exports = require("stream");
|
|
61
|
-
|
|
62
|
-
/***/ }),
|
|
63
|
-
|
|
64
|
-
/***/ 71576:
|
|
65
|
-
/***/ ((module) => {
|
|
66
|
-
|
|
67
|
-
module.exports = require("string_decoder");
|
|
68
|
-
|
|
69
|
-
/***/ }),
|
|
70
|
-
|
|
71
|
-
/***/ 73837:
|
|
72
|
-
/***/ ((module) => {
|
|
73
|
-
|
|
74
|
-
module.exports = require("util");
|
|
75
|
-
|
|
76
|
-
/***/ }),
|
|
77
|
-
|
|
78
|
-
/***/ 59796:
|
|
79
|
-
/***/ ((module) => {
|
|
80
|
-
|
|
81
|
-
module.exports = require("zlib");
|
|
82
|
-
|
|
83
|
-
/***/ }),
|
|
84
|
-
|
|
85
|
-
/***/ 58873:
|
|
86
|
-
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
87
|
-
|
|
88
|
-
__webpack_require__.r(__webpack_exports__);
|
|
89
|
-
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
90
|
-
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
|
|
91
|
-
/* harmony export */ });
|
|
92
|
-
/* harmony import */ var _scrabble_solver_logger__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(52954);
|
|
93
|
-
/* harmony import */ var _scrabble_solver_logger__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_scrabble_solver_logger__WEBPACK_IMPORTED_MODULE_0__);
|
|
94
|
-
/* harmony import */ var api__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(84021);
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
const visit = async (request, response)=>{
|
|
98
|
-
const meta = (0,api__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z)(request);
|
|
99
|
-
try {
|
|
100
|
-
_scrabble_solver_logger__WEBPACK_IMPORTED_MODULE_0___default().info("visit - request", {
|
|
101
|
-
meta
|
|
102
|
-
});
|
|
103
|
-
response.status(200).send(true);
|
|
104
|
-
} catch (error) {
|
|
105
|
-
const message = error instanceof Error ? error.message : "Unknown error";
|
|
106
|
-
_scrabble_solver_logger__WEBPACK_IMPORTED_MODULE_0___default().error("visit - error", {
|
|
107
|
-
error,
|
|
108
|
-
meta
|
|
109
|
-
});
|
|
110
|
-
response.status(500).send({
|
|
111
|
-
error: "Server error",
|
|
112
|
-
message
|
|
113
|
-
});
|
|
114
|
-
}
|
|
115
|
-
};
|
|
116
|
-
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (visit);
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
/***/ })
|
|
120
|
-
|
|
121
|
-
};
|
|
122
|
-
;
|
|
123
|
-
|
|
124
|
-
// load runtime
|
|
125
|
-
var __webpack_require__ = require("../../webpack-api-runtime.js");
|
|
126
|
-
__webpack_require__.C(exports);
|
|
127
|
-
var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
|
|
128
|
-
var __webpack_exports__ = __webpack_require__.X(0, [50,987], () => (__webpack_exec__(58873)));
|
|
129
|
-
module.exports = __webpack_exports__;
|
|
130
|
-
|
|
131
|
-
})();
|
|
1
|
+
"use strict";(()=>{var e={};e.id=322,e.ids=[322],e.modules={145:e=>{e.exports=require("next/dist/compiled/next-server/pages-api.runtime.prod.js")},7773:e=>{e.exports=require("winston")},2037:e=>{e.exports=require("os")},1017:e=>{e.exports=require("path")},6835:(e,r)=>{Object.defineProperty(r,"l",{enumerable:!0,get:function(){return function e(r,t){return t in r?r[t]:"then"in r&&"function"==typeof r.then?r.then(r=>e(r,t)):"function"==typeof r&&"default"===t?r:void 0}}})},5633:(e,r,t)=>{t.r(r),t.d(r,{config:()=>p,default:()=>d,routeModule:()=>m});var o={};t.r(o),t.d(o,{default:()=>f});var n=t(9150),a=t(1631),i=t(6835),s=t(2954),l=t.n(s),u=t(9927);let f=async(e,r)=>{let t=(0,u.Z)(e);try{l().info("visit - request",{meta:t}),r.status(200).send(!0)}catch(o){let e=o instanceof Error?o.message:"Unknown error";l().error("visit - error",{error:o,meta:t}),r.status(500).send({error:"Server error",message:e})}},d=(0,i.l)(o,"default"),p=(0,i.l)(o,"config"),m=new n.PagesAPIRouteModule({definition:{kind:a.x.PAGES_API,page:"/api/visit",pathname:"/api/visit",bundlePath:"",filename:""},userland:o})},9927:(e,r,t)=>{t.d(r,{Z:()=>o});let o=e=>({origin:e.headers.origin,referer:e.headers.referer,userAgent:e.headers["user-agent"],xForwardedFor:e.headers["x-forwarded-for"],xRealIp:e.headers["x-real-ip"]})},1631:(e,r)=>{var t;Object.defineProperty(r,"x",{enumerable:!0,get:function(){return t}}),function(e){e.PAGES="PAGES",e.PAGES_API="PAGES_API",e.APP_PAGE="APP_PAGE",e.APP_ROUTE="APP_ROUTE"}(t||(t={}))},9150:(e,r,t)=>{e.exports=t(145)},8793:function(e,r,t){var o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(r,"__esModule",{value:!0}),r.OUTPUT_DIRECTORY=void 0;let n=o(t(2037)),a=o(t(1017));r.OUTPUT_DIRECTORY=a.default.resolve(n.default.homedir(),".scrabble-solver","logs")},2954:function(e,r,t){var o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(r,"__esModule",{value:!0}),r.default=void 0;var n=t(6730);Object.defineProperty(r,"default",{enumerable:!0,get:function(){return o(n).default}})},6730:function(e,r,t){var o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(r,"__esModule",{value:!0});let n=o(t(1017)),a=t(7773),i=t(8793),s=(0,a.createLogger)({level:"info",format:a.format.combine(a.format.timestamp({format:"YYYY-MM-DD HH:mm:ss"}),a.format.errors({stack:!0}),a.format.splat(),a.format.json(),a.format.prettyPrint()),transports:[new a.transports.File({filename:n.default.resolve(i.OUTPUT_DIRECTORY,"error.log"),level:"error"}),new a.transports.File({filename:n.default.resolve(i.OUTPUT_DIRECTORY,"all.log")}),new a.transports.Console({format:a.format.combine(a.format.colorize(),a.format.simple()),level:"error"})]});r.default=s}};var r=require("../../webpack-api-runtime.js");r.C(e);var t=r(r.s=5633);module.exports=t})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":1,"files":["
|
|
1
|
+
{"version":1,"files":["../../../../package.json","../../../package.json","../../webpack-api-runtime.js"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html lang="en"><head><title>Scrabble Solver 2 by Kamil Mielnik</title><meta charSet="utf-8"/><meta name="author" content="Kamil Mielnik"/><meta name="description" content="Scrabble Solver 2 - Free and open-source analysis tool for Scrabble, Super Scrabble & Literaki. Quickly find top scoring words using given letters and board state. Available in English, French, German, Polish & Spanish."/><meta name="keywords" content="Scrabble Solver,Scrabble,Solver,Super Scrabble,Super Scrabble Solver,Board,Open-source,Open,Source,Word,Finder,Cheating,Literaki,Word,English,Français,Deutsch,Polski,فارسی,Español,SOWPODS,TWL06,SJP,FISE-2017,FISE-2,CNRTL,Kamil Mielnik"/><meta name="robots" content="index, follow, notranslate, noimageindex"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><meta property="og:title" content="Scrabble Solver 2 - Free and open-source analysis tool for Scrabble, Super Scrabble & Literaki. Quickly find top scoring words using given letters and board state. Available in English, French, German, Polish & Spanish."/><meta property="og:type" content="website"/><meta property="og:url" content="https://scrabble-solver.org"/><meta property="og:image" content="https://scrabble-solver.org/og.png"/><meta property="og:image:type" content="image/png"/><meta property="og:image:width" content="1200"/><meta property="og:image:height" content="630"/><meta property="og:image:alt" content="Scrabble Solver 2 - Free and open-source analysis tool for Scrabble, Super Scrabble & Literaki. Quickly find top scoring words using given letters and board state. Available in English, French, German, Polish & Spanish."/><meta name="next-head-count" content="15"/><link rel="apple-touch-icon-precomposed" sizes="57x57" href="icons/apple-touch-icon-57x57.png"/><link rel="apple-touch-icon-precomposed" sizes="114x114" href="icons/apple-touch-icon-114x114.png"/><link rel="apple-touch-icon-precomposed" sizes="72x72" href="icons/apple-touch-icon-72x72.png"/><link rel="apple-touch-icon-precomposed" sizes="144x144" href="icons/apple-touch-icon-144x144.png"/><link rel="apple-touch-icon-precomposed" sizes="60x60" href="icons/apple-touch-icon-60x60.png"/><link rel="apple-touch-icon-precomposed" sizes="120x120" href="icons/apple-touch-icon-120x120.png"/><link rel="apple-touch-icon-precomposed" sizes="76x76" href="icons/apple-touch-icon-76x76.png"/><link rel="apple-touch-icon-precomposed" sizes="152x152" href="icons/apple-touch-icon-152x152.png"/><link rel="icon" type="image/png" href="icons/favicon-196x196.png" sizes="196x196"/><link rel="icon" type="image/png" href="icons/favicon-96x96.png" sizes="96x96"/><link rel="icon" type="image/png" href="icons/favicon-32x32.png" sizes="32x32"/><link rel="icon" type="image/png" href="icons/favicon-16x16.png" sizes="16x16"/><link rel="icon" type="image/png" href="icons/favicon-128.png" sizes="128x128"/><link rel="icon" href="icons/favicon.svg"/><meta name="application-name" content="Scrabble Solver"/><meta name="msapplication-TileColor" content="#EFE3AE"/><meta name="msapplication-TileImage" content="icons/mstile-144x144.png"/><meta name="msapplication-square70x70logo" content="icons/mstile-70x70.png"/><meta name="msapplication-square150x150logo" content="icons/mstile-150x150.png"/><meta name="msapplication-wide310x150logo" content="icons/mstile-310x150.png"/><meta name="msapplication-square310x310logo" content="icons/mstile-310x310.png"/><link rel="preload" href="/_next/static/css/
|
|
1
|
+
<!DOCTYPE html><html lang="en"><head><title>Scrabble Solver 2 by Kamil Mielnik</title><meta charSet="utf-8"/><meta name="author" content="Kamil Mielnik"/><meta name="description" content="Scrabble Solver 2 - Free and open-source analysis tool for Scrabble, Super Scrabble & Literaki. Quickly find top scoring words using given letters and board state. Available in English, French, German, Polish & Spanish."/><meta name="keywords" content="Scrabble Solver,Scrabble,Solver,Super Scrabble,Super Scrabble Solver,Board,Open-source,Open,Source,Word,Finder,Cheating,Literaki,Word,English,Français,Deutsch,Polski,فارسی,Español,SOWPODS,TWL06,SJP,FISE-2017,FISE-2,CNRTL,Kamil Mielnik"/><meta name="robots" content="index, follow, notranslate, noimageindex"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><meta property="og:title" content="Scrabble Solver 2 - Free and open-source analysis tool for Scrabble, Super Scrabble & Literaki. Quickly find top scoring words using given letters and board state. Available in English, French, German, Polish & Spanish."/><meta property="og:type" content="website"/><meta property="og:url" content="https://scrabble-solver.org"/><meta property="og:image" content="https://scrabble-solver.org/og.png"/><meta property="og:image:type" content="image/png"/><meta property="og:image:width" content="1200"/><meta property="og:image:height" content="630"/><meta property="og:image:alt" content="Scrabble Solver 2 - Free and open-source analysis tool for Scrabble, Super Scrabble & Literaki. Quickly find top scoring words using given letters and board state. Available in English, French, German, Polish & Spanish."/><meta name="next-head-count" content="15"/><link rel="apple-touch-icon-precomposed" sizes="57x57" href="icons/apple-touch-icon-57x57.png"/><link rel="apple-touch-icon-precomposed" sizes="114x114" href="icons/apple-touch-icon-114x114.png"/><link rel="apple-touch-icon-precomposed" sizes="72x72" href="icons/apple-touch-icon-72x72.png"/><link rel="apple-touch-icon-precomposed" sizes="144x144" href="icons/apple-touch-icon-144x144.png"/><link rel="apple-touch-icon-precomposed" sizes="60x60" href="icons/apple-touch-icon-60x60.png"/><link rel="apple-touch-icon-precomposed" sizes="120x120" href="icons/apple-touch-icon-120x120.png"/><link rel="apple-touch-icon-precomposed" sizes="76x76" href="icons/apple-touch-icon-76x76.png"/><link rel="apple-touch-icon-precomposed" sizes="152x152" href="icons/apple-touch-icon-152x152.png"/><link rel="icon" type="image/png" href="icons/favicon-196x196.png" sizes="196x196"/><link rel="icon" type="image/png" href="icons/favicon-96x96.png" sizes="96x96"/><link rel="icon" type="image/png" href="icons/favicon-32x32.png" sizes="32x32"/><link rel="icon" type="image/png" href="icons/favicon-16x16.png" sizes="16x16"/><link rel="icon" type="image/png" href="icons/favicon-128.png" sizes="128x128"/><link rel="icon" href="icons/favicon.svg"/><meta name="application-name" content="Scrabble Solver"/><meta name="msapplication-TileColor" content="#EFE3AE"/><meta name="msapplication-TileImage" content="icons/mstile-144x144.png"/><meta name="msapplication-square70x70logo" content="icons/mstile-70x70.png"/><meta name="msapplication-square150x150logo" content="icons/mstile-150x150.png"/><meta name="msapplication-wide310x150logo" content="icons/mstile-310x150.png"/><meta name="msapplication-square310x310logo" content="icons/mstile-310x310.png"/><link rel="preload" href="/_next/static/css/c80ebc6fd13311f1.css" as="style" crossorigin=""/><link rel="stylesheet" href="/_next/static/css/c80ebc6fd13311f1.css" crossorigin="" data-n-g=""/><link rel="preload" href="/_next/static/css/8fa2fb99b90e109e.css" as="style" crossorigin=""/><link rel="stylesheet" href="/_next/static/css/8fa2fb99b90e109e.css" crossorigin="" data-n-p=""/><noscript data-n-css=""></noscript><script defer="" crossorigin="" nomodule="" src="/_next/static/chunks/polyfills-c67a75d1b6f99dc8.js"></script><script src="/_next/static/chunks/webpack-6ef43a8d4a395f49.js" defer="" crossorigin=""></script><script src="/_next/static/chunks/framework-1728d40275bc359a.js" defer="" crossorigin=""></script><script src="/_next/static/chunks/main-5fb7abbfc135de15.js" defer="" crossorigin=""></script><script src="/_next/static/chunks/pages/_app-b95404c40a0092e6.js" defer="" crossorigin=""></script><script src="/_next/static/chunks/pages/index-59d569ef79bc2580.js" defer="" crossorigin=""></script><script src="/_next/static/r00VHxlMI-jbGWpg3nm2M/_buildManifest.js" defer="" crossorigin=""></script><script src="/_next/static/r00VHxlMI-jbGWpg3nm2M/_ssgManifest.js" defer="" crossorigin=""></script></head><body><div id="__next"><p style="color:transparent;pointer-events:none;position:absolute;user-select:none;transform:translateY(-9999px)">Scrabble Solver 2 is a free and open-source analysis tool for Scrabble, Super Scrabble & Literaki. Quickly find top scoring words using given letters and board state. Available in English, French, German, Polish & Spanish. Source code is available on GitHub - contributions are welcome!</p></div><script id="__NEXT_DATA__" type="application/json" crossorigin="">{"props":{"pageProps":{"version":"v2.13.2"},"__N_SSG":true},"page":"/","query":{},"buildId":"r00VHxlMI-jbGWpg3nm2M","isFallback":false,"gsp":true,"scriptLoader":[]}</script></body></html>
|