@scrabble-solver/scrabble-solver 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.
Files changed (190) hide show
  1. package/.next/build-manifest.json +15 -24
  2. package/.next/cache/.tsbuildinfo +1 -1
  3. package/.next/cache/eslint/.cache_8dgz12 +1 -1
  4. package/.next/cache/webpack/client-development/0.pack.gz +0 -0
  5. package/.next/cache/webpack/client-development/1.pack.gz +0 -0
  6. package/.next/cache/webpack/client-development/10.pack.gz +0 -0
  7. package/.next/cache/webpack/client-development/11.pack.gz +0 -0
  8. package/.next/cache/webpack/client-development/12.pack.gz +0 -0
  9. package/.next/cache/webpack/client-development/13.pack.gz +0 -0
  10. package/.next/cache/webpack/client-development/14.pack.gz +0 -0
  11. package/.next/cache/webpack/client-development/15.pack.gz +0 -0
  12. package/.next/cache/webpack/client-development/2.pack.gz +0 -0
  13. package/.next/cache/webpack/client-development/3.pack.gz +0 -0
  14. package/.next/cache/webpack/client-development/4.pack.gz +0 -0
  15. package/.next/cache/webpack/client-development/5.pack.gz +0 -0
  16. package/.next/cache/webpack/client-development/6.pack.gz +0 -0
  17. package/.next/cache/webpack/client-development/7.pack.gz +0 -0
  18. package/.next/cache/webpack/client-development/8.pack.gz +0 -0
  19. package/.next/cache/webpack/client-development/9.pack.gz +0 -0
  20. package/.next/cache/webpack/client-development/index.pack.gz +0 -0
  21. package/.next/cache/webpack/client-development/index.pack.gz.old +0 -0
  22. package/.next/cache/webpack/client-development-fallback/0.pack.gz +0 -0
  23. package/.next/cache/webpack/client-development-fallback/index.pack.gz +0 -0
  24. package/.next/cache/webpack/client-production/0.pack +0 -0
  25. package/.next/cache/webpack/client-production/1.pack +0 -0
  26. package/.next/cache/webpack/client-production/2.pack +0 -0
  27. package/.next/cache/webpack/client-production/3.pack +0 -0
  28. package/.next/cache/webpack/client-production/4.pack +0 -0
  29. package/.next/cache/webpack/client-production/index.pack +0 -0
  30. package/.next/cache/webpack/client-production/index.pack.old +0 -0
  31. package/.next/cache/webpack/edge-server-production/0.pack +0 -0
  32. package/.next/cache/webpack/edge-server-production/1.pack +0 -0
  33. package/.next/cache/webpack/edge-server-production/2.pack +0 -0
  34. package/.next/cache/webpack/edge-server-production/index.pack +0 -0
  35. package/.next/cache/webpack/edge-server-production/index.pack.old +0 -0
  36. package/.next/cache/webpack/server-development/0.pack.gz +0 -0
  37. package/.next/cache/webpack/server-development/1.pack.gz +0 -0
  38. package/.next/cache/webpack/server-development/10.pack.gz +0 -0
  39. package/.next/cache/webpack/server-development/11.pack.gz +0 -0
  40. package/.next/cache/webpack/server-development/12.pack.gz +0 -0
  41. package/.next/cache/webpack/server-development/13.pack.gz +0 -0
  42. package/.next/cache/webpack/server-development/14.pack.gz +0 -0
  43. package/.next/cache/webpack/server-development/15.pack.gz +0 -0
  44. package/.next/cache/webpack/server-development/16.pack.gz +0 -0
  45. package/.next/cache/webpack/server-development/17.pack.gz +0 -0
  46. package/.next/cache/webpack/server-development/18.pack.gz +0 -0
  47. package/.next/cache/webpack/server-development/19.pack.gz +0 -0
  48. package/.next/cache/webpack/server-development/2.pack.gz +0 -0
  49. package/.next/cache/webpack/server-development/20.pack.gz +0 -0
  50. package/.next/cache/webpack/server-development/21.pack.gz +0 -0
  51. package/.next/cache/webpack/server-development/22.pack.gz +0 -0
  52. package/.next/cache/webpack/server-development/23.pack.gz +0 -0
  53. package/.next/cache/webpack/server-development/3.pack.gz +0 -0
  54. package/.next/cache/webpack/server-development/4.pack.gz +0 -0
  55. package/.next/cache/webpack/server-development/5.pack.gz +0 -0
  56. package/.next/cache/webpack/server-development/6.pack.gz +0 -0
  57. package/.next/cache/webpack/server-development/7.pack.gz +0 -0
  58. package/.next/cache/webpack/server-development/8.pack.gz +0 -0
  59. package/.next/cache/webpack/server-development/9.pack.gz +0 -0
  60. package/.next/cache/webpack/server-development/index.pack.gz +0 -0
  61. package/.next/cache/webpack/server-development/index.pack.gz.old +0 -0
  62. package/.next/cache/webpack/server-production/0.pack +0 -0
  63. package/.next/cache/webpack/server-production/1.pack +0 -0
  64. package/.next/cache/webpack/server-production/2.pack +0 -0
  65. package/.next/cache/webpack/server-production/3.pack +0 -0
  66. package/.next/cache/webpack/server-production/4.pack +0 -0
  67. package/.next/cache/webpack/server-production/index.pack +0 -0
  68. package/.next/cache/webpack/server-production/index.pack.old +0 -0
  69. package/.next/server/middleware-build-manifest.js +1 -1
  70. package/.next/server/middleware-react-loadable-manifest.js +1 -1
  71. package/.next/server/next-font-manifest.js +1 -1
  72. package/.next/server/pages/_app.js +3720 -1
  73. package/.next/server/pages/_document.js +86 -1
  74. package/.next/server/pages/_error.js +3742 -1
  75. package/.next/server/pages/api/dictionary/[locale]/[word].js +1116 -2
  76. package/.next/server/pages/api/solve.js +1496 -1
  77. package/.next/server/pages/api/verify.js +946 -1
  78. package/.next/server/pages/api/visit.js +176 -1
  79. package/.next/server/pages/index.js +4312 -1
  80. package/.next/server/pages-manifest.json +10 -1
  81. package/.next/server/vendor-chunks/@swc.js +35 -0
  82. package/.next/server/vendor-chunks/next.js +517 -0
  83. package/.next/server/webpack-api-runtime.js +168 -1
  84. package/.next/server/webpack-runtime.js +237 -1
  85. package/.next/static/chunks/main.js +1285 -0
  86. package/.next/static/chunks/pages/_app.js +4854 -0
  87. package/.next/static/chunks/pages/_error.js +28 -0
  88. package/.next/static/chunks/pages/index.js +717 -0
  89. package/.next/static/chunks/react-refresh.js +62 -0
  90. package/.next/static/chunks/webpack.js +1261 -0
  91. package/.next/static/development/_buildManifest.js +1 -0
  92. package/.next/static/development/_ssgManifest.js +1 -0
  93. package/.next/static/webpack/29a2bd94727d51e6.webpack.hot-update.json +1 -0
  94. package/.next/static/webpack/3754455b7d774808.webpack.hot-update.json +1 -0
  95. package/.next/static/webpack/633457081244afec._.hot-update.json +1 -0
  96. package/.next/static/webpack/b71388f846dd4d8b.webpack.hot-update.json +1 -0
  97. package/.next/static/webpack/e7718e8f7cbe05a0.webpack.hot-update.json +1 -0
  98. package/.next/static/webpack/pages/_app.29a2bd94727d51e6.hot-update.js +22 -0
  99. package/.next/static/webpack/pages/_app.3754455b7d774808.hot-update.js +262 -0
  100. package/.next/static/webpack/pages/_app.e7718e8f7cbe05a0.hot-update.js +251 -0
  101. package/.next/static/webpack/pages/index.3754455b7d774808.hot-update.js +75 -0
  102. package/.next/static/webpack/pages/index.b71388f846dd4d8b.hot-update.js +22 -0
  103. package/.next/static/webpack/pages/index.e7718e8f7cbe05a0.hot-update.js +32 -0
  104. package/.next/static/webpack/webpack.29a2bd94727d51e6.hot-update.js +18 -0
  105. package/.next/static/webpack/webpack.3754455b7d774808.hot-update.js +18 -0
  106. package/.next/static/webpack/webpack.b71388f846dd4d8b.hot-update.js +18 -0
  107. package/.next/static/webpack/webpack.e7718e8f7cbe05a0.hot-update.js +18 -0
  108. package/.next/trace +17 -44
  109. package/package.json +10 -10
  110. package/src/components/Board/Board.module.scss +14 -0
  111. package/src/components/Board/Board.tsx +8 -1
  112. package/src/components/Board/BoardPure.tsx +76 -21
  113. package/src/components/Board/hooks/useBackgroundImage.tsx +46 -7
  114. package/src/components/Board/hooks/useBoardStyle.ts +8 -3
  115. package/src/components/Board/lib/getCoordinate.ts +11 -0
  116. package/src/components/Board/lib/index.ts +1 -0
  117. package/src/components/Dictionary/Dictionary.tsx +17 -18
  118. package/src/components/EmptyState/EmptyState.tsx +1 -1
  119. package/src/components/Results/Results.module.scss +1 -0
  120. package/src/hooks/useAppLayout.ts +18 -4
  121. package/src/i18n/i18n.ts +15 -15
  122. package/src/i18n/{en.json → languages/english.json} +4 -0
  123. package/src/i18n/{fr.json → languages/french.json} +4 -0
  124. package/src/i18n/{de.json → languages/german.json} +4 -0
  125. package/src/i18n/{fa.json → languages/persian.json} +4 -0
  126. package/src/i18n/{pl.json → languages/polish.json} +4 -0
  127. package/src/i18n/{ro.json → languages/romanian.json} +4 -0
  128. package/src/i18n/{es.json → languages/spanish.json} +4 -0
  129. package/src/lib/extractCharacters.test.ts +3 -5
  130. package/src/lib/extractCharactersByCase.test.ts +3 -5
  131. package/src/modals/SettingsModal/SettingsModal.tsx +11 -1
  132. package/src/modals/SettingsModal/components/ShowCoordinatesSetting/ShowCoordinatesSetting.module.scss +12 -0
  133. package/src/modals/SettingsModal/components/ShowCoordinatesSetting/ShowCoordinatesSetting.tsx +59 -0
  134. package/src/modals/SettingsModal/components/ShowCoordinatesSetting/index.ts +1 -0
  135. package/src/modals/SettingsModal/components/index.ts +1 -0
  136. package/src/parameters/index.ts +1 -0
  137. package/src/state/localStorage.ts +10 -1
  138. package/src/state/sagas.ts +6 -3
  139. package/src/state/selectors.ts +2 -0
  140. package/src/state/slices/settingsInitialState.ts +6 -4
  141. package/src/state/slices/settingsSlice.ts +6 -1
  142. package/src/state/store.ts +1 -1
  143. package/src/styles/mixins.scss +9 -2
  144. package/src/types/index.ts +4 -0
  145. package/tsconfig.json +1 -0
  146. package/.next/BUILD_ID +0 -1
  147. package/.next/export-marker.json +0 -1
  148. package/.next/images-manifest.json +0 -1
  149. package/.next/next-minimal-server.js.nft.json +0 -1
  150. package/.next/next-server.js.nft.json +0 -1
  151. package/.next/prerender-manifest.js +0 -1
  152. package/.next/prerender-manifest.json +0 -1
  153. package/.next/required-server-files.json +0 -1
  154. package/.next/routes-manifest.json +0 -1
  155. package/.next/server/InjectManifest.js.nft.json +0 -1
  156. package/.next/server/chunks/28.js +0 -1
  157. package/.next/server/chunks/331.js +0 -6
  158. package/.next/server/chunks/577.js +0 -1
  159. package/.next/server/chunks/911.js +0 -1
  160. package/.next/server/chunks/977.js +0 -1
  161. package/.next/server/chunks/font-manifest.json +0 -1
  162. package/.next/server/font-manifest.json +0 -1
  163. package/.next/server/functions-config-manifest.json +0 -1
  164. package/.next/server/pages/404.html +0 -1
  165. package/.next/server/pages/404.js.nft.json +0 -1
  166. package/.next/server/pages/500.html +0 -1
  167. package/.next/server/pages/_app.js.nft.json +0 -1
  168. package/.next/server/pages/_document.js.nft.json +0 -1
  169. package/.next/server/pages/_error.js.nft.json +0 -1
  170. package/.next/server/pages/api/dictionary/[locale]/[word].js.nft.json +0 -1
  171. package/.next/server/pages/api/dictionary/[locale].js +0 -1
  172. package/.next/server/pages/api/dictionary/[locale].js.nft.json +0 -1
  173. package/.next/server/pages/api/solve.js.nft.json +0 -1
  174. package/.next/server/pages/api/verify.js.nft.json +0 -1
  175. package/.next/server/pages/api/visit.js.nft.json +0 -1
  176. package/.next/server/pages/index.html +0 -1
  177. package/.next/server/pages/index.js.nft.json +0 -1
  178. package/.next/server/pages/index.json +0 -1
  179. package/.next/static/chunks/framework-1728d40275bc359a.js +0 -49
  180. package/.next/static/chunks/main-5fb7abbfc135de15.js +0 -1
  181. package/.next/static/chunks/pages/404-b6e238bb4117d451.js +0 -1
  182. package/.next/static/chunks/pages/_app-b95404c40a0092e6.js +0 -17
  183. package/.next/static/chunks/pages/_error-db043fa3544f8809.js +0 -1
  184. package/.next/static/chunks/pages/index-59d569ef79bc2580.js +0 -1
  185. package/.next/static/chunks/webpack-6ef43a8d4a395f49.js +0 -1
  186. package/.next/static/css/8fa2fb99b90e109e.css +0 -1
  187. package/.next/static/css/c80ebc6fd13311f1.css +0 -2
  188. package/.next/static/jyVoCYlAT5PMzOeavr5AX/_buildManifest.js +0 -1
  189. package/.next/static/jyVoCYlAT5PMzOeavr5AX/_ssgManifest.js +0 -1
  190. /package/.next/static/chunks/{polyfills-c67a75d1b6f99dc8.js → polyfills.js} +0 -0
@@ -1 +1,176 @@
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
+ "use strict";
2
+ /*
3
+ * ATTENTION: An "eval-source-map" devtool has been used.
4
+ * This devtool is neither made for production nor for readable output files.
5
+ * It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools.
6
+ * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/)
7
+ * or disable the default devtool with "devtool: false".
8
+ * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/).
9
+ */
10
+ (() => {
11
+ var exports = {};
12
+ exports.id = "pages/api/visit";
13
+ exports.ids = ["pages/api/visit"];
14
+ exports.modules = {
15
+
16
+ /***/ "next/dist/compiled/next-server/pages-api.runtime.dev.js":
17
+ /*!**************************************************************************!*\
18
+ !*** external "next/dist/compiled/next-server/pages-api.runtime.dev.js" ***!
19
+ \**************************************************************************/
20
+ /***/ ((module) => {
21
+
22
+ module.exports = require("next/dist/compiled/next-server/pages-api.runtime.dev.js");
23
+
24
+ /***/ }),
25
+
26
+ /***/ "winston":
27
+ /*!**************************!*\
28
+ !*** external "winston" ***!
29
+ \**************************/
30
+ /***/ ((module) => {
31
+
32
+ module.exports = require("winston");
33
+
34
+ /***/ }),
35
+
36
+ /***/ "os":
37
+ /*!*********************!*\
38
+ !*** external "os" ***!
39
+ \*********************/
40
+ /***/ ((module) => {
41
+
42
+ module.exports = require("os");
43
+
44
+ /***/ }),
45
+
46
+ /***/ "path":
47
+ /*!***********************!*\
48
+ !*** external "path" ***!
49
+ \***********************/
50
+ /***/ ((module) => {
51
+
52
+ module.exports = require("path");
53
+
54
+ /***/ }),
55
+
56
+ /***/ "(api)/../../node_modules/next/dist/build/webpack/loaders/next-route-loader/index.js?kind=PAGES_API&page=%2Fapi%2Fvisit&preferredRegion=&absolutePagePath=.%2Fsrc%2Fpages%2Fapi%2Fvisit.ts&middlewareConfigBase64=e30%3D!":
57
+ /*!**************************************************************************************************************************************************************************************************************************!*\
58
+ !*** ../../node_modules/next/dist/build/webpack/loaders/next-route-loader/index.js?kind=PAGES_API&page=%2Fapi%2Fvisit&preferredRegion=&absolutePagePath=.%2Fsrc%2Fpages%2Fapi%2Fvisit.ts&middlewareConfigBase64=e30%3D! ***!
59
+ \**************************************************************************************************************************************************************************************************************************/
60
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
61
+
62
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ config: () => (/* binding */ config),\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__),\n/* harmony export */ routeModule: () => (/* binding */ routeModule)\n/* harmony export */ });\n/* harmony import */ var next_dist_server_future_route_modules_pages_api_module_compiled__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! next/dist/server/future/route-modules/pages-api/module.compiled */ \"(api)/../../node_modules/next/dist/server/future/route-modules/pages-api/module.compiled.js\");\n/* harmony import */ var next_dist_server_future_route_modules_pages_api_module_compiled__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(next_dist_server_future_route_modules_pages_api_module_compiled__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var next_dist_server_future_route_kind__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! next/dist/server/future/route-kind */ \"(api)/../../node_modules/next/dist/server/future/route-kind.js\");\n/* harmony import */ var next_dist_build_templates_helpers__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! next/dist/build/templates/helpers */ \"(api)/../../node_modules/next/dist/build/templates/helpers.js\");\n/* harmony import */ var _src_pages_api_visit_ts__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./src/pages/api/visit.ts */ \"(api)/./src/pages/api/visit.ts\");\n\n\n\n// Import the userland code.\n\n// Re-export the handler (should be the default export).\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ((0,next_dist_build_templates_helpers__WEBPACK_IMPORTED_MODULE_2__.hoist)(_src_pages_api_visit_ts__WEBPACK_IMPORTED_MODULE_3__, \"default\"));\n// Re-export config.\nconst config = (0,next_dist_build_templates_helpers__WEBPACK_IMPORTED_MODULE_2__.hoist)(_src_pages_api_visit_ts__WEBPACK_IMPORTED_MODULE_3__, \"config\");\n// Create and export the route module that will be consumed.\nconst routeModule = new next_dist_server_future_route_modules_pages_api_module_compiled__WEBPACK_IMPORTED_MODULE_0__.PagesAPIRouteModule({\n definition: {\n kind: next_dist_server_future_route_kind__WEBPACK_IMPORTED_MODULE_1__.RouteKind.PAGES_API,\n page: \"/api/visit\",\n pathname: \"/api/visit\",\n // The following aren't used in production.\n bundlePath: \"\",\n filename: \"\"\n },\n userland: _src_pages_api_visit_ts__WEBPACK_IMPORTED_MODULE_3__\n});\n\n//# sourceMappingURL=pages-api.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwaSkvLi4vLi4vbm9kZV9tb2R1bGVzL25leHQvZGlzdC9idWlsZC93ZWJwYWNrL2xvYWRlcnMvbmV4dC1yb3V0ZS1sb2FkZXIvaW5kZXguanM/a2luZD1QQUdFU19BUEkmcGFnZT0lMkZhcGklMkZ2aXNpdCZwcmVmZXJyZWRSZWdpb249JmFic29sdXRlUGFnZVBhdGg9LiUyRnNyYyUyRnBhZ2VzJTJGYXBpJTJGdmlzaXQudHMmbWlkZGxld2FyZUNvbmZpZ0Jhc2U2ND1lMzAlM0QhIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQXNHO0FBQ3ZDO0FBQ0w7QUFDMUQ7QUFDcUQ7QUFDckQ7QUFDQSxpRUFBZSx3RUFBSyxDQUFDLG9EQUFRLFlBQVksRUFBQztBQUMxQztBQUNPLGVBQWUsd0VBQUssQ0FBQyxvREFBUTtBQUNwQztBQUNPLHdCQUF3QixnSEFBbUI7QUFDbEQ7QUFDQSxjQUFjLHlFQUFTO0FBQ3ZCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0wsWUFBWTtBQUNaLENBQUM7O0FBRUQiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9Ac2NyYWJibGUtc29sdmVyL3NjcmFiYmxlLXNvbHZlci8/OGU3MiJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQYWdlc0FQSVJvdXRlTW9kdWxlIH0gZnJvbSBcIm5leHQvZGlzdC9zZXJ2ZXIvZnV0dXJlL3JvdXRlLW1vZHVsZXMvcGFnZXMtYXBpL21vZHVsZS5jb21waWxlZFwiO1xuaW1wb3J0IHsgUm91dGVLaW5kIH0gZnJvbSBcIm5leHQvZGlzdC9zZXJ2ZXIvZnV0dXJlL3JvdXRlLWtpbmRcIjtcbmltcG9ydCB7IGhvaXN0IH0gZnJvbSBcIm5leHQvZGlzdC9idWlsZC90ZW1wbGF0ZXMvaGVscGVyc1wiO1xuLy8gSW1wb3J0IHRoZSB1c2VybGFuZCBjb2RlLlxuaW1wb3J0ICogYXMgdXNlcmxhbmQgZnJvbSBcIi4vc3JjL3BhZ2VzL2FwaS92aXNpdC50c1wiO1xuLy8gUmUtZXhwb3J0IHRoZSBoYW5kbGVyIChzaG91bGQgYmUgdGhlIGRlZmF1bHQgZXhwb3J0KS5cbmV4cG9ydCBkZWZhdWx0IGhvaXN0KHVzZXJsYW5kLCBcImRlZmF1bHRcIik7XG4vLyBSZS1leHBvcnQgY29uZmlnLlxuZXhwb3J0IGNvbnN0IGNvbmZpZyA9IGhvaXN0KHVzZXJsYW5kLCBcImNvbmZpZ1wiKTtcbi8vIENyZWF0ZSBhbmQgZXhwb3J0IHRoZSByb3V0ZSBtb2R1bGUgdGhhdCB3aWxsIGJlIGNvbnN1bWVkLlxuZXhwb3J0IGNvbnN0IHJvdXRlTW9kdWxlID0gbmV3IFBhZ2VzQVBJUm91dGVNb2R1bGUoe1xuICAgIGRlZmluaXRpb246IHtcbiAgICAgICAga2luZDogUm91dGVLaW5kLlBBR0VTX0FQSSxcbiAgICAgICAgcGFnZTogXCIvYXBpL3Zpc2l0XCIsXG4gICAgICAgIHBhdGhuYW1lOiBcIi9hcGkvdmlzaXRcIixcbiAgICAgICAgLy8gVGhlIGZvbGxvd2luZyBhcmVuJ3QgdXNlZCBpbiBwcm9kdWN0aW9uLlxuICAgICAgICBidW5kbGVQYXRoOiBcIlwiLFxuICAgICAgICBmaWxlbmFtZTogXCJcIlxuICAgIH0sXG4gICAgdXNlcmxhbmRcbn0pO1xuXG4vLyMgc291cmNlTWFwcGluZ1VSTD1wYWdlcy1hcGkuanMubWFwIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(api)/../../node_modules/next/dist/build/webpack/loaders/next-route-loader/index.js?kind=PAGES_API&page=%2Fapi%2Fvisit&preferredRegion=&absolutePagePath=.%2Fsrc%2Fpages%2Fapi%2Fvisit.ts&middlewareConfigBase64=e30%3D!\n");
63
+
64
+ /***/ }),
65
+
66
+ /***/ "(api)/./src/api/getServerLoggingData.ts":
67
+ /*!*****************************************!*\
68
+ !*** ./src/api/getServerLoggingData.ts ***!
69
+ \*****************************************/
70
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
71
+
72
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\nconst getServerLoggingData = (request)=>({\n origin: request.headers.origin,\n referer: request.headers.referer,\n userAgent: request.headers[\"user-agent\"],\n xForwardedFor: request.headers[\"x-forwarded-for\"],\n xRealIp: request.headers[\"x-real-ip\"]\n });\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (getServerLoggingData);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwaSkvLi9zcmMvYXBpL2dldFNlcnZlckxvZ2dpbmdEYXRhLnRzIiwibWFwcGluZ3MiOiI7Ozs7QUFVQSxNQUFNQSx1QkFBdUIsQ0FBQ0MsVUFBZ0Q7UUFDNUVDLFFBQVFELFFBQVFFLE9BQU8sQ0FBQ0QsTUFBTTtRQUM5QkUsU0FBU0gsUUFBUUUsT0FBTyxDQUFDQyxPQUFPO1FBQ2hDQyxXQUFXSixRQUFRRSxPQUFPLENBQUMsYUFBYTtRQUN4Q0csZUFBZUwsUUFBUUUsT0FBTyxDQUFDLGtCQUFrQjtRQUNqREksU0FBU04sUUFBUUUsT0FBTyxDQUFDLFlBQVk7SUFDdkM7QUFFQSxpRUFBZUgsb0JBQW9CQSxFQUFDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vQHNjcmFiYmxlLXNvbHZlci9zY3JhYmJsZS1zb2x2ZXIvLi9zcmMvYXBpL2dldFNlcnZlckxvZ2dpbmdEYXRhLnRzP2UwOWIiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmV4dEFwaVJlcXVlc3QgfSBmcm9tICduZXh0JztcblxuaW50ZXJmYWNlIFNlcnZlckxvZ2dpbmdEYXRhIHtcbiAgb3JpZ2luPzogc3RyaW5nO1xuICByZWZlcmVyPzogc3RyaW5nO1xuICB1c2VyQWdlbnQ/OiBzdHJpbmc7XG4gIHhGb3J3YXJkZWRGb3I/OiBzdHJpbmcgfCBzdHJpbmdbXTtcbiAgeFJlYWxJcD86IHN0cmluZyB8IHN0cmluZ1tdO1xufVxuXG5jb25zdCBnZXRTZXJ2ZXJMb2dnaW5nRGF0YSA9IChyZXF1ZXN0OiBOZXh0QXBpUmVxdWVzdCk6IFNlcnZlckxvZ2dpbmdEYXRhID0+ICh7XG4gIG9yaWdpbjogcmVxdWVzdC5oZWFkZXJzLm9yaWdpbixcbiAgcmVmZXJlcjogcmVxdWVzdC5oZWFkZXJzLnJlZmVyZXIsXG4gIHVzZXJBZ2VudDogcmVxdWVzdC5oZWFkZXJzWyd1c2VyLWFnZW50J10sXG4gIHhGb3J3YXJkZWRGb3I6IHJlcXVlc3QuaGVhZGVyc1sneC1mb3J3YXJkZWQtZm9yJ10sXG4gIHhSZWFsSXA6IHJlcXVlc3QuaGVhZGVyc1sneC1yZWFsLWlwJ10sXG59KTtcblxuZXhwb3J0IGRlZmF1bHQgZ2V0U2VydmVyTG9nZ2luZ0RhdGE7XG4iXSwibmFtZXMiOlsiZ2V0U2VydmVyTG9nZ2luZ0RhdGEiLCJyZXF1ZXN0Iiwib3JpZ2luIiwiaGVhZGVycyIsInJlZmVyZXIiLCJ1c2VyQWdlbnQiLCJ4Rm9yd2FyZGVkRm9yIiwieFJlYWxJcCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(api)/./src/api/getServerLoggingData.ts\n");
73
+
74
+ /***/ }),
75
+
76
+ /***/ "(api)/./src/api/index.ts":
77
+ /*!**************************!*\
78
+ !*** ./src/api/index.ts ***!
79
+ \**************************/
80
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
81
+
82
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getServerLoggingData: () => (/* reexport safe */ _getServerLoggingData__WEBPACK_IMPORTED_MODULE_0__[\"default\"]),\n/* harmony export */ isBoardValid: () => (/* reexport safe */ _isBoardValid__WEBPACK_IMPORTED_MODULE_1__[\"default\"]),\n/* harmony export */ isCellValid: () => (/* reexport safe */ _isCellValid__WEBPACK_IMPORTED_MODULE_2__[\"default\"]),\n/* harmony export */ isCharacterValid: () => (/* reexport safe */ _isCharacterValid__WEBPACK_IMPORTED_MODULE_3__[\"default\"]),\n/* harmony export */ isRowValid: () => (/* reexport safe */ _isRowValid__WEBPACK_IMPORTED_MODULE_4__[\"default\"])\n/* harmony export */ });\n/* harmony import */ var _getServerLoggingData__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getServerLoggingData */ \"(api)/./src/api/getServerLoggingData.ts\");\n/* harmony import */ var _isBoardValid__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./isBoardValid */ \"(api)/./src/api/isBoardValid.ts\");\n/* harmony import */ var _isCellValid__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./isCellValid */ \"(api)/./src/api/isCellValid.ts\");\n/* harmony import */ var _isCharacterValid__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./isCharacterValid */ \"(api)/./src/api/isCharacterValid.ts\");\n/* harmony import */ var _isRowValid__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./isRowValid */ \"(api)/./src/api/isRowValid.ts\");\n\n\n\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwaSkvLi9zcmMvYXBpL2luZGV4LnRzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFBeUU7QUFDaEI7QUFDRjtBQUNVO0FBQ1oiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9Ac2NyYWJibGUtc29sdmVyL3NjcmFiYmxlLXNvbHZlci8uL3NyYy9hcGkvaW5kZXgudHM/MDI2MCJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBkZWZhdWx0IGFzIGdldFNlcnZlckxvZ2dpbmdEYXRhIH0gZnJvbSAnLi9nZXRTZXJ2ZXJMb2dnaW5nRGF0YSc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIGlzQm9hcmRWYWxpZCB9IGZyb20gJy4vaXNCb2FyZFZhbGlkJztcbmV4cG9ydCB7IGRlZmF1bHQgYXMgaXNDZWxsVmFsaWQgfSBmcm9tICcuL2lzQ2VsbFZhbGlkJztcbmV4cG9ydCB7IGRlZmF1bHQgYXMgaXNDaGFyYWN0ZXJWYWxpZCB9IGZyb20gJy4vaXNDaGFyYWN0ZXJWYWxpZCc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIGlzUm93VmFsaWQgfSBmcm9tICcuL2lzUm93VmFsaWQnO1xuIl0sIm5hbWVzIjpbImRlZmF1bHQiLCJnZXRTZXJ2ZXJMb2dnaW5nRGF0YSIsImlzQm9hcmRWYWxpZCIsImlzQ2VsbFZhbGlkIiwiaXNDaGFyYWN0ZXJWYWxpZCIsImlzUm93VmFsaWQiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(api)/./src/api/index.ts\n");
83
+
84
+ /***/ }),
85
+
86
+ /***/ "(api)/./src/api/isBoardValid.ts":
87
+ /*!*********************************!*\
88
+ !*** ./src/api/isBoardValid.ts ***!
89
+ \*********************************/
90
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
91
+
92
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _isRowValid__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./isRowValid */ \"(api)/./src/api/isRowValid.ts\");\n\nconst isBoardValid = (board, config)=>{\n if (board.length !== config.boardHeight) {\n return false;\n }\n for (const row of board){\n if (!(0,_isRowValid__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(row, config)) {\n return false;\n }\n }\n return areTwoCharacterTilesValid(board, config);\n};\nconst areTwoCharacterTilesValid = (board, config)=>{\n const cells = board.flat().filter((cell)=>cell && cell.tile && config.isTwoCharacterTilePrefix(cell.tile.character));\n for (const cell of cells){\n for (const characters of config.twoCharacterTiles){\n const canCheckDown = cell.y + 1 < board.length;\n const canCheckRight = cell.x + 1 < board[0].length;\n const cellDown = board[cell.y + 1][cell.x];\n const cellRight = board[cell.y][cell.x + 1];\n const collidesDown = canCheckDown && cellDown.tile && cellDown.tile.character === characters[1];\n const collidesRight = canCheckRight && cellRight.tile && cellRight.tile.character === characters[1];\n const collides = collidesDown || collidesRight;\n if (cell.tile && characters.startsWith(cell.tile.character) && collides) {\n return false;\n }\n }\n }\n return true;\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (isBoardValid);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwaSkvLi9zcmMvYXBpL2lzQm9hcmRWYWxpZC50cyIsIm1hcHBpbmdzIjoiOzs7OztBQUVzQztBQUV0QyxNQUFNQyxlQUFlLENBQUNDLE9BQWtCQztJQUN0QyxJQUFJRCxNQUFNRSxNQUFNLEtBQUtELE9BQU9FLFdBQVcsRUFBRTtRQUN2QyxPQUFPO0lBQ1Q7SUFFQSxLQUFLLE1BQU1DLE9BQU9KLE1BQU87UUFDdkIsSUFBSSxDQUFDRix1REFBVUEsQ0FBQ00sS0FBS0gsU0FBUztZQUM1QixPQUFPO1FBQ1Q7SUFDRjtJQUVBLE9BQU9JLDBCQUEwQkwsT0FBT0M7QUFDMUM7QUFFQSxNQUFNSSw0QkFBNEIsQ0FBQ0wsT0FBcUJDO0lBQ3RELE1BQU1LLFFBQW9CTixNQUN2Qk8sSUFBSSxHQUNKQyxNQUFNLENBQUMsQ0FBQ0MsT0FBU0EsUUFBUUEsS0FBS0MsSUFBSSxJQUFJVCxPQUFPVSx3QkFBd0IsQ0FBQ0YsS0FBS0MsSUFBSSxDQUFDRSxTQUFTO0lBRTVGLEtBQUssTUFBTUgsUUFBUUgsTUFBTztRQUN4QixLQUFLLE1BQU1PLGNBQWNaLE9BQU9hLGlCQUFpQixDQUFFO1lBQ2pELE1BQU1DLGVBQWVOLEtBQUtPLENBQUMsR0FBRyxJQUFJaEIsTUFBTUUsTUFBTTtZQUM5QyxNQUFNZSxnQkFBZ0JSLEtBQUtTLENBQUMsR0FBRyxJQUFJbEIsS0FBSyxDQUFDLEVBQUUsQ0FBQ0UsTUFBTTtZQUNsRCxNQUFNaUIsV0FBV25CLEtBQUssQ0FBQ1MsS0FBS08sQ0FBQyxHQUFHLEVBQUUsQ0FBQ1AsS0FBS1MsQ0FBQyxDQUFDO1lBQzFDLE1BQU1FLFlBQVlwQixLQUFLLENBQUNTLEtBQUtPLENBQUMsQ0FBQyxDQUFDUCxLQUFLUyxDQUFDLEdBQUcsRUFBRTtZQUMzQyxNQUFNRyxlQUFlTixnQkFBZ0JJLFNBQVNULElBQUksSUFBSVMsU0FBU1QsSUFBSSxDQUFDRSxTQUFTLEtBQUtDLFVBQVUsQ0FBQyxFQUFFO1lBQy9GLE1BQU1TLGdCQUFnQkwsaUJBQWlCRyxVQUFVVixJQUFJLElBQUlVLFVBQVVWLElBQUksQ0FBQ0UsU0FBUyxLQUFLQyxVQUFVLENBQUMsRUFBRTtZQUNuRyxNQUFNVSxXQUFXRixnQkFBZ0JDO1lBRWpDLElBQUliLEtBQUtDLElBQUksSUFBSUcsV0FBV1csVUFBVSxDQUFDZixLQUFLQyxJQUFJLENBQUNFLFNBQVMsS0FBS1csVUFBVTtnQkFDdkUsT0FBTztZQUNUO1FBQ0Y7SUFDRjtJQUVBLE9BQU87QUFDVDtBQUVBLGlFQUFleEIsWUFBWUEsRUFBQyIsInNvdXJjZXMiOlsid2VicGFjazovL0BzY3JhYmJsZS1zb2x2ZXIvc2NyYWJibGUtc29sdmVyLy4vc3JjL2FwaS9pc0JvYXJkVmFsaWQudHM/MjlkNiJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCb2FyZEpzb24sIENlbGxKc29uLCBDb25maWcgfSBmcm9tICdAc2NyYWJibGUtc29sdmVyL3R5cGVzJztcblxuaW1wb3J0IGlzUm93VmFsaWQgZnJvbSAnLi9pc1Jvd1ZhbGlkJztcblxuY29uc3QgaXNCb2FyZFZhbGlkID0gKGJvYXJkOiBCb2FyZEpzb24sIGNvbmZpZzogQ29uZmlnKTogYm9vbGVhbiA9PiB7XG4gIGlmIChib2FyZC5sZW5ndGggIT09IGNvbmZpZy5ib2FyZEhlaWdodCkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGZvciAoY29uc3Qgcm93IG9mIGJvYXJkKSB7XG4gICAgaWYgKCFpc1Jvd1ZhbGlkKHJvdywgY29uZmlnKSkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBhcmVUd29DaGFyYWN0ZXJUaWxlc1ZhbGlkKGJvYXJkLCBjb25maWcpO1xufTtcblxuY29uc3QgYXJlVHdvQ2hhcmFjdGVyVGlsZXNWYWxpZCA9IChib2FyZDogQ2VsbEpzb25bXVtdLCBjb25maWc6IENvbmZpZyk6IGJvb2xlYW4gPT4ge1xuICBjb25zdCBjZWxsczogQ2VsbEpzb25bXSA9IGJvYXJkXG4gICAgLmZsYXQoKVxuICAgIC5maWx0ZXIoKGNlbGwpID0+IGNlbGwgJiYgY2VsbC50aWxlICYmIGNvbmZpZy5pc1R3b0NoYXJhY3RlclRpbGVQcmVmaXgoY2VsbC50aWxlLmNoYXJhY3RlcikpO1xuXG4gIGZvciAoY29uc3QgY2VsbCBvZiBjZWxscykge1xuICAgIGZvciAoY29uc3QgY2hhcmFjdGVycyBvZiBjb25maWcudHdvQ2hhcmFjdGVyVGlsZXMpIHtcbiAgICAgIGNvbnN0IGNhbkNoZWNrRG93biA9IGNlbGwueSArIDEgPCBib2FyZC5sZW5ndGg7XG4gICAgICBjb25zdCBjYW5DaGVja1JpZ2h0ID0gY2VsbC54ICsgMSA8IGJvYXJkWzBdLmxlbmd0aDtcbiAgICAgIGNvbnN0IGNlbGxEb3duID0gYm9hcmRbY2VsbC55ICsgMV1bY2VsbC54XTtcbiAgICAgIGNvbnN0IGNlbGxSaWdodCA9IGJvYXJkW2NlbGwueV1bY2VsbC54ICsgMV07XG4gICAgICBjb25zdCBjb2xsaWRlc0Rvd24gPSBjYW5DaGVja0Rvd24gJiYgY2VsbERvd24udGlsZSAmJiBjZWxsRG93bi50aWxlLmNoYXJhY3RlciA9PT0gY2hhcmFjdGVyc1sxXTtcbiAgICAgIGNvbnN0IGNvbGxpZGVzUmlnaHQgPSBjYW5DaGVja1JpZ2h0ICYmIGNlbGxSaWdodC50aWxlICYmIGNlbGxSaWdodC50aWxlLmNoYXJhY3RlciA9PT0gY2hhcmFjdGVyc1sxXTtcbiAgICAgIGNvbnN0IGNvbGxpZGVzID0gY29sbGlkZXNEb3duIHx8IGNvbGxpZGVzUmlnaHQ7XG5cbiAgICAgIGlmIChjZWxsLnRpbGUgJiYgY2hhcmFjdGVycy5zdGFydHNXaXRoKGNlbGwudGlsZS5jaGFyYWN0ZXIpICYmIGNvbGxpZGVzKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gdHJ1ZTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IGlzQm9hcmRWYWxpZDtcbiJdLCJuYW1lcyI6WyJpc1Jvd1ZhbGlkIiwiaXNCb2FyZFZhbGlkIiwiYm9hcmQiLCJjb25maWciLCJsZW5ndGgiLCJib2FyZEhlaWdodCIsInJvdyIsImFyZVR3b0NoYXJhY3RlclRpbGVzVmFsaWQiLCJjZWxscyIsImZsYXQiLCJmaWx0ZXIiLCJjZWxsIiwidGlsZSIsImlzVHdvQ2hhcmFjdGVyVGlsZVByZWZpeCIsImNoYXJhY3RlciIsImNoYXJhY3RlcnMiLCJ0d29DaGFyYWN0ZXJUaWxlcyIsImNhbkNoZWNrRG93biIsInkiLCJjYW5DaGVja1JpZ2h0IiwieCIsImNlbGxEb3duIiwiY2VsbFJpZ2h0IiwiY29sbGlkZXNEb3duIiwiY29sbGlkZXNSaWdodCIsImNvbGxpZGVzIiwic3RhcnRzV2l0aCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(api)/./src/api/isBoardValid.ts\n");
93
+
94
+ /***/ }),
95
+
96
+ /***/ "(api)/./src/api/isCellValid.ts":
97
+ /*!********************************!*\
98
+ !*** ./src/api/isCellValid.ts ***!
99
+ \********************************/
100
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
101
+
102
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _isCharacterValid__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./isCharacterValid */ \"(api)/./src/api/isCharacterValid.ts\");\n\nconst isCellValid = (cell, config)=>{\n const { isEmpty, tile, x, y } = cell;\n if (x < 0 || x >= config.boardWidth) {\n return false;\n }\n if (y < 0 || y >= config.boardHeight) {\n return false;\n }\n if (isEmpty && tile !== null) {\n return false;\n }\n if (tile !== null && !(0,_isCharacterValid__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(tile.character)) {\n return false;\n }\n return true;\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (isCellValid);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwaSkvLi9zcmMvYXBpL2lzQ2VsbFZhbGlkLnRzIiwibWFwcGluZ3MiOiI7Ozs7O0FBRWtEO0FBRWxELE1BQU1DLGNBQWMsQ0FBQ0MsTUFBZ0JDO0lBQ25DLE1BQU0sRUFBRUMsT0FBTyxFQUFFQyxJQUFJLEVBQUVDLENBQUMsRUFBRUMsQ0FBQyxFQUFFLEdBQUdMO0lBRWhDLElBQUlJLElBQUksS0FBS0EsS0FBS0gsT0FBT0ssVUFBVSxFQUFFO1FBQ25DLE9BQU87SUFDVDtJQUVBLElBQUlELElBQUksS0FBS0EsS0FBS0osT0FBT00sV0FBVyxFQUFFO1FBQ3BDLE9BQU87SUFDVDtJQUVBLElBQUlMLFdBQVdDLFNBQVMsTUFBTTtRQUM1QixPQUFPO0lBQ1Q7SUFFQSxJQUFJQSxTQUFTLFFBQVEsQ0FBQ0wsNkRBQWdCQSxDQUFDSyxLQUFLSyxTQUFTLEdBQUc7UUFDdEQsT0FBTztJQUNUO0lBRUEsT0FBTztBQUNUO0FBRUEsaUVBQWVULFdBQVdBLEVBQUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9Ac2NyYWJibGUtc29sdmVyL3NjcmFiYmxlLXNvbHZlci8uL3NyYy9hcGkvaXNDZWxsVmFsaWQudHM/MmUxNiJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDZWxsSnNvbiwgQ29uZmlnIH0gZnJvbSAnQHNjcmFiYmxlLXNvbHZlci90eXBlcyc7XG5cbmltcG9ydCBpc0NoYXJhY3RlclZhbGlkIGZyb20gJy4vaXNDaGFyYWN0ZXJWYWxpZCc7XG5cbmNvbnN0IGlzQ2VsbFZhbGlkID0gKGNlbGw6IENlbGxKc29uLCBjb25maWc6IENvbmZpZyk6IGJvb2xlYW4gPT4ge1xuICBjb25zdCB7IGlzRW1wdHksIHRpbGUsIHgsIHkgfSA9IGNlbGw7XG5cbiAgaWYgKHggPCAwIHx8IHggPj0gY29uZmlnLmJvYXJkV2lkdGgpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBpZiAoeSA8IDAgfHwgeSA+PSBjb25maWcuYm9hcmRIZWlnaHQpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBpZiAoaXNFbXB0eSAmJiB0aWxlICE9PSBudWxsKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgaWYgKHRpbGUgIT09IG51bGwgJiYgIWlzQ2hhcmFjdGVyVmFsaWQodGlsZS5jaGFyYWN0ZXIpKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcmV0dXJuIHRydWU7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBpc0NlbGxWYWxpZDtcbiJdLCJuYW1lcyI6WyJpc0NoYXJhY3RlclZhbGlkIiwiaXNDZWxsVmFsaWQiLCJjZWxsIiwiY29uZmlnIiwiaXNFbXB0eSIsInRpbGUiLCJ4IiwieSIsImJvYXJkV2lkdGgiLCJib2FyZEhlaWdodCIsImNoYXJhY3RlciJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(api)/./src/api/isCellValid.ts\n");
103
+
104
+ /***/ }),
105
+
106
+ /***/ "(api)/./src/api/isCharacterValid.ts":
107
+ /*!*************************************!*\
108
+ !*** ./src/api/isCharacterValid.ts ***!
109
+ \*************************************/
110
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
111
+
112
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\nconst TWO_TILE_CHARACTER_LENGTH = 2;\nconst MAX_CHARACTER_LENGTH = TWO_TILE_CHARACTER_LENGTH;\nconst isCharacterValid = (character)=>{\n /*\n * We could be strict here and check whether config.hasCharacter(character) || character === BLANK\n * but since this case won't really affect/break solving, we don't need to worry about it.\n * It's better to display an empty state than error state in UI, so this is a sanity check only.\n */ return character.length !== 0 && character.length <= MAX_CHARACTER_LENGTH;\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (isCharacterValid);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwaSkvLi9zcmMvYXBpL2lzQ2hhcmFjdGVyVmFsaWQudHMiLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE1BQU1BLDRCQUE0QjtBQUNsQyxNQUFNQyx1QkFBdUJEO0FBRTdCLE1BQU1FLG1CQUFtQixDQUFDQztJQUN4Qjs7OztHQUlDLEdBQ0QsT0FBT0EsVUFBVUMsTUFBTSxLQUFLLEtBQUtELFVBQVVDLE1BQU0sSUFBSUg7QUFDdkQ7QUFFQSxpRUFBZUMsZ0JBQWdCQSxFQUFDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vQHNjcmFiYmxlLXNvbHZlci9zY3JhYmJsZS1zb2x2ZXIvLi9zcmMvYXBpL2lzQ2hhcmFjdGVyVmFsaWQudHM/YWQzYyJdLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBUV09fVElMRV9DSEFSQUNURVJfTEVOR1RIID0gMjtcbmNvbnN0IE1BWF9DSEFSQUNURVJfTEVOR1RIID0gVFdPX1RJTEVfQ0hBUkFDVEVSX0xFTkdUSDtcblxuY29uc3QgaXNDaGFyYWN0ZXJWYWxpZCA9IChjaGFyYWN0ZXI6IHN0cmluZyk6IGJvb2xlYW4gPT4ge1xuICAvKlxuICAgKiBXZSBjb3VsZCBiZSBzdHJpY3QgaGVyZSBhbmQgY2hlY2sgd2hldGhlciBjb25maWcuaGFzQ2hhcmFjdGVyKGNoYXJhY3RlcikgfHwgY2hhcmFjdGVyID09PSBCTEFOS1xuICAgKiBidXQgc2luY2UgdGhpcyBjYXNlIHdvbid0IHJlYWxseSBhZmZlY3QvYnJlYWsgc29sdmluZywgd2UgZG9uJ3QgbmVlZCB0byB3b3JyeSBhYm91dCBpdC5cbiAgICogSXQncyBiZXR0ZXIgdG8gZGlzcGxheSBhbiBlbXB0eSBzdGF0ZSB0aGFuIGVycm9yIHN0YXRlIGluIFVJLCBzbyB0aGlzIGlzIGEgc2FuaXR5IGNoZWNrIG9ubHkuXG4gICAqL1xuICByZXR1cm4gY2hhcmFjdGVyLmxlbmd0aCAhPT0gMCAmJiBjaGFyYWN0ZXIubGVuZ3RoIDw9IE1BWF9DSEFSQUNURVJfTEVOR1RIO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgaXNDaGFyYWN0ZXJWYWxpZDtcbiJdLCJuYW1lcyI6WyJUV09fVElMRV9DSEFSQUNURVJfTEVOR1RIIiwiTUFYX0NIQVJBQ1RFUl9MRU5HVEgiLCJpc0NoYXJhY3RlclZhbGlkIiwiY2hhcmFjdGVyIiwibGVuZ3RoIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(api)/./src/api/isCharacterValid.ts\n");
113
+
114
+ /***/ }),
115
+
116
+ /***/ "(api)/./src/api/isRowValid.ts":
117
+ /*!*******************************!*\
118
+ !*** ./src/api/isRowValid.ts ***!
119
+ \*******************************/
120
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
121
+
122
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _isCellValid__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./isCellValid */ \"(api)/./src/api/isCellValid.ts\");\n\nconst isRowValid = (row, config)=>{\n if (row.length !== config.boardWidth) {\n return false;\n }\n for (const cell of row){\n if (!(0,_isCellValid__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(cell, config)) {\n return false;\n }\n }\n return true;\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (isRowValid);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwaSkvLi9zcmMvYXBpL2lzUm93VmFsaWQudHMiLCJtYXBwaW5ncyI6Ijs7Ozs7QUFFd0M7QUFFeEMsTUFBTUMsYUFBYSxDQUFDQyxLQUFpQkM7SUFDbkMsSUFBSUQsSUFBSUUsTUFBTSxLQUFLRCxPQUFPRSxVQUFVLEVBQUU7UUFDcEMsT0FBTztJQUNUO0lBRUEsS0FBSyxNQUFNQyxRQUFRSixJQUFLO1FBQ3RCLElBQUksQ0FBQ0Ysd0RBQVdBLENBQUNNLE1BQU1ILFNBQVM7WUFDOUIsT0FBTztRQUNUO0lBQ0Y7SUFFQSxPQUFPO0FBQ1Q7QUFFQSxpRUFBZUYsVUFBVUEsRUFBQyIsInNvdXJjZXMiOlsid2VicGFjazovL0BzY3JhYmJsZS1zb2x2ZXIvc2NyYWJibGUtc29sdmVyLy4vc3JjL2FwaS9pc1Jvd1ZhbGlkLnRzPzRhY2EiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2VsbEpzb24sIENvbmZpZyB9IGZyb20gJ0BzY3JhYmJsZS1zb2x2ZXIvdHlwZXMnO1xuXG5pbXBvcnQgaXNDZWxsVmFsaWQgZnJvbSAnLi9pc0NlbGxWYWxpZCc7XG5cbmNvbnN0IGlzUm93VmFsaWQgPSAocm93OiBDZWxsSnNvbltdLCBjb25maWc6IENvbmZpZyk6IGJvb2xlYW4gPT4ge1xuICBpZiAocm93Lmxlbmd0aCAhPT0gY29uZmlnLmJvYXJkV2lkdGgpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBmb3IgKGNvbnN0IGNlbGwgb2Ygcm93KSB7XG4gICAgaWYgKCFpc0NlbGxWYWxpZChjZWxsLCBjb25maWcpKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHRydWU7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBpc1Jvd1ZhbGlkO1xuIl0sIm5hbWVzIjpbImlzQ2VsbFZhbGlkIiwiaXNSb3dWYWxpZCIsInJvdyIsImNvbmZpZyIsImxlbmd0aCIsImJvYXJkV2lkdGgiLCJjZWxsIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(api)/./src/api/isRowValid.ts\n");
123
+
124
+ /***/ }),
125
+
126
+ /***/ "(api)/./src/pages/api/visit.ts":
127
+ /*!********************************!*\
128
+ !*** ./src/pages/api/visit.ts ***!
129
+ \********************************/
130
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
131
+
132
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _scrabble_solver_logger__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @scrabble-solver/logger */ \"(api)/../logger/build/index.js\");\n/* harmony import */ var _scrabble_solver_logger__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_scrabble_solver_logger__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var api__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! api */ \"(api)/./src/api/index.ts\");\n\n\nconst visit = async (request, response)=>{\n const meta = (0,api__WEBPACK_IMPORTED_MODULE_1__.getServerLoggingData)(request);\n try {\n _scrabble_solver_logger__WEBPACK_IMPORTED_MODULE_0___default().info(\"visit - request\", {\n meta\n });\n response.status(200).send(true);\n } catch (error) {\n const message = error instanceof Error ? error.message : \"Unknown error\";\n _scrabble_solver_logger__WEBPACK_IMPORTED_MODULE_0___default().error(\"visit - error\", {\n error,\n meta\n });\n response.status(500).send({\n error: \"Server error\",\n message\n });\n }\n};\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (visit);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwaSkvLi9zcmMvcGFnZXMvYXBpL3Zpc2l0LnRzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBNkM7QUFHRjtBQUUzQyxNQUFNRSxRQUFRLE9BQU9DLFNBQXlCQztJQUM1QyxNQUFNQyxPQUFPSix5REFBb0JBLENBQUNFO0lBRWxDLElBQUk7UUFDRkgsbUVBQVcsQ0FBQyxtQkFBbUI7WUFBRUs7UUFBSztRQUN0Q0QsU0FBU0csTUFBTSxDQUFDLEtBQUtDLElBQUksQ0FBQztJQUM1QixFQUFFLE9BQU9DLE9BQU87UUFDZCxNQUFNQyxVQUFVRCxpQkFBaUJFLFFBQVFGLE1BQU1DLE9BQU8sR0FBRztRQUN6RFYsb0VBQVksQ0FBQyxpQkFBaUI7WUFBRVM7WUFBT0o7UUFBSztRQUM1Q0QsU0FBU0csTUFBTSxDQUFDLEtBQUtDLElBQUksQ0FBQztZQUFFQyxPQUFPO1lBQWdCQztRQUFRO0lBQzdEO0FBQ0Y7QUFFQSxpRUFBZVIsS0FBS0EsRUFBQyIsInNvdXJjZXMiOlsid2VicGFjazovL0BzY3JhYmJsZS1zb2x2ZXIvc2NyYWJibGUtc29sdmVyLy4vc3JjL3BhZ2VzL2FwaS92aXNpdC50cz9iZjE4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBsb2dnZXIgZnJvbSAnQHNjcmFiYmxlLXNvbHZlci9sb2dnZXInO1xuaW1wb3J0IHsgTmV4dEFwaVJlcXVlc3QsIE5leHRBcGlSZXNwb25zZSB9IGZyb20gJ25leHQnO1xuXG5pbXBvcnQgeyBnZXRTZXJ2ZXJMb2dnaW5nRGF0YSB9IGZyb20gJ2FwaSc7XG5cbmNvbnN0IHZpc2l0ID0gYXN5bmMgKHJlcXVlc3Q6IE5leHRBcGlSZXF1ZXN0LCByZXNwb25zZTogTmV4dEFwaVJlc3BvbnNlKTogUHJvbWlzZTx2b2lkPiA9PiB7XG4gIGNvbnN0IG1ldGEgPSBnZXRTZXJ2ZXJMb2dnaW5nRGF0YShyZXF1ZXN0KTtcblxuICB0cnkge1xuICAgIGxvZ2dlci5pbmZvKCd2aXNpdCAtIHJlcXVlc3QnLCB7IG1ldGEgfSk7XG4gICAgcmVzcG9uc2Uuc3RhdHVzKDIwMCkuc2VuZCh0cnVlKTtcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICBjb25zdCBtZXNzYWdlID0gZXJyb3IgaW5zdGFuY2VvZiBFcnJvciA/IGVycm9yLm1lc3NhZ2UgOiAnVW5rbm93biBlcnJvcic7XG4gICAgbG9nZ2VyLmVycm9yKCd2aXNpdCAtIGVycm9yJywgeyBlcnJvciwgbWV0YSB9KTtcbiAgICByZXNwb25zZS5zdGF0dXMoNTAwKS5zZW5kKHsgZXJyb3I6ICdTZXJ2ZXIgZXJyb3InLCBtZXNzYWdlIH0pO1xuICB9XG59O1xuXG5leHBvcnQgZGVmYXVsdCB2aXNpdDtcbiJdLCJuYW1lcyI6WyJsb2dnZXIiLCJnZXRTZXJ2ZXJMb2dnaW5nRGF0YSIsInZpc2l0IiwicmVxdWVzdCIsInJlc3BvbnNlIiwibWV0YSIsImluZm8iLCJzdGF0dXMiLCJzZW5kIiwiZXJyb3IiLCJtZXNzYWdlIiwiRXJyb3IiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(api)/./src/pages/api/visit.ts\n");
133
+
134
+ /***/ }),
135
+
136
+ /***/ "(api)/../logger/build/constants.js":
137
+ /*!************************************!*\
138
+ !*** ../logger/build/constants.js ***!
139
+ \************************************/
140
+ /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
141
+
142
+ eval("\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\nexports.OUTPUT_DIRECTORY = void 0;\nconst os_1 = __importDefault(__webpack_require__(/*! os */ \"os\"));\nconst path_1 = __importDefault(__webpack_require__(/*! path */ \"path\"));\nexports.OUTPUT_DIRECTORY = path_1.default.resolve(os_1.default.homedir(), '.scrabble-solver', 'logs');\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwaSkvLi4vbG9nZ2VyL2J1aWxkL2NvbnN0YW50cy5qcyIsIm1hcHBpbmdzIjoiQUFBYTtBQUNiO0FBQ0EsNkNBQTZDO0FBQzdDO0FBQ0EsOENBQTZDLEVBQUUsYUFBYSxFQUFDO0FBQzdELHdCQUF3QjtBQUN4Qiw2QkFBNkIsbUJBQU8sQ0FBQyxjQUFJO0FBQ3pDLCtCQUErQixtQkFBTyxDQUFDLGtCQUFNO0FBQzdDLHdCQUF3QiIsInNvdXJjZXMiOlsid2VicGFjazovL0BzY3JhYmJsZS1zb2x2ZXIvc2NyYWJibGUtc29sdmVyLy4uL2xvZ2dlci9idWlsZC9jb25zdGFudHMuanM/MTc4OCJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcbnZhciBfX2ltcG9ydERlZmF1bHQgPSAodGhpcyAmJiB0aGlzLl9faW1wb3J0RGVmYXVsdCkgfHwgZnVuY3Rpb24gKG1vZCkge1xuICAgIHJldHVybiAobW9kICYmIG1vZC5fX2VzTW9kdWxlKSA/IG1vZCA6IHsgXCJkZWZhdWx0XCI6IG1vZCB9O1xufTtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIl9fZXNNb2R1bGVcIiwgeyB2YWx1ZTogdHJ1ZSB9KTtcbmV4cG9ydHMuT1VUUFVUX0RJUkVDVE9SWSA9IHZvaWQgMDtcbmNvbnN0IG9zXzEgPSBfX2ltcG9ydERlZmF1bHQocmVxdWlyZShcIm9zXCIpKTtcbmNvbnN0IHBhdGhfMSA9IF9faW1wb3J0RGVmYXVsdChyZXF1aXJlKFwicGF0aFwiKSk7XG5leHBvcnRzLk9VVFBVVF9ESVJFQ1RPUlkgPSBwYXRoXzEuZGVmYXVsdC5yZXNvbHZlKG9zXzEuZGVmYXVsdC5ob21lZGlyKCksICcuc2NyYWJibGUtc29sdmVyJywgJ2xvZ3MnKTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(api)/../logger/build/constants.js\n");
143
+
144
+ /***/ }),
145
+
146
+ /***/ "(api)/../logger/build/index.js":
147
+ /*!********************************!*\
148
+ !*** ../logger/build/index.js ***!
149
+ \********************************/
150
+ /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
151
+
152
+ eval("\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\nexports[\"default\"] = void 0;\nvar logger_1 = __webpack_require__(/*! ./logger */ \"(api)/../logger/build/logger.js\");\nObject.defineProperty(exports, \"default\", ({ enumerable: true, get: function () { return __importDefault(logger_1).default; } }));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwaSkvLi4vbG9nZ2VyL2J1aWxkL2luZGV4LmpzIiwibWFwcGluZ3MiOiJBQUFhO0FBQ2I7QUFDQSw2Q0FBNkM7QUFDN0M7QUFDQSw4Q0FBNkMsRUFBRSxhQUFhLEVBQUM7QUFDN0Qsa0JBQWU7QUFDZixlQUFlLG1CQUFPLENBQUMsaURBQVU7QUFDakMsMkNBQTBDLEVBQUUscUNBQXFDLDZDQUE2QyxFQUFDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vQHNjcmFiYmxlLXNvbHZlci9zY3JhYmJsZS1zb2x2ZXIvLi4vbG9nZ2VyL2J1aWxkL2luZGV4LmpzPzIzNWUiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG52YXIgX19pbXBvcnREZWZhdWx0ID0gKHRoaXMgJiYgdGhpcy5fX2ltcG9ydERlZmF1bHQpIHx8IGZ1bmN0aW9uIChtb2QpIHtcbiAgICByZXR1cm4gKG1vZCAmJiBtb2QuX19lc01vZHVsZSkgPyBtb2QgOiB7IFwiZGVmYXVsdFwiOiBtb2QgfTtcbn07XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHsgdmFsdWU6IHRydWUgfSk7XG5leHBvcnRzLmRlZmF1bHQgPSB2b2lkIDA7XG52YXIgbG9nZ2VyXzEgPSByZXF1aXJlKFwiLi9sb2dnZXJcIik7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJkZWZhdWx0XCIsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBmdW5jdGlvbiAoKSB7IHJldHVybiBfX2ltcG9ydERlZmF1bHQobG9nZ2VyXzEpLmRlZmF1bHQ7IH0gfSk7XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(api)/../logger/build/index.js\n");
153
+
154
+ /***/ }),
155
+
156
+ /***/ "(api)/../logger/build/logger.js":
157
+ /*!*********************************!*\
158
+ !*** ../logger/build/logger.js ***!
159
+ \*********************************/
160
+ /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
161
+
162
+ eval("\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\nconst path_1 = __importDefault(__webpack_require__(/*! path */ \"path\"));\nconst winston_1 = __webpack_require__(/*! winston */ \"winston\");\nconst constants_1 = __webpack_require__(/*! ./constants */ \"(api)/../logger/build/constants.js\");\nconst logger = (0, winston_1.createLogger)({\n level: 'info',\n format: winston_1.format.combine(winston_1.format.timestamp({\n format: 'YYYY-MM-DD HH:mm:ss',\n }), winston_1.format.errors({ stack: true }), winston_1.format.splat(), winston_1.format.json(), winston_1.format.prettyPrint()),\n transports: [\n new winston_1.transports.File({\n filename: path_1.default.resolve(constants_1.OUTPUT_DIRECTORY, 'error.log'),\n level: 'error',\n }),\n new winston_1.transports.File({\n filename: path_1.default.resolve(constants_1.OUTPUT_DIRECTORY, 'all.log'),\n }),\n new winston_1.transports.Console({\n format: winston_1.format.combine(winston_1.format.colorize(), winston_1.format.simple()),\n level: 'error',\n }),\n ],\n});\nexports[\"default\"] = logger;\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwaSkvLi4vbG9nZ2VyL2J1aWxkL2xvZ2dlci5qcyIsIm1hcHBpbmdzIjoiQUFBYTtBQUNiO0FBQ0EsNkNBQTZDO0FBQzdDO0FBQ0EsOENBQTZDLEVBQUUsYUFBYSxFQUFDO0FBQzdELCtCQUErQixtQkFBTyxDQUFDLGtCQUFNO0FBQzdDLGtCQUFrQixtQkFBTyxDQUFDLHdCQUFTO0FBQ25DLG9CQUFvQixtQkFBTyxDQUFDLHVEQUFhO0FBQ3pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSyw2QkFBNkIsYUFBYTtBQUMvQztBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBLENBQUM7QUFDRCxrQkFBZSIsInNvdXJjZXMiOlsid2VicGFjazovL0BzY3JhYmJsZS1zb2x2ZXIvc2NyYWJibGUtc29sdmVyLy4uL2xvZ2dlci9idWlsZC9sb2dnZXIuanM/NDA1ZiJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcbnZhciBfX2ltcG9ydERlZmF1bHQgPSAodGhpcyAmJiB0aGlzLl9faW1wb3J0RGVmYXVsdCkgfHwgZnVuY3Rpb24gKG1vZCkge1xuICAgIHJldHVybiAobW9kICYmIG1vZC5fX2VzTW9kdWxlKSA/IG1vZCA6IHsgXCJkZWZhdWx0XCI6IG1vZCB9O1xufTtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIl9fZXNNb2R1bGVcIiwgeyB2YWx1ZTogdHJ1ZSB9KTtcbmNvbnN0IHBhdGhfMSA9IF9faW1wb3J0RGVmYXVsdChyZXF1aXJlKFwicGF0aFwiKSk7XG5jb25zdCB3aW5zdG9uXzEgPSByZXF1aXJlKFwid2luc3RvblwiKTtcbmNvbnN0IGNvbnN0YW50c18xID0gcmVxdWlyZShcIi4vY29uc3RhbnRzXCIpO1xuY29uc3QgbG9nZ2VyID0gKDAsIHdpbnN0b25fMS5jcmVhdGVMb2dnZXIpKHtcbiAgICBsZXZlbDogJ2luZm8nLFxuICAgIGZvcm1hdDogd2luc3Rvbl8xLmZvcm1hdC5jb21iaW5lKHdpbnN0b25fMS5mb3JtYXQudGltZXN0YW1wKHtcbiAgICAgICAgZm9ybWF0OiAnWVlZWS1NTS1ERCBISDptbTpzcycsXG4gICAgfSksIHdpbnN0b25fMS5mb3JtYXQuZXJyb3JzKHsgc3RhY2s6IHRydWUgfSksIHdpbnN0b25fMS5mb3JtYXQuc3BsYXQoKSwgd2luc3Rvbl8xLmZvcm1hdC5qc29uKCksIHdpbnN0b25fMS5mb3JtYXQucHJldHR5UHJpbnQoKSksXG4gICAgdHJhbnNwb3J0czogW1xuICAgICAgICBuZXcgd2luc3Rvbl8xLnRyYW5zcG9ydHMuRmlsZSh7XG4gICAgICAgICAgICBmaWxlbmFtZTogcGF0aF8xLmRlZmF1bHQucmVzb2x2ZShjb25zdGFudHNfMS5PVVRQVVRfRElSRUNUT1JZLCAnZXJyb3IubG9nJyksXG4gICAgICAgICAgICBsZXZlbDogJ2Vycm9yJyxcbiAgICAgICAgfSksXG4gICAgICAgIG5ldyB3aW5zdG9uXzEudHJhbnNwb3J0cy5GaWxlKHtcbiAgICAgICAgICAgIGZpbGVuYW1lOiBwYXRoXzEuZGVmYXVsdC5yZXNvbHZlKGNvbnN0YW50c18xLk9VVFBVVF9ESVJFQ1RPUlksICdhbGwubG9nJyksXG4gICAgICAgIH0pLFxuICAgICAgICBuZXcgd2luc3Rvbl8xLnRyYW5zcG9ydHMuQ29uc29sZSh7XG4gICAgICAgICAgICBmb3JtYXQ6IHdpbnN0b25fMS5mb3JtYXQuY29tYmluZSh3aW5zdG9uXzEuZm9ybWF0LmNvbG9yaXplKCksIHdpbnN0b25fMS5mb3JtYXQuc2ltcGxlKCkpLFxuICAgICAgICAgICAgbGV2ZWw6ICdlcnJvcicsXG4gICAgICAgIH0pLFxuICAgIF0sXG59KTtcbmV4cG9ydHMuZGVmYXVsdCA9IGxvZ2dlcjtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(api)/../logger/build/logger.js\n");
163
+
164
+ /***/ })
165
+
166
+ };
167
+ ;
168
+
169
+ // load runtime
170
+ var __webpack_require__ = require("../../webpack-api-runtime.js");
171
+ __webpack_require__.C(exports);
172
+ var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
173
+ var __webpack_exports__ = __webpack_require__.X(0, ["vendor-chunks/next"], () => (__webpack_exec__("(api)/../../node_modules/next/dist/build/webpack/loaders/next-route-loader/index.js?kind=PAGES_API&page=%2Fapi%2Fvisit&preferredRegion=&absolutePagePath=.%2Fsrc%2Fpages%2Fapi%2Fvisit.ts&middlewareConfigBase64=e30%3D!")));
174
+ module.exports = __webpack_exports__;
175
+
176
+ })();