diff --git a/app/frontend/.next/cache/webpack/client-development/11.pack.gz b/app/frontend/.next/cache/webpack/client-development/11.pack.gz new file mode 100644 index 0000000..526a8cc Binary files /dev/null and b/app/frontend/.next/cache/webpack/client-development/11.pack.gz differ diff --git a/app/frontend/.next/cache/webpack/client-development/12.pack.gz b/app/frontend/.next/cache/webpack/client-development/12.pack.gz new file mode 100644 index 0000000..e1459f5 Binary files /dev/null and b/app/frontend/.next/cache/webpack/client-development/12.pack.gz differ diff --git a/app/frontend/.next/cache/webpack/client-development/13.pack.gz b/app/frontend/.next/cache/webpack/client-development/13.pack.gz new file mode 100644 index 0000000..38fc388 Binary files /dev/null and b/app/frontend/.next/cache/webpack/client-development/13.pack.gz differ diff --git a/app/frontend/.next/cache/webpack/client-development/7.pack.gz b/app/frontend/.next/cache/webpack/client-development/7.pack.gz index 4c4bbc9..146cda7 100644 Binary files a/app/frontend/.next/cache/webpack/client-development/7.pack.gz and b/app/frontend/.next/cache/webpack/client-development/7.pack.gz differ diff --git a/app/frontend/.next/cache/webpack/client-development/9.pack.gz b/app/frontend/.next/cache/webpack/client-development/9.pack.gz index 9385dc5..3be8f6d 100644 Binary files a/app/frontend/.next/cache/webpack/client-development/9.pack.gz and b/app/frontend/.next/cache/webpack/client-development/9.pack.gz differ diff --git a/app/frontend/.next/cache/webpack/client-development/index.pack.gz b/app/frontend/.next/cache/webpack/client-development/index.pack.gz index e148bc5..219d9ca 100644 Binary files a/app/frontend/.next/cache/webpack/client-development/index.pack.gz and b/app/frontend/.next/cache/webpack/client-development/index.pack.gz differ diff --git a/app/frontend/.next/cache/webpack/client-development/index.pack.gz.old b/app/frontend/.next/cache/webpack/client-development/index.pack.gz.old index 63d0d92..dd10a18 100644 Binary files a/app/frontend/.next/cache/webpack/client-development/index.pack.gz.old and b/app/frontend/.next/cache/webpack/client-development/index.pack.gz.old differ diff --git a/app/frontend/.next/cache/webpack/server-development/0.pack.gz b/app/frontend/.next/cache/webpack/server-development/0.pack.gz index b5a404a..7610d9d 100644 Binary files a/app/frontend/.next/cache/webpack/server-development/0.pack.gz and b/app/frontend/.next/cache/webpack/server-development/0.pack.gz differ diff --git a/app/frontend/.next/cache/webpack/server-development/1.pack.gz b/app/frontend/.next/cache/webpack/server-development/1.pack.gz index bf0ef19..fef7e7b 100644 Binary files a/app/frontend/.next/cache/webpack/server-development/1.pack.gz and b/app/frontend/.next/cache/webpack/server-development/1.pack.gz differ diff --git a/app/frontend/.next/cache/webpack/server-development/10.pack.gz b/app/frontend/.next/cache/webpack/server-development/10.pack.gz new file mode 100644 index 0000000..f1cd8eb Binary files /dev/null and b/app/frontend/.next/cache/webpack/server-development/10.pack.gz differ diff --git a/app/frontend/.next/cache/webpack/server-development/11.pack.gz b/app/frontend/.next/cache/webpack/server-development/11.pack.gz new file mode 100644 index 0000000..38d269b Binary files /dev/null and b/app/frontend/.next/cache/webpack/server-development/11.pack.gz differ diff --git a/app/frontend/.next/cache/webpack/server-development/12.pack.gz b/app/frontend/.next/cache/webpack/server-development/12.pack.gz new file mode 100644 index 0000000..47737e0 Binary files /dev/null and b/app/frontend/.next/cache/webpack/server-development/12.pack.gz differ diff --git a/app/frontend/.next/cache/webpack/server-development/13.pack.gz b/app/frontend/.next/cache/webpack/server-development/13.pack.gz new file mode 100644 index 0000000..2f93cca Binary files /dev/null and b/app/frontend/.next/cache/webpack/server-development/13.pack.gz differ diff --git a/app/frontend/.next/cache/webpack/server-development/2.pack.gz b/app/frontend/.next/cache/webpack/server-development/2.pack.gz index 7e9b992..3e41281 100644 Binary files a/app/frontend/.next/cache/webpack/server-development/2.pack.gz and b/app/frontend/.next/cache/webpack/server-development/2.pack.gz differ diff --git a/app/frontend/.next/cache/webpack/server-development/3.pack.gz b/app/frontend/.next/cache/webpack/server-development/3.pack.gz index ef20cf3..6a46b86 100644 Binary files a/app/frontend/.next/cache/webpack/server-development/3.pack.gz and b/app/frontend/.next/cache/webpack/server-development/3.pack.gz differ diff --git a/app/frontend/.next/cache/webpack/server-development/4.pack.gz b/app/frontend/.next/cache/webpack/server-development/4.pack.gz index 7995b51..87c4386 100644 Binary files a/app/frontend/.next/cache/webpack/server-development/4.pack.gz and b/app/frontend/.next/cache/webpack/server-development/4.pack.gz differ diff --git a/app/frontend/.next/cache/webpack/server-development/5.pack.gz b/app/frontend/.next/cache/webpack/server-development/5.pack.gz index ccf905a..08dfa0c 100644 Binary files a/app/frontend/.next/cache/webpack/server-development/5.pack.gz and b/app/frontend/.next/cache/webpack/server-development/5.pack.gz differ diff --git a/app/frontend/.next/cache/webpack/server-development/7.pack.gz b/app/frontend/.next/cache/webpack/server-development/7.pack.gz index 89718fe..35a51ea 100644 Binary files a/app/frontend/.next/cache/webpack/server-development/7.pack.gz and b/app/frontend/.next/cache/webpack/server-development/7.pack.gz differ diff --git a/app/frontend/.next/cache/webpack/server-development/9.pack.gz b/app/frontend/.next/cache/webpack/server-development/9.pack.gz index 413a862..12ec064 100644 Binary files a/app/frontend/.next/cache/webpack/server-development/9.pack.gz and b/app/frontend/.next/cache/webpack/server-development/9.pack.gz differ diff --git a/app/frontend/.next/cache/webpack/server-development/index.pack.gz b/app/frontend/.next/cache/webpack/server-development/index.pack.gz index 0a50222..c3e1f39 100644 Binary files a/app/frontend/.next/cache/webpack/server-development/index.pack.gz and b/app/frontend/.next/cache/webpack/server-development/index.pack.gz differ diff --git a/app/frontend/.next/cache/webpack/server-development/index.pack.gz.old b/app/frontend/.next/cache/webpack/server-development/index.pack.gz.old index 9ba325d..20dbe43 100644 Binary files a/app/frontend/.next/cache/webpack/server-development/index.pack.gz.old and b/app/frontend/.next/cache/webpack/server-development/index.pack.gz.old differ diff --git a/app/frontend/.next/server/app-paths-manifest.json b/app/frontend/.next/server/app-paths-manifest.json index acd3f07..a1c6173 100644 --- a/app/frontend/.next/server/app-paths-manifest.json +++ b/app/frontend/.next/server/app-paths-manifest.json @@ -1,10 +1,8 @@ { "/_not-found/page": "app/_not-found/page.js", "/auth/page": "app/auth/page.js", - "/page": "app/page.js", - "/app/library/page": "app/app/library/page.js", + "/admin/curriculum/page": "app/admin/curriculum/page.js", "/admin/documents/page": "app/admin/documents/page.js", - "/app/session/page": "app/app/session/page.js", - "/app/library/[topicId]/page": "app/app/library/[topicId]/page.js", - "/app/page": "app/app/page.js" + "/admin/knowledge/page": "app/admin/knowledge/page.js", + "/app/session/page": "app/app/session/page.js" } \ No newline at end of file diff --git a/app/frontend/.next/server/app/_not-found/page.js b/app/frontend/.next/server/app/_not-found/page.js index 53e611c..fff97c0 100644 --- a/app/frontend/.next/server/app/_not-found/page.js +++ b/app/frontend/.next/server/app/_not-found/page.js @@ -116,7 +116,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (/* binding */ RootLayout),\n/* harmony export */ metadata: () => (/* binding */ metadata),\n/* harmony export */ viewport: () => (/* binding */ viewport)\n/* harmony export */ });\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-dev-runtime */ \"(rsc)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/rsc/react-jsx-dev-runtime.js\");\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _stylesheet_css__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../stylesheet.css */ \"(rsc)/../../stylesheet.css\");\n/* harmony import */ var _globals_css__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./globals.css */ \"(rsc)/./src/app/globals.css\");\n\n\n\nconst metadata = {\n title: \"Learning Platform\",\n description: \"Employee knowledge and learning\",\n manifest: \"/manifest.json\",\n appleWebApp: {\n capable: true,\n statusBarStyle: \"default\",\n title: \"Learning Platform\"\n }\n};\nconst viewport = {\n themeColor: \"#1F5560\",\n width: \"device-width\",\n initialScale: 1,\n maximumScale: 1\n};\nfunction RootLayout({ children }) {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"html\", {\n lang: \"en\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"body\", {\n children: children\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\app\\\\layout.tsx\",\n lineNumber: 30,\n columnNumber: 7\n }, this)\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\app\\\\layout.tsx\",\n lineNumber: 29,\n columnNumber: 5\n }, this);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9zcmMvYXBwL2xheW91dC50c3giLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFDbUM7QUFDYjtBQUVmLE1BQU1BLFdBQXFCO0lBQ2hDQyxPQUFPO0lBQ1BDLGFBQWE7SUFDYkMsVUFBVTtJQUNWQyxhQUFhO1FBQ1hDLFNBQVM7UUFDVEMsZ0JBQWdCO1FBQ2hCTCxPQUFPO0lBQ1Q7QUFDRixFQUFDO0FBRU0sTUFBTU0sV0FBcUI7SUFDaENDLFlBQVk7SUFDWkMsT0FBTztJQUNQQyxjQUFjO0lBQ2RDLGNBQWM7QUFDaEIsRUFBQztBQUVjLFNBQVNDLFdBQVcsRUFDakNDLFFBQVEsRUFHVDtJQUNDLHFCQUNFLDhEQUFDQztRQUFLQyxNQUFLO2tCQUNULDRFQUFDQztzQkFBTUg7Ozs7Ozs7Ozs7O0FBR2IiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9sZWFybmluZy1wbGF0Zm9ybS1mcm9udGVuZC8uL3NyYy9hcHAvbGF5b3V0LnRzeD81N2E5Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgTWV0YWRhdGEsIFZpZXdwb3J0IH0gZnJvbSAnbmV4dCdcbmltcG9ydCAnLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MnXG5pbXBvcnQgJy4vZ2xvYmFscy5jc3MnXG5cbmV4cG9ydCBjb25zdCBtZXRhZGF0YTogTWV0YWRhdGEgPSB7XG4gIHRpdGxlOiAnTGVhcm5pbmcgUGxhdGZvcm0nLFxuICBkZXNjcmlwdGlvbjogJ0VtcGxveWVlIGtub3dsZWRnZSBhbmQgbGVhcm5pbmcnLFxuICBtYW5pZmVzdDogJy9tYW5pZmVzdC5qc29uJyxcbiAgYXBwbGVXZWJBcHA6IHtcbiAgICBjYXBhYmxlOiB0cnVlLFxuICAgIHN0YXR1c0JhclN0eWxlOiAnZGVmYXVsdCcsXG4gICAgdGl0bGU6ICdMZWFybmluZyBQbGF0Zm9ybScsXG4gIH0sXG59XG5cbmV4cG9ydCBjb25zdCB2aWV3cG9ydDogVmlld3BvcnQgPSB7XG4gIHRoZW1lQ29sb3I6ICcjMUY1NTYwJyxcbiAgd2lkdGg6ICdkZXZpY2Utd2lkdGgnLFxuICBpbml0aWFsU2NhbGU6IDEsXG4gIG1heGltdW1TY2FsZTogMSxcbn1cblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gUm9vdExheW91dCh7XG4gIGNoaWxkcmVuLFxufToge1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlXG59KSB7XG4gIHJldHVybiAoXG4gICAgPGh0bWwgbGFuZz1cImVuXCI+XG4gICAgICA8Ym9keT57Y2hpbGRyZW59PC9ib2R5PlxuICAgIDwvaHRtbD5cbiAgKVxufVxuIl0sIm5hbWVzIjpbIm1ldGFkYXRhIiwidGl0bGUiLCJkZXNjcmlwdGlvbiIsIm1hbmlmZXN0IiwiYXBwbGVXZWJBcHAiLCJjYXBhYmxlIiwic3RhdHVzQmFyU3R5bGUiLCJ2aWV3cG9ydCIsInRoZW1lQ29sb3IiLCJ3aWR0aCIsImluaXRpYWxTY2FsZSIsIm1heGltdW1TY2FsZSIsIlJvb3RMYXlvdXQiLCJjaGlsZHJlbiIsImh0bWwiLCJsYW5nIiwiYm9keSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(rsc)/./src/app/layout.tsx\n"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (/* binding */ RootLayout),\n/* harmony export */ metadata: () => (/* binding */ metadata),\n/* harmony export */ viewport: () => (/* binding */ viewport)\n/* harmony export */ });\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-dev-runtime */ \"(rsc)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/rsc/react-jsx-dev-runtime.js\");\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _stylesheet_css__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../stylesheet.css */ \"(rsc)/../../stylesheet.css\");\n/* harmony import */ var _globals_css__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./globals.css */ \"(rsc)/./src/app/globals.css\");\n\n\n\nconst metadata = {\n title: \"Learning Platform\",\n description: \"Employee knowledge and learning\",\n manifest: \"/manifest.json\",\n icons: {\n icon: \"/favicon.svg\"\n },\n appleWebApp: {\n capable: true,\n statusBarStyle: \"default\",\n title: \"Learning Platform\"\n },\n other: {\n \"mobile-web-app-capable\": \"yes\"\n }\n};\nconst viewport = {\n themeColor: \"#1F5560\",\n width: \"device-width\",\n initialScale: 1,\n maximumScale: 1\n};\nfunction RootLayout({ children }) {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"html\", {\n lang: \"en\",\n suppressHydrationWarning: true,\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"body\", {\n children: children\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\app\\\\layout.tsx\",\n lineNumber: 34,\n columnNumber: 7\n }, this)\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\app\\\\layout.tsx\",\n lineNumber: 33,\n columnNumber: 5\n }, this);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9zcmMvYXBwL2xheW91dC50c3giLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFDbUM7QUFDYjtBQUVmLE1BQU1BLFdBQXFCO0lBQ2hDQyxPQUFPO0lBQ1BDLGFBQWE7SUFDYkMsVUFBVTtJQUNWQyxPQUFPO1FBQUVDLE1BQU07SUFBZTtJQUM5QkMsYUFBYTtRQUNYQyxTQUFTO1FBQ1RDLGdCQUFnQjtRQUNoQlAsT0FBTztJQUNUO0lBQ0FRLE9BQU87UUFDTCwwQkFBMEI7SUFDNUI7QUFDRixFQUFDO0FBRU0sTUFBTUMsV0FBcUI7SUFDaENDLFlBQVk7SUFDWkMsT0FBTztJQUNQQyxjQUFjO0lBQ2RDLGNBQWM7QUFDaEIsRUFBQztBQUVjLFNBQVNDLFdBQVcsRUFDakNDLFFBQVEsRUFHVDtJQUNDLHFCQUNFLDhEQUFDQztRQUFLQyxNQUFLO1FBQUtDLHdCQUF3QjtrQkFDdEMsNEVBQUNDO3NCQUFNSjs7Ozs7Ozs7Ozs7QUFHYiIsInNvdXJjZXMiOlsid2VicGFjazovL2xlYXJuaW5nLXBsYXRmb3JtLWZyb250ZW5kLy4vc3JjL2FwcC9sYXlvdXQudHN4PzU3YTkiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBNZXRhZGF0YSwgVmlld3BvcnQgfSBmcm9tICduZXh0J1xuaW1wb3J0ICcuLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcydcbmltcG9ydCAnLi9nbG9iYWxzLmNzcydcblxuZXhwb3J0IGNvbnN0IG1ldGFkYXRhOiBNZXRhZGF0YSA9IHtcbiAgdGl0bGU6ICdMZWFybmluZyBQbGF0Zm9ybScsXG4gIGRlc2NyaXB0aW9uOiAnRW1wbG95ZWUga25vd2xlZGdlIGFuZCBsZWFybmluZycsXG4gIG1hbmlmZXN0OiAnL21hbmlmZXN0Lmpzb24nLFxuICBpY29uczogeyBpY29uOiAnL2Zhdmljb24uc3ZnJyB9LFxuICBhcHBsZVdlYkFwcDoge1xuICAgIGNhcGFibGU6IHRydWUsXG4gICAgc3RhdHVzQmFyU3R5bGU6ICdkZWZhdWx0JyxcbiAgICB0aXRsZTogJ0xlYXJuaW5nIFBsYXRmb3JtJyxcbiAgfSxcbiAgb3RoZXI6IHtcbiAgICAnbW9iaWxlLXdlYi1hcHAtY2FwYWJsZSc6ICd5ZXMnLFxuICB9LFxufVxuXG5leHBvcnQgY29uc3Qgdmlld3BvcnQ6IFZpZXdwb3J0ID0ge1xuICB0aGVtZUNvbG9yOiAnIzFGNTU2MCcsXG4gIHdpZHRoOiAnZGV2aWNlLXdpZHRoJyxcbiAgaW5pdGlhbFNjYWxlOiAxLFxuICBtYXhpbXVtU2NhbGU6IDEsXG59XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIFJvb3RMYXlvdXQoe1xuICBjaGlsZHJlbixcbn06IHtcbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZVxufSkge1xuICByZXR1cm4gKFxuICAgIDxodG1sIGxhbmc9XCJlblwiIHN1cHByZXNzSHlkcmF0aW9uV2FybmluZz5cbiAgICAgIDxib2R5PntjaGlsZHJlbn08L2JvZHk+XG4gICAgPC9odG1sPlxuICApXG59XG4iXSwibmFtZXMiOlsibWV0YWRhdGEiLCJ0aXRsZSIsImRlc2NyaXB0aW9uIiwibWFuaWZlc3QiLCJpY29ucyIsImljb24iLCJhcHBsZVdlYkFwcCIsImNhcGFibGUiLCJzdGF0dXNCYXJTdHlsZSIsIm90aGVyIiwidmlld3BvcnQiLCJ0aGVtZUNvbG9yIiwid2lkdGgiLCJpbml0aWFsU2NhbGUiLCJtYXhpbXVtU2NhbGUiLCJSb290TGF5b3V0IiwiY2hpbGRyZW4iLCJodG1sIiwibGFuZyIsInN1cHByZXNzSHlkcmF0aW9uV2FybmluZyIsImJvZHkiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(rsc)/./src/app/layout.tsx\n"); /***/ }) diff --git a/app/frontend/.next/server/app/admin/curriculum/page.js b/app/frontend/.next/server/app/admin/curriculum/page.js index 1496756..fed0581 100644 --- a/app/frontend/.next/server/app/admin/curriculum/page.js +++ b/app/frontend/.next/server/app/admin/curriculum/page.js @@ -191,7 +191,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFeed: () => (/* binding */ getFeed),\n/* harmony export */ getIngestionStatus: () => (/* binding */ getIngestionStatus),\n/* harmony export */ getLeaderboard: () => (/* binding */ getLeaderboard),\n/* harmony export */ patchCurriculumWeekOrder: () => (/* binding */ patchCurriculumWeekOrder),\n/* harmony export */ postComplete: () => (/* binding */ postComplete),\n/* harmony export */ postCurriculumConfirm: () => (/* binding */ postCurriculumConfirm),\n/* harmony export */ postGenerateAll: () => (/* binding */ postGenerateAll),\n/* harmony export */ postIngest: () => (/* binding */ postIngest)\n/* harmony export */ });\nconst INGESTION_URL = \"http://localhost:3001\" ?? 0;\nconst GENERATION_URL = \"http://localhost:3002\" ?? 0;\nconst CURRICULUM_URL = \"http://localhost:3003\" ?? 0;\nconst PROGRESS_URL = \"http://localhost:3005\" ?? 0;\nasync function handleResponse(res) {\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(`HTTP ${res.status}: ${text}`);\n }\n return res.json();\n}\nasync function postIngest(payload) {\n const res = await fetch(`${INGESTION_URL}/ingest`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getIngestionStatus(jobId) {\n const res = await fetch(`${INGESTION_URL}/ingest/status/${encodeURIComponent(jobId)}`);\n return handleResponse(res);\n}\nasync function postGenerateAll(themeId) {\n const res = await fetch(`${GENERATION_URL}/generate/theme/${encodeURIComponent(themeId)}`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n return handleResponse(res);\n}\nasync function postComplete(payload) {\n const res = await fetch(`${PROGRESS_URL}/complete`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getLeaderboard() {\n const res = await fetch(`${PROGRESS_URL}/leaderboard`);\n return handleResponse(res);\n}\nasync function getFeed() {\n const res = await fetch(`${PROGRESS_URL}/feed`);\n return handleResponse(res);\n}\nasync function postCurriculumConfirm(versionId) {\n const res = await fetch(`${CURRICULUM_URL}/curriculum/versions/${encodeURIComponent(versionId)}/confirm`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(`HTTP ${res.status}: ${text}`);\n }\n}\nasync function patchCurriculumWeekOrder(weekId, position) {\n const res = await fetch(`${CURRICULUM_URL}/curriculum/weeks/${encodeURIComponent(weekId)}/order`, {\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n position\n })\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(`HTTP ${res.status}: ${text}`);\n }\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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UUFDOUNDLE1BQU1DLEtBQUtDLFNBQVMsQ0FBQztZQUFFYTtRQUFTO0lBQ2xDO0lBRUYsSUFBSSxDQUFDNUIsSUFBSUMsRUFBRSxFQUFFO1FBQ1gsTUFBTUMsT0FBTyxNQUFNRixJQUFJRSxJQUFJLEdBQUdDLEtBQUssQ0FBQyxJQUFNSCxJQUFJSSxVQUFVO1FBQ3hELE1BQU0sSUFBSUMsTUFBTSxDQUFDLEtBQUssRUFBRUwsSUFBSU0sTUFBTSxDQUFDLEVBQUUsRUFBRUosS0FBSyxDQUFDO0lBQy9DO0FBQ0YiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9sZWFybmluZy1wbGF0Zm9ybS1mcm9udGVuZC8uL3NyYy9saWIvc2VydmljZXMudHM/MDcwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIEluZ2VzdGlvbkpvYlN0YXR1cyxcbiAgQ29tcGxldGVQYXlsb2FkLFxuICBDb21wbGV0ZVJlc3BvbnNlLFxuICBMZWFkZXJib2FyZEVudHJ5LFxuICBGZWVkRW50cnksXG59IGZyb20gJ0AvdHlwZXMnXG5cbmNvbnN0IElOR0VTVElPTl9VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19JTkdFU1RJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDEnXG5jb25zdCBHRU5FUkFUSU9OX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0dFTkVSQVRJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDInXG5jb25zdCBDVVJSSUNVTFVNX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDMnXG5jb25zdCBQUk9HUkVTU19VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19QUk9HUkVTU19VUkwgPz8gJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwNSdcblxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlUmVzcG9uc2U8VD4ocmVzOiBSZXNwb25zZSk6IFByb21pc2U8VD4ge1xuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxuICByZXR1cm4gcmVzLmpzb24oKSBhcyBQcm9taXNlPFQ+XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0SW5nZXN0KHBheWxvYWQ6IHtcbiAgZG9jdW1lbnRJZDogc3RyaW5nXG4gIGZpbGVuYW1lOiBzdHJpbmdcbiAgZm9ybWF0OiAncGRmJyB8ICdtZCcgfCAndHh0J1xuICBmaWxlVXJsOiBzdHJpbmdcbn0pOiBQcm9taXNlPHsgam9iSWQ6IHN0cmluZyB9PiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdGAsIHtcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICBib2R5OiBKU09OLnN0cmluZ2lmeShwYXlsb2FkKSxcbiAgfSlcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPHsgam9iSWQ6IHN0cmluZyB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRJbmdlc3Rpb25TdGF0dXMoam9iSWQ6IHN0cmluZyk6IFByb21pc2U8SW5nZXN0aW9uSm9iU3RhdHVzPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdC9zdGF0dXMvJHtlbmNvZGVVUklDb21wb25lbnQoam9iSWQpfWApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxJbmdlc3Rpb25Kb2JTdGF0dXM+KHJlcylcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHBvc3RHZW5lcmF0ZUFsbCh0aGVtZUlkOiBzdHJpbmcpOiBQcm9taXNlPHsgcXVldWVkOiBudW1iZXIgfT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtHRU5FUkFUSU9OX1VSTH0vZ2VuZXJhdGUvdGhlbWUvJHtlbmNvZGVVUklDb21wb25lbnQodGhlbWVJZCl9YCwge1xuICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgIGhlYWRlcnM6IHsgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyB9LFxuICB9KVxuICByZXR1cm4gaGFuZGxlUmVzcG9uc2U8eyBxdWV1ZWQ6IG51bWJlciB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0Q29tcGxldGUocGF5bG9hZDogQ29tcGxldGVQYXlsb2FkKTogUHJvbWlzZTxDb21wbGV0ZVJlc3BvbnNlPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vY29tcGxldGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkocGF5bG9hZCksXG4gIH0pXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxDb21wbGV0ZVJlc3BvbnNlPihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRMZWFkZXJib2FyZCgpOiBQcm9taXNlPExlYWRlcmJvYXJkRW50cnlbXT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtQUk9HUkVTU19VUkx9L2xlYWRlcmJvYXJkYClcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPExlYWRlcmJvYXJkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0RmVlZCgpOiBQcm9taXNlPEZlZWRFbnRyeVtdPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vZmVlZGApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxGZWVkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcG9zdEN1cnJpY3VsdW1Db25maXJtKHZlcnNpb25JZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3ZlcnNpb25zLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHZlcnNpb25JZCl9L2NvbmZpcm1gLFxuICAgIHtcbiAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyKHdlZWtJZDogc3RyaW5nLCBwb3NpdGlvbjogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3dlZWtzLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHdlZWtJZCl9L29yZGVyYCxcbiAgICB7XG4gICAgICBtZXRob2Q6ICdQQVRDSCcsXG4gICAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHsgcG9zaXRpb24gfSksXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuIl0sIm5hbWVzIjpbIklOR0VTVElPTl9VUkwiLCJwcm9jZXNzIiwiZW52IiwiTkVYVF9QVUJMSUNfSU5HRVNUSU9OX1VSTCIsIkdFTkVSQVRJT05fVVJMIiwiTkVYVF9QVUJMSUNfR0VORVJBVElPTl9VUkwiLCJDVVJSSUNVTFVNX1VSTCIsIk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMIiwiUFJPR1JFU1NfVVJMIiwiTkVYVF9QVUJMSUNfUFJPR1JFU1NfVVJMIiwiaGFuZGxlUmVzcG9uc2UiLCJyZXMiLCJvayIsInRleHQiLCJjYXRjaCIsInN0YXR1c1RleHQiLCJFcnJvciIsInN0YXR1cyIsImpzb24iLCJwb3N0SW5nZXN0IiwicGF5bG9hZCIsImZldGNoIiwibWV0aG9kIiwiaGVhZGVycyIsImJvZHkiLCJKU09OIiwic3RyaW5naWZ5IiwiZ2V0SW5nZXN0aW9uU3RhdHVzIiwiam9iSWQiLCJlbmNvZGVVUklDb21wb25lbnQiLCJwb3N0R2VuZXJhdGVBbGwiLCJ0aGVtZUlkIiwicG9zdENvbXBsZXRlIiwiZ2V0TGVhZGVyYm9hcmQiLCJnZXRGZWVkIiwicG9zdEN1cnJpY3VsdW1Db25maXJtIiwidmVyc2lvbklkIiwicGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyIiwid2Vla0lkIiwicG9zaXRpb24iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./src/lib/services.ts\n"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFeed: () => (/* binding */ getFeed),\n/* harmony export */ getIngestionStatus: () => (/* binding */ getIngestionStatus),\n/* harmony export */ getLeaderboard: () => (/* binding */ getLeaderboard),\n/* harmony export */ patchCurriculumWeekOrder: () => (/* binding */ patchCurriculumWeekOrder),\n/* harmony export */ postComplete: () => (/* binding */ postComplete),\n/* harmony export */ postCurriculumConfirm: () => (/* binding */ postCurriculumConfirm),\n/* harmony export */ postGenerateAll: () => (/* binding */ postGenerateAll),\n/* harmony export */ postIngest: () => (/* binding */ postIngest)\n/* harmony export */ });\nconst INGESTION_URL = \"http://localhost:3001\" ?? 0;\nconst GENERATION_URL = \"http://localhost:3002\" ?? 0;\nconst CURRICULUM_URL = \"http://localhost:3003\" ?? 0;\nconst PROGRESS_URL = \"http://localhost:3005\" ?? 0;\nasync function handleResponse(res) {\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(`HTTP ${res.status}: ${text}`);\n }\n return res.json();\n}\nasync function postIngest(payload) {\n const res = await fetch(`${INGESTION_URL}/ingest`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getIngestionStatus(jobId) {\n const res = await fetch(`${INGESTION_URL}/ingest/status/${encodeURIComponent(jobId)}`);\n return handleResponse(res);\n}\nasync function postGenerateAll(themeId) {\n const res = await fetch(`${GENERATION_URL}/generate`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n themeId\n })\n });\n const data = await handleResponse(res);\n return {\n queued: data.totalItems\n };\n}\nasync function postComplete(payload) {\n const res = await fetch(`${PROGRESS_URL}/complete`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getLeaderboard() {\n const res = await fetch(`${PROGRESS_URL}/leaderboard`);\n return handleResponse(res);\n}\nasync function getFeed() {\n const res = await fetch(`${PROGRESS_URL}/feed`);\n return handleResponse(res);\n}\nasync function postCurriculumConfirm(versionId) {\n const res = await fetch(`${CURRICULUM_URL}/curriculum/versions/${encodeURIComponent(versionId)}/confirm`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(`HTTP ${res.status}: ${text}`);\n }\n}\nasync function patchCurriculumWeekOrder(weekId, position) {\n const res = await fetch(`${CURRICULUM_URL}/curriculum/weeks/${encodeURIComponent(weekId)}/order`, {\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n position\n })\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(`HTTP ${res.status}: ${text}`);\n }\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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LG1CQUFtQlksUUFBUSxNQUFNLENBQUMsRUFDeEU7UUFDRW5CLFFBQVE7UUFDUkMsU0FBUztZQUFFLGdCQUFnQjtRQUFtQjtRQUM5Q0MsTUFBTUMsS0FBS0MsU0FBUyxDQUFDO1lBQUVnQjtRQUFTO0lBQ2xDO0lBRUYsSUFBSSxDQUFDL0IsSUFBSUMsRUFBRSxFQUFFO1FBQ1gsTUFBTUMsT0FBTyxNQUFNRixJQUFJRSxJQUFJLEdBQUdDLEtBQUssQ0FBQyxJQUFNSCxJQUFJSSxVQUFVO1FBQ3hELE1BQU0sSUFBSUMsTUFBTSxDQUFDLEtBQUssRUFBRUwsSUFBSU0sTUFBTSxDQUFDLEVBQUUsRUFBRUosS0FBSyxDQUFDO0lBQy9DO0FBQ0YiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9sZWFybmluZy1wbGF0Zm9ybS1mcm9udGVuZC8uL3NyYy9saWIvc2VydmljZXMudHM/MDcwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIEluZ2VzdGlvbkpvYlN0YXR1cyxcbiAgQ29tcGxldGVQYXlsb2FkLFxuICBDb21wbGV0ZVJlc3BvbnNlLFxuICBMZWFkZXJib2FyZEVudHJ5LFxuICBGZWVkRW50cnksXG59IGZyb20gJ0AvdHlwZXMnXG5cbmNvbnN0IElOR0VTVElPTl9VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19JTkdFU1RJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDEnXG5jb25zdCBHRU5FUkFUSU9OX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0dFTkVSQVRJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDInXG5jb25zdCBDVVJSSUNVTFVNX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDMnXG5jb25zdCBQUk9HUkVTU19VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19QUk9HUkVTU19VUkwgPz8gJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwNSdcblxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlUmVzcG9uc2U8VD4ocmVzOiBSZXNwb25zZSk6IFByb21pc2U8VD4ge1xuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxuICByZXR1cm4gcmVzLmpzb24oKSBhcyBQcm9taXNlPFQ+XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0SW5nZXN0KHBheWxvYWQ6IHtcbiAgZG9jdW1lbnRJZDogc3RyaW5nXG4gIGZpbGVuYW1lOiBzdHJpbmdcbiAgZm9ybWF0OiAncGRmJyB8ICdtZCcgfCAndHh0J1xuICBmaWxlVXJsOiBzdHJpbmdcbn0pOiBQcm9taXNlPHsgam9iSWQ6IHN0cmluZyB9PiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdGAsIHtcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICBib2R5OiBKU09OLnN0cmluZ2lmeShwYXlsb2FkKSxcbiAgfSlcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPHsgam9iSWQ6IHN0cmluZyB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRJbmdlc3Rpb25TdGF0dXMoam9iSWQ6IHN0cmluZyk6IFByb21pc2U8SW5nZXN0aW9uSm9iU3RhdHVzPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdC9zdGF0dXMvJHtlbmNvZGVVUklDb21wb25lbnQoam9iSWQpfWApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxJbmdlc3Rpb25Kb2JTdGF0dXM+KHJlcylcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHBvc3RHZW5lcmF0ZUFsbCh0aGVtZUlkOiBzdHJpbmcpOiBQcm9taXNlPHsgcXVldWVkOiBudW1iZXIgfT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtHRU5FUkFUSU9OX1VSTH0vZ2VuZXJhdGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkoeyB0aGVtZUlkIH0pLFxuICB9KVxuICBjb25zdCBkYXRhID0gYXdhaXQgaGFuZGxlUmVzcG9uc2U8eyBqb2JJZDogc3RyaW5nOyB0b3RhbEl0ZW1zOiBudW1iZXIgfT4ocmVzKVxuICByZXR1cm4geyBxdWV1ZWQ6IGRhdGEudG90YWxJdGVtcyB9XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0Q29tcGxldGUocGF5bG9hZDogQ29tcGxldGVQYXlsb2FkKTogUHJvbWlzZTxDb21wbGV0ZVJlc3BvbnNlPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vY29tcGxldGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkocGF5bG9hZCksXG4gIH0pXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxDb21wbGV0ZVJlc3BvbnNlPihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRMZWFkZXJib2FyZCgpOiBQcm9taXNlPExlYWRlcmJvYXJkRW50cnlbXT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtQUk9HUkVTU19VUkx9L2xlYWRlcmJvYXJkYClcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPExlYWRlcmJvYXJkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0RmVlZCgpOiBQcm9taXNlPEZlZWRFbnRyeVtdPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vZmVlZGApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxGZWVkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcG9zdEN1cnJpY3VsdW1Db25maXJtKHZlcnNpb25JZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3ZlcnNpb25zLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHZlcnNpb25JZCl9L2NvbmZpcm1gLFxuICAgIHtcbiAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyKHdlZWtJZDogc3RyaW5nLCBwb3NpdGlvbjogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3dlZWtzLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHdlZWtJZCl9L29yZGVyYCxcbiAgICB7XG4gICAgICBtZXRob2Q6ICdQQVRDSCcsXG4gICAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHsgcG9zaXRpb24gfSksXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuIl0sIm5hbWVzIjpbIklOR0VTVElPTl9VUkwiLCJwcm9jZXNzIiwiZW52IiwiTkVYVF9QVUJMSUNfSU5HRVNUSU9OX1VSTCIsIkdFTkVSQVRJT05fVVJMIiwiTkVYVF9QVUJMSUNfR0VORVJBVElPTl9VUkwiLCJDVVJSSUNVTFVNX1VSTCIsIk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMIiwiUFJPR1JFU1NfVVJMIiwiTkVYVF9QVUJMSUNfUFJPR1JFU1NfVVJMIiwiaGFuZGxlUmVzcG9uc2UiLCJyZXMiLCJvayIsInRleHQiLCJjYXRjaCIsInN0YXR1c1RleHQiLCJFcnJvciIsInN0YXR1cyIsImpzb24iLCJwb3N0SW5nZXN0IiwicGF5bG9hZCIsImZldGNoIiwibWV0aG9kIiwiaGVhZGVycyIsImJvZHkiLCJKU09OIiwic3RyaW5naWZ5IiwiZ2V0SW5nZXN0aW9uU3RhdHVzIiwiam9iSWQiLCJlbmNvZGVVUklDb21wb25lbnQiLCJwb3N0R2VuZXJhdGVBbGwiLCJ0aGVtZUlkIiwiZGF0YSIsInF1ZXVlZCIsInRvdGFsSXRlbXMiLCJwb3N0Q29tcGxldGUiLCJnZXRMZWFkZXJib2FyZCIsImdldEZlZWQiLCJwb3N0Q3VycmljdWx1bUNvbmZpcm0iLCJ2ZXJzaW9uSWQiLCJwYXRjaEN1cnJpY3VsdW1XZWVrT3JkZXIiLCJ3ZWVrSWQiLCJwb3NpdGlvbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./src/lib/services.ts\n"); /***/ }), @@ -260,7 +260,7 @@ __webpack_require__.r(__webpack_exports__); /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (/* binding */ RootLayout),\n/* harmony export */ metadata: () => (/* binding */ metadata),\n/* harmony export */ viewport: () => (/* binding */ viewport)\n/* harmony export */ });\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-dev-runtime */ \"(rsc)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/rsc/react-jsx-dev-runtime.js\");\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _stylesheet_css__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../stylesheet.css */ \"(rsc)/../../stylesheet.css\");\n/* harmony import */ var _globals_css__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./globals.css */ \"(rsc)/./src/app/globals.css\");\n\n\n\nconst metadata = {\n title: \"Learning Platform\",\n description: \"Employee knowledge and learning\",\n manifest: \"/manifest.json\",\n appleWebApp: {\n capable: true,\n statusBarStyle: \"default\",\n title: \"Learning Platform\"\n }\n};\nconst viewport = {\n themeColor: \"#1F5560\",\n width: \"device-width\",\n initialScale: 1,\n maximumScale: 1\n};\nfunction RootLayout({ children }) {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"html\", {\n lang: \"en\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"body\", {\n children: children\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\app\\\\layout.tsx\",\n lineNumber: 30,\n columnNumber: 7\n }, this)\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\app\\\\layout.tsx\",\n lineNumber: 29,\n columnNumber: 5\n }, this);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9zcmMvYXBwL2xheW91dC50c3giLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFDbUM7QUFDYjtBQUVmLE1BQU1BLFdBQXFCO0lBQ2hDQyxPQUFPO0lBQ1BDLGFBQWE7SUFDYkMsVUFBVTtJQUNWQyxhQUFhO1FBQ1hDLFNBQVM7UUFDVEMsZ0JBQWdCO1FBQ2hCTCxPQUFPO0lBQ1Q7QUFDRixFQUFDO0FBRU0sTUFBTU0sV0FBcUI7SUFDaENDLFlBQVk7SUFDWkMsT0FBTztJQUNQQyxjQUFjO0lBQ2RDLGNBQWM7QUFDaEIsRUFBQztBQUVjLFNBQVNDLFdBQVcsRUFDakNDLFFBQVEsRUFHVDtJQUNDLHFCQUNFLDhEQUFDQztRQUFLQyxNQUFLO2tCQUNULDRFQUFDQztzQkFBTUg7Ozs7Ozs7Ozs7O0FBR2IiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9sZWFybmluZy1wbGF0Zm9ybS1mcm9udGVuZC8uL3NyYy9hcHAvbGF5b3V0LnRzeD81N2E5Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgTWV0YWRhdGEsIFZpZXdwb3J0IH0gZnJvbSAnbmV4dCdcbmltcG9ydCAnLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MnXG5pbXBvcnQgJy4vZ2xvYmFscy5jc3MnXG5cbmV4cG9ydCBjb25zdCBtZXRhZGF0YTogTWV0YWRhdGEgPSB7XG4gIHRpdGxlOiAnTGVhcm5pbmcgUGxhdGZvcm0nLFxuICBkZXNjcmlwdGlvbjogJ0VtcGxveWVlIGtub3dsZWRnZSBhbmQgbGVhcm5pbmcnLFxuICBtYW5pZmVzdDogJy9tYW5pZmVzdC5qc29uJyxcbiAgYXBwbGVXZWJBcHA6IHtcbiAgICBjYXBhYmxlOiB0cnVlLFxuICAgIHN0YXR1c0JhclN0eWxlOiAnZGVmYXVsdCcsXG4gICAgdGl0bGU6ICdMZWFybmluZyBQbGF0Zm9ybScsXG4gIH0sXG59XG5cbmV4cG9ydCBjb25zdCB2aWV3cG9ydDogVmlld3BvcnQgPSB7XG4gIHRoZW1lQ29sb3I6ICcjMUY1NTYwJyxcbiAgd2lkdGg6ICdkZXZpY2Utd2lkdGgnLFxuICBpbml0aWFsU2NhbGU6IDEsXG4gIG1heGltdW1TY2FsZTogMSxcbn1cblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gUm9vdExheW91dCh7XG4gIGNoaWxkcmVuLFxufToge1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlXG59KSB7XG4gIHJldHVybiAoXG4gICAgPGh0bWwgbGFuZz1cImVuXCI+XG4gICAgICA8Ym9keT57Y2hpbGRyZW59PC9ib2R5PlxuICAgIDwvaHRtbD5cbiAgKVxufVxuIl0sIm5hbWVzIjpbIm1ldGFkYXRhIiwidGl0bGUiLCJkZXNjcmlwdGlvbiIsIm1hbmlmZXN0IiwiYXBwbGVXZWJBcHAiLCJjYXBhYmxlIiwic3RhdHVzQmFyU3R5bGUiLCJ2aWV3cG9ydCIsInRoZW1lQ29sb3IiLCJ3aWR0aCIsImluaXRpYWxTY2FsZSIsIm1heGltdW1TY2FsZSIsIlJvb3RMYXlvdXQiLCJjaGlsZHJlbiIsImh0bWwiLCJsYW5nIiwiYm9keSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(rsc)/./src/app/layout.tsx\n"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (/* binding */ RootLayout),\n/* harmony export */ metadata: () => (/* binding */ metadata),\n/* harmony export */ viewport: () => (/* binding */ viewport)\n/* harmony export */ });\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-dev-runtime */ \"(rsc)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/rsc/react-jsx-dev-runtime.js\");\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _stylesheet_css__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../stylesheet.css */ \"(rsc)/../../stylesheet.css\");\n/* harmony import */ var _globals_css__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./globals.css */ \"(rsc)/./src/app/globals.css\");\n\n\n\nconst metadata = {\n title: \"Learning Platform\",\n description: \"Employee knowledge and learning\",\n manifest: \"/manifest.json\",\n icons: {\n icon: \"/favicon.svg\"\n },\n appleWebApp: {\n capable: true,\n statusBarStyle: \"default\",\n title: \"Learning Platform\"\n },\n other: {\n \"mobile-web-app-capable\": \"yes\"\n }\n};\nconst viewport = {\n themeColor: \"#1F5560\",\n width: \"device-width\",\n initialScale: 1,\n maximumScale: 1\n};\nfunction RootLayout({ children }) {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"html\", {\n lang: \"en\",\n suppressHydrationWarning: true,\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"body\", {\n children: children\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\app\\\\layout.tsx\",\n lineNumber: 34,\n columnNumber: 7\n }, this)\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\app\\\\layout.tsx\",\n lineNumber: 33,\n columnNumber: 5\n }, this);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9zcmMvYXBwL2xheW91dC50c3giLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFDbUM7QUFDYjtBQUVmLE1BQU1BLFdBQXFCO0lBQ2hDQyxPQUFPO0lBQ1BDLGFBQWE7SUFDYkMsVUFBVTtJQUNWQyxPQUFPO1FBQUVDLE1BQU07SUFBZTtJQUM5QkMsYUFBYTtRQUNYQyxTQUFTO1FBQ1RDLGdCQUFnQjtRQUNoQlAsT0FBTztJQUNUO0lBQ0FRLE9BQU87UUFDTCwwQkFBMEI7SUFDNUI7QUFDRixFQUFDO0FBRU0sTUFBTUMsV0FBcUI7SUFDaENDLFlBQVk7SUFDWkMsT0FBTztJQUNQQyxjQUFjO0lBQ2RDLGNBQWM7QUFDaEIsRUFBQztBQUVjLFNBQVNDLFdBQVcsRUFDakNDLFFBQVEsRUFHVDtJQUNDLHFCQUNFLDhEQUFDQztRQUFLQyxNQUFLO1FBQUtDLHdCQUF3QjtrQkFDdEMsNEVBQUNDO3NCQUFNSjs7Ozs7Ozs7Ozs7QUFHYiIsInNvdXJjZXMiOlsid2VicGFjazovL2xlYXJuaW5nLXBsYXRmb3JtLWZyb250ZW5kLy4vc3JjL2FwcC9sYXlvdXQudHN4PzU3YTkiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBNZXRhZGF0YSwgVmlld3BvcnQgfSBmcm9tICduZXh0J1xuaW1wb3J0ICcuLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcydcbmltcG9ydCAnLi9nbG9iYWxzLmNzcydcblxuZXhwb3J0IGNvbnN0IG1ldGFkYXRhOiBNZXRhZGF0YSA9IHtcbiAgdGl0bGU6ICdMZWFybmluZyBQbGF0Zm9ybScsXG4gIGRlc2NyaXB0aW9uOiAnRW1wbG95ZWUga25vd2xlZGdlIGFuZCBsZWFybmluZycsXG4gIG1hbmlmZXN0OiAnL21hbmlmZXN0Lmpzb24nLFxuICBpY29uczogeyBpY29uOiAnL2Zhdmljb24uc3ZnJyB9LFxuICBhcHBsZVdlYkFwcDoge1xuICAgIGNhcGFibGU6IHRydWUsXG4gICAgc3RhdHVzQmFyU3R5bGU6ICdkZWZhdWx0JyxcbiAgICB0aXRsZTogJ0xlYXJuaW5nIFBsYXRmb3JtJyxcbiAgfSxcbiAgb3RoZXI6IHtcbiAgICAnbW9iaWxlLXdlYi1hcHAtY2FwYWJsZSc6ICd5ZXMnLFxuICB9LFxufVxuXG5leHBvcnQgY29uc3Qgdmlld3BvcnQ6IFZpZXdwb3J0ID0ge1xuICB0aGVtZUNvbG9yOiAnIzFGNTU2MCcsXG4gIHdpZHRoOiAnZGV2aWNlLXdpZHRoJyxcbiAgaW5pdGlhbFNjYWxlOiAxLFxuICBtYXhpbXVtU2NhbGU6IDEsXG59XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIFJvb3RMYXlvdXQoe1xuICBjaGlsZHJlbixcbn06IHtcbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZVxufSkge1xuICByZXR1cm4gKFxuICAgIDxodG1sIGxhbmc9XCJlblwiIHN1cHByZXNzSHlkcmF0aW9uV2FybmluZz5cbiAgICAgIDxib2R5PntjaGlsZHJlbn08L2JvZHk+XG4gICAgPC9odG1sPlxuICApXG59XG4iXSwibmFtZXMiOlsibWV0YWRhdGEiLCJ0aXRsZSIsImRlc2NyaXB0aW9uIiwibWFuaWZlc3QiLCJpY29ucyIsImljb24iLCJhcHBsZVdlYkFwcCIsImNhcGFibGUiLCJzdGF0dXNCYXJTdHlsZSIsIm90aGVyIiwidmlld3BvcnQiLCJ0aGVtZUNvbG9yIiwid2lkdGgiLCJpbml0aWFsU2NhbGUiLCJtYXhpbXVtU2NhbGUiLCJSb290TGF5b3V0IiwiY2hpbGRyZW4iLCJodG1sIiwibGFuZyIsInN1cHByZXNzSHlkcmF0aW9uV2FybmluZyIsImJvZHkiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(rsc)/./src/app/layout.tsx\n"); /***/ }) @@ -271,7 +271,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac var __webpack_require__ = require("../../../webpack-runtime.js"); __webpack_require__.C(exports); var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId)) -var __webpack_exports__ = __webpack_require__.X(0, ["vendor-chunks/next","vendor-chunks/pocketbase","vendor-chunks/@swc"], () => (__webpack_exec__("(rsc)/./node_modules/next/dist/build/webpack/loaders/next-app-loader.js?name=app%2Fadmin%2Fcurriculum%2Fpage&page=%2Fadmin%2Fcurriculum%2Fpage&appPaths=%2Fadmin%2Fcurriculum%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fcurriculum%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"))); +var __webpack_exports__ = __webpack_require__.X(0, ["vendor-chunks/next","vendor-chunks/@swc","vendor-chunks/pocketbase"], () => (__webpack_exec__("(rsc)/./node_modules/next/dist/build/webpack/loaders/next-app-loader.js?name=app%2Fadmin%2Fcurriculum%2Fpage&page=%2Fadmin%2Fcurriculum%2Fpage&appPaths=%2Fadmin%2Fcurriculum%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fcurriculum%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"))); module.exports = __webpack_exports__; })(); \ No newline at end of file diff --git a/app/frontend/.next/server/app/admin/documents/page.js b/app/frontend/.next/server/app/admin/documents/page.js index 5866220..47b9a98 100644 --- a/app/frontend/.next/server/app/admin/documents/page.js +++ b/app/frontend/.next/server/app/admin/documents/page.js @@ -136,7 +136,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DocumentUpload: () => (/* binding */ DocumentUpload)\n/* harmony export */ });\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-dev-runtime */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react-jsx-dev-runtime.js\");\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _components_ui_Button__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/components/ui/Button */ \"(ssr)/./src/components/ui/Button.tsx\");\n/* harmony import */ var _components_ui_ProgressBar__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/components/ui/ProgressBar */ \"(ssr)/./src/components/ui/ProgressBar.tsx\");\n/* harmony import */ var _lib_hooks_useIngestionStatus__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @/lib/hooks/useIngestionStatus */ \"(ssr)/./src/lib/hooks/useIngestionStatus.ts\");\n/* harmony import */ var _lib_pocketbase__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/lib/pocketbase */ \"(ssr)/./src/lib/pocketbase.ts\");\n/* harmony import */ var _lib_services__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @/lib/services */ \"(ssr)/./src/lib/services.ts\");\n/* __next_internal_client_entry_do_not_use__ DocumentUpload auto */ \n\n\n\n\n\n\nfunction DocumentUpload({ onSuccess }) {\n const fileInputRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);\n const [uploading, setUploading] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n const [jobId, setJobId] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const [uploadError, setUploadError] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const [dragOver, setDragOver] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n const { status, progress } = (0,_lib_hooks_useIngestionStatus__WEBPACK_IMPORTED_MODULE_4__.useIngestionStatus)(jobId);\n const handleFiles = (0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)(async (files)=>{\n if (!files || files.length === 0) return;\n const file = files[0];\n if (!file) return;\n const allowed = [\n \".pdf\",\n \".md\",\n \".txt\"\n ];\n const ext = file.name.slice(file.name.lastIndexOf(\".\")).toLowerCase();\n if (!allowed.includes(ext)) {\n setUploadError(`Unsupported file type: ${ext}. Use PDF, MD, or TXT.`);\n return;\n }\n setUploadError(null);\n setUploading(true);\n setJobId(null);\n try {\n // Create record in PocketBase\n const format = ext.slice(1);\n const fd = new FormData();\n fd.append(\"file\", file);\n fd.append(\"filename\", file.name);\n fd.append(\"format\", format);\n fd.append(\"status\", \"processing\");\n const doc = await _lib_pocketbase__WEBPACK_IMPORTED_MODULE_5__.pb.collection(\"source_documents\").create(fd);\n // Build PocketBase file download URL\n const pbUrl = \"http://localhost:8090\" ?? 0;\n const fileUrl = `${pbUrl}/api/files/source_documents/${doc.id}/${doc.file}`;\n // Kick off ingestion\n const { jobId: jId } = await (0,_lib_services__WEBPACK_IMPORTED_MODULE_6__.postIngest)({\n documentId: doc.id,\n filename: file.name,\n format,\n fileUrl\n });\n setJobId(jId);\n } catch (err) {\n setUploadError(err instanceof Error ? err.message : \"Upload failed\");\n } finally{\n setUploading(false);\n }\n }, []);\n function handleChange(e) {\n void handleFiles(e.target.files);\n e.target.value = \"\";\n }\n function handleDrop(e) {\n e.preventDefault();\n setDragOver(false);\n void handleFiles(e.dataTransfer.files);\n }\n function handleDragOver(e) {\n e.preventDefault();\n setDragOver(true);\n }\n function handleDragLeave() {\n setDragOver(false);\n }\n const isDone = status?.status === \"done\";\n const isFailed = status?.status === \"failed\";\n if (isDone && jobId) {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n background: \"var(--success)\",\n borderRadius: \"var(--r-md)\",\n padding: \"var(--s-5)\",\n textAlign: \"center\",\n display: \"flex\",\n flexDirection: \"column\",\n gap: \"var(--s-3)\"\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n style: {\n margin: 0,\n fontWeight: 600,\n color: \"var(--teal-900)\"\n },\n children: [\n \"Ingestion complete! \",\n status.themesFound,\n \" themes, \",\n status.topicsFound,\n \" topics found.\"\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 107,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_Button__WEBPACK_IMPORTED_MODULE_2__.Button, {\n variant: \"secondary\",\n size: \"sm\",\n onClick: ()=>{\n setJobId(null);\n onSuccess();\n },\n children: \"Upload another\"\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 110,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 96,\n columnNumber: 7\n }, this);\n }\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n display: \"flex\",\n flexDirection: \"column\",\n gap: \"var(--s-4)\"\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n onDrop: handleDrop,\n onDragOver: handleDragOver,\n onDragLeave: handleDragLeave,\n onClick: ()=>fileInputRef.current?.click(),\n style: {\n border: `2px dashed ${dragOver ? \"var(--accent)\" : \"var(--cream)\"}`,\n borderRadius: \"var(--r-lg)\",\n padding: \"var(--s-8, 64px) var(--s-5)\",\n textAlign: \"center\",\n cursor: \"pointer\",\n background: dragOver ? \"var(--accent-soft)\" : \"var(--bg-warm)\",\n transition: \"background 150ms, border-color 150ms\"\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"input\", {\n ref: fileInputRef,\n type: \"file\",\n accept: \".pdf,.md,.txt\",\n style: {\n display: \"none\"\n },\n onChange: handleChange\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 141,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n style: {\n margin: \"0 0 var(--s-2)\",\n fontSize: \"var(--t-lead)\",\n fontWeight: 600,\n color: \"var(--fg)\"\n },\n children: \"Drop a document here\"\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 148,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n style: {\n margin: 0,\n fontSize: \"var(--t-small)\",\n color: \"var(--fg-muted)\"\n },\n children: \"or tap to browse — PDF, Markdown, TXT\"\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 158,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 126,\n columnNumber: 7\n }, this),\n uploadError && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n background: \"#f8d7da\",\n color: \"#c0392b\",\n borderRadius: \"var(--r-sm)\",\n padding: \"var(--s-3) var(--s-4)\",\n fontSize: \"var(--t-small)\"\n },\n children: uploadError\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 164,\n columnNumber: 9\n }, this),\n (uploading || jobId) && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n display: \"flex\",\n flexDirection: \"column\",\n gap: \"var(--s-2)\"\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_ProgressBar__WEBPACK_IMPORTED_MODULE_3__.ProgressBar, {\n value: uploading ? 5 : progress,\n label: uploading ? \"Uploading…\" : isFailed ? `Failed: ${status?.reason ?? \"unknown error\"}` : status?.status ? `${status.status.charAt(0).toUpperCase()}${status.status.slice(1)}…` : \"Processing…\",\n color: isFailed ? \"#c0392b\" : \"var(--accent)\"\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 179,\n columnNumber: 11\n }, this),\n status && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n fontSize: \"var(--t-small)\",\n color: \"var(--fg-muted)\",\n display: \"flex\",\n gap: \"var(--s-4)\",\n flexWrap: \"wrap\"\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n children: [\n \"Chunks: \",\n status.chunksEmbedded,\n \"/\",\n status.chunksTotal\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 202,\n columnNumber: 15\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n children: [\n \"Themes: \",\n status.themesFound\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 203,\n columnNumber: 15\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n children: [\n \"Topics: \",\n status.topicsFound\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 204,\n columnNumber: 15\n }, this)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 193,\n columnNumber: 13\n }, this)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 178,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 125,\n columnNumber: 5\n }, this);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9zcmMvY29tcG9uZW50cy9hZG1pbi9Eb2N1bWVudFVwbG9hZC50c3giLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7QUFDNEQ7QUFDYjtBQUNVO0FBQ1U7QUFDOUI7QUFDTTtBQU1wQyxTQUFTUyxlQUFlLEVBQUVDLFNBQVMsRUFBdUI7SUFDL0QsTUFBTUMsZUFBZVYsNkNBQU1BLENBQW1CO0lBQzlDLE1BQU0sQ0FBQ1csV0FBV0MsYUFBYSxHQUFHWCwrQ0FBUUEsQ0FBQztJQUMzQyxNQUFNLENBQUNZLE9BQU9DLFNBQVMsR0FBR2IsK0NBQVFBLENBQWdCO0lBQ2xELE1BQU0sQ0FBQ2MsYUFBYUMsZUFBZSxHQUFHZiwrQ0FBUUEsQ0FBZ0I7SUFDOUQsTUFBTSxDQUFDZ0IsVUFBVUMsWUFBWSxHQUFHakIsK0NBQVFBLENBQUM7SUFFekMsTUFBTSxFQUFFa0IsTUFBTSxFQUFFQyxRQUFRLEVBQUUsR0FBR2YsaUZBQWtCQSxDQUFDUTtJQUVoRCxNQUFNUSxjQUFjbkIsa0RBQVdBLENBQzdCLE9BQU9vQjtRQUNMLElBQUksQ0FBQ0EsU0FBU0EsTUFBTUMsTUFBTSxLQUFLLEdBQUc7UUFDbEMsTUFBTUMsT0FBT0YsS0FBSyxDQUFDLEVBQUU7UUFDckIsSUFBSSxDQUFDRSxNQUFNO1FBRVgsTUFBTUMsVUFBVTtZQUFDO1lBQVE7WUFBTztTQUFPO1FBQ3ZDLE1BQU1DLE1BQU1GLEtBQUtHLElBQUksQ0FBQ0MsS0FBSyxDQUFDSixLQUFLRyxJQUFJLENBQUNFLFdBQVcsQ0FBQyxNQUFNQyxXQUFXO1FBQ25FLElBQUksQ0FBQ0wsUUFBUU0sUUFBUSxDQUFDTCxNQUFNO1lBQzFCVixlQUFlLENBQUMsdUJBQXVCLEVBQUVVLElBQUksc0JBQXNCLENBQUM7WUFDcEU7UUFDRjtRQUVBVixlQUFlO1FBQ2ZKLGFBQWE7UUFDYkUsU0FBUztRQUVULElBQUk7WUFDRiw4QkFBOEI7WUFDOUIsTUFBTWtCLFNBQVNOLElBQUlFLEtBQUssQ0FBQztZQUN6QixNQUFNSyxLQUFL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aEYsT0FBT3lELFdBQVc7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFPL0MiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9sZWFybmluZy1wbGF0Zm9ybS1mcm9udGVuZC8uL3NyYy9jb21wb25lbnRzL2FkbWluL0RvY3VtZW50VXBsb2FkLnRzeD83OTMwIl0sInNvdXJjZXNDb250ZW50IjpbIid1c2UgY2xpZW50J1xuaW1wb3J0IFJlYWN0LCB7IHVzZVJlZiwgdXNlU3RhdGUsIHVzZUNhbGxiYWNrIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBCdXR0b24gfSBmcm9tICdAL2NvbXBvbmVudHMvdWkvQnV0dG9uJ1xuaW1wb3J0IHsgUHJvZ3Jlc3NCYXIgfSBmcm9tICdAL2NvbXBvbmVudHMvdWkvUHJvZ3Jlc3NCYXInXG5pbXBvcnQgeyB1c2VJbmdlc3Rpb25TdGF0dXMgfSBmcm9tICdAL2xpYi9ob29rcy91c2VJbmdlc3Rpb25TdGF0dXMnXG5pbXBvcnQgeyBwYiB9IGZyb20gJ0AvbGliL3BvY2tldGJhc2UnXG5pbXBvcnQgeyBwb3N0SW5nZXN0IH0gZnJvbSAnQC9saWIvc2VydmljZXMnXG5cbmludGVyZmFjZSBEb2N1bWVudFVwbG9hZFByb3BzIHtcbiAgb25TdWNjZXNzOiAoKSA9PiB2b2lkXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBEb2N1bWVudFVwbG9hZCh7IG9uU3VjY2VzcyB9OiBEb2N1bWVudFVwbG9hZFByb3BzKSB7XG4gIGNvbnN0IGZpbGVJbnB1dFJlZiA9IHVzZVJlZjxIVE1MSW5wdXRFbGVtZW50PihudWxsKVxuICBjb25zdCBbdXBsb2FkaW5nLCBzZXRVcGxvYWRpbmddID0gdXNlU3RhdGUoZmFsc2UpXG4gIGNvbnN0IFtqb2JJZCwgc2V0Sm9iSWRdID0gdXNlU3RhdGU8c3RyaW5nIHwgbnVsbD4obnVsbClcbiAgY29uc3QgW3VwbG9hZEVycm9yLCBzZXRVcGxvYWRFcnJvcl0gPSB1c2VTdGF0ZTxzdHJpbmcgfCBudWxsPihudWxsKVxuICBjb25zdCBbZHJhZ092ZXIsIHNldERyYWdPdmVyXSA9IHVzZVN0YXRlKGZhbHNlKVxuXG4gIGNvbnN0IHsgc3RhdHVzLCBwcm9ncmVzcyB9ID0gdXNlSW5nZXN0aW9uU3RhdHVzKGpvYklkKVxuXG4gIGNvbnN0IGhhbmRsZUZpbGVzID0gdXNlQ2FsbGJhY2soXG4gICAgYXN5bmMgKGZpbGVzOiBGaWxlTGlzdCB8IG51bGwpID0+IHtcbiAgICAgIGlmICghZmlsZXMgfHwgZmlsZXMubGVuZ3RoID09PSAwKSByZXR1cm5cbiAgICAgIGNvbnN0IGZpbGUgPSBmaWxlc1swXVxuICAgICAgaWYgKCFmaWxlKSByZXR1cm5cblxuICAgICAgY29uc3QgYWxsb3dlZCA9IFsnLnBkZicsICcubWQnLCAnLnR4dCddXG4gICAgICBjb25zdCBleHQgPSBmaWxlLm5hbWUuc2xpY2UoZmlsZS5uYW1lLmxhc3RJbmRleE9mKCcuJykpLnRvTG93ZXJDYXNlKClcbiAgICAgIGlmICghYWxsb3dlZC5pbmNsdWRlcyhleHQpKSB7XG4gICAgICAgIHNldFVwbG9hZEVycm9yKGBVbnN1cHBvcnRlZCBmaWxlIHR5cGU6ICR7ZXh0fS4gVXNlIFBERiwgTUQsIG9yIFRYVC5gKVxuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgc2V0VXBsb2FkRXJyb3IobnVsbClcbiAgICAgIHNldFVwbG9hZGluZyh0cnVlKVxuICAgICAgc2V0Sm9iSWQobnVsbClcblxuICAgICAgdHJ5IHtcbiAgICAgICAgLy8gQ3JlYXRlIHJlY29yZCBpbiBQb2NrZXRCYXNlXG4gICAgICAgIGNvbnN0IGZvcm1hdCA9IGV4dC5zbGljZSgxKSBhcyAncGRmJyB8ICdtZCcgfCAndHh0J1xuICAgICAgICBjb25zdCBmZCA9IG5ldyBGb3JtRGF0YSgpXG4gICAgICAgIGZkLmFwcGVuZCgnZmlsZScsIGZpbGUpXG4gICAgICAgIGZkLmFwcGVuZCgnZmlsZW5hbWUnLCBmaWxlLm5hbWUpXG4gICAgICAgIGZkLmFwcGVuZCgnZm9ybWF0JywgZm9ybWF0KVxuICAgICAgICBmZC5hcHBlbmQoJ3N0YXR1cycsICdwcm9jZXNzaW5nJylcblxuICAgICAgICBjb25zdCBkb2MgPSBhd2FpdCBwYi5jb2xsZWN0aW9uKCdzb3VyY2VfZG9jdW1lbnRzJykuY3JlYXRlPHsgaWQ6IHN0cmluZzsgZmlsZTogc3RyaW5nIH0+KGZkKVxuXG4gICAgICAgIC8vIEJ1aWxkIFBvY2tldEJhc2UgZmlsZSBkb3dubG9hZCBVUkxcbiAgICAgICAgY29uc3QgcGJVcmwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19QT0NLRVRCQVNFX1VSTCA/PyAnaHR0cDovL2xvY2FsaG9zdDo4MDkwJ1xuICAgICAgICBjb25zdCBmaWxlVXJsID0gYCR7cGJVcmx9L2FwaS9maWxlcy9zb3VyY2VfZG9jdW1lbnRzLyR7ZG9jLmlkfS8ke2RvYy5maWxlfWBcblxuICAgICAgICAvLyBLaWNrIG9mZiBpbmdlc3Rpb25cbiAgICAgICAgY29uc3QgeyBqb2JJZDogaklkIH0gPSBhd2FpdCBwb3N0SW5nZXN0KHtcbiAgICAgICAgICBkb2N1bWVudElkOiBkb2MuaWQsXG4gICAgICAgICAgZmlsZW5hbWU6IGZpbGUubmFtZSxcbiAgICAgICAgICBmb3JtYXQsXG4gICAgICAgICAgZmlsZVVybCxcbiAgICAgICAgfSlcbiAgICAgICAgc2V0Sm9iSWQoaklkKVxuICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgIHNldFVwbG9hZEVycm9yKGVyciBpbnN0YW5jZW9mIEVycm9yID8gZXJyLm1lc3NhZ2UgOiAnVXBsb2FkIGZhaWxlZCcpXG4gICAgICB9IGZpbmFsbHkge1xuICAgICAgICBzZXRVcGxvYWRpbmcoZmFsc2UpXG4gICAgICB9XG4gICAgfSxcbiAgICBbXSxcbiAgKVxuXG4gIGZ1bmN0aW9uIGhhbmRsZUNoYW5nZShlOiBSZWFjdC5DaGFuZ2VFdmVudDxIVE1MSW5wdXRFbGVtZW50Pikge1xuICAgIHZvaWQgaGFuZGxlRmlsZXMoZS50YXJnZXQuZmlsZXMpXG4gICAgZS50YXJnZXQudmFsdWUgPSAnJ1xuICB9XG5cbiAgZnVuY3Rpb24gaGFuZGxlRHJvcChlOiBSZWFjdC5EcmFnRXZlbnQ8SFRNTERpdkVsZW1lbnQ+KSB7XG4gICAgZS5wcmV2ZW50RGVmYXVsdCgpXG4gICAgc2V0RHJhZ092ZXIoZmFsc2UpXG4gICAgdm9pZCBoYW5kbGVGaWxlcyhlLmRhdGFUcmFuc2Zlci5maWxlcylcbiAgfVxuXG4gIGZ1bmN0aW9uIGhhbmRsZURyYWdPdmVyKGU6IFJlYWN0LkRyYWdFdmVudDxIVE1MRGl2RWxlbWVudD4pIHtcbiAgICBlLnByZXZlbnREZWZhdWx0KClcbiAgICBzZXREcmFnT3Zlcih0cnVlKVxuICB9XG5cbiAgZnVuY3Rpb24gaGFuZGxlRHJhZ0xlYXZlKCkge1xuICAgIHNldERyYWdPdmVyKGZhbHNlKVxuICB9XG5cbiAgY29uc3QgaXNEb25lID0gc3RhdHVzPy5zdGF0dXMgPT09ICdkb25lJ1xuICBjb25zdCBpc0ZhaWxlZCA9IHN0YXR1cz8uc3RhdHVzID09PSAnZmFpbGVkJ1xuXG4gIGlmIChpc0RvbmUgJiYgam9iSWQpIHtcbiAgICByZXR1cm4gKFxuICAgICAgPGRpdlxuICAgICAgICBzdHlsZT17e1xuICAgICAgICAgIGJhY2tncm91bmQ6ICd2YXIoLS1zdWNjZXNzKScsXG4gICAgICAgICAgYm9yZGVyUmFkaXVzOiAndmFyKC0tci1tZCknLFxuICAgICAgICAgIHBhZGRpbmc6ICd2YXIoLS1zLTUpJyxcbiAgICAgICAgICB0ZXh0QWxpZ246ICdjZW50ZXInLFxuICAgICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICAgICAgICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcbiAgICAgICAgICBnYXA6ICd2YXIoLS1zLTMpJyxcbiAgICAgICAgfX1cbiAgICAgID5cbiAgICAgICAgPHAgc3R5bGU9e3sgbWFyZ2luOiAwLCBmb250V2VpZ2h0OiA2MDAsIGNvbG9yOiAndmFyKC0tdGVhbC05MDApJyB9fT5cbiAgICAgICAgICBJbmdlc3Rpb24gY29tcGxldGUhIHtzdGF0dXMudGhlbWVzRm91bmR9IHRoZW1lcywge3N0YXR1cy50b3BpY3NGb3VuZH0gdG9waWNzIGZvdW5kLlxuICAgICAgICA8L3A+XG4gICAgICAgIDxCdXR0b25cbiAgICAgICAgICB2YXJpYW50PVwic2Vjb25kYXJ5XCJcbiAgICAgICAgICBzaXplPVwic21cIlxuICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICAgIHNldEpvYklkKG51bGwpXG4gICAgICAgICAgICBvblN1Y2Nlc3MoKVxuICAgICAgICAgIH19XG4gICAgICAgID5cbiAgICAgICAgICBVcGxvYWQgYW5vdGhlclxuICAgICAgICA8L0J1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgIClcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPGRpdiBzdHlsZT17eyBkaXNwbGF5OiAnZmxleCcsIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLCBnYXA6ICd2YXIoLS1zLTQpJyB9fT5cbiAgICAgIDxkaXZcbiAgICAgICAgb25Ecm9wPXtoYW5kbGVEcm9wfVxuICAgICAgICBvbkRyYWdPdmVyPXtoYW5kbGVEcmFnT3Zlcn1cbiAgICAgICAgb25EcmFnTGVhdmU9e2hhbmRsZURyYWdMZWF2ZX1cbiAgICAgICAgb25DbGljaz17KCkgPT4gZmlsZUlucHV0UmVmLmN1cnJlbnQ/LmNsaWNrKCl9XG4gICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgYm9yZGVyOiBgMnB4IGRhc2hlZCAke2RyYWdPdmVyID8gJ3ZhcigtLWFjY2VudCknIDogJ3ZhcigtLWNyZWFtKSd9YCxcbiAgICAgICAgICBib3JkZXJSYWRpdXM6ICd2YXIoLS1yLWxnKScsXG4gICAgICAgICAgcGFkZGluZzogJ3ZhcigtLXMtOCwgNjRweCkgdmFyKC0tcy01KScsXG4gICAgICAgICAgdGV4dEFsaWduOiAnY2VudGVyJyxcbiAgICAgICAgICBjdXJzb3I6ICdwb2ludGVyJyxcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBkcmFnT3ZlciA/ICd2YXIoLS1hY2NlbnQtc29mdCknIDogJ3ZhcigtLWJnLXdhcm0pJyxcbiAgICAgICAgICB0cmFuc2l0aW9uOiAnYmFja2dyb3VuZCAxNTBtcywgYm9yZGVyLWNvbG9yIDE1MG1zJyxcbiAgICAgICAgfX1cbiAgICAgID5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgcmVmPXtmaWxlSW5wdXRSZWZ9XG4gICAgICAgICAgdHlwZT1cImZpbGVcIlxuICAgICAgICAgIGFjY2VwdD1cIi5wZGYsLm1kLC50eHRcIlxuICAgICAgICAgIHN0eWxlPXt7IGRpc3BsYXk6ICdub25lJyB9fVxuICAgICAgICAgIG9uQ2hhbmdlPXtoYW5kbGVDaGFuZ2V9XG4gICAgICAgIC8+XG4gICAgICAgIDxwXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIG1hcmdpbjogJzAgMCB2YXIoLS1zLTIpJyxcbiAgICAgICAgICAgIGZvbnRTaXplOiAndmFyKC0tdC1sZWFkKScsXG4gICAgICAgICAgICBmb250V2VpZ2h0OiA2MDAsXG4gICAgICAgICAgICBjb2xvcjogJ3ZhcigtLWZnKScsXG4gICAgICAgICAgfX1cbiAgICAgICAgPlxuICAgICAgICAgIERyb3AgYSBkb2N1bWVudCBoZXJlXG4gICAgICAgIDwvcD5cbiAgICAgICAgPHAgc3R5bGU9e3sgbWFyZ2luOiAwLCBmb250U2l6ZTogJ3ZhcigtLXQtc21hbGwpJywgY29sb3I6ICd2YXIoLS1mZy1tdXRlZCknIH19PlxuICAgICAgICAgIG9yIHRhcCB0byBicm93c2Ug4oCUIFBERiwgTWFya2Rvd24sIFRYVFxuICAgICAgICA8L3A+XG4gICAgICA8L2Rpdj5cblxuICAgICAge3VwbG9hZEVycm9yICYmIChcbiAgICAgICAgPGRpdlxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAnI2Y4ZDdkYScsXG4gICAgICAgICAgICBjb2xvcjogJyNjMDM5MmInLFxuICAgICAgICAgICAgYm9yZGVyUmFkaXVzOiAndmFyKC0tci1zbSknLFxuICAgICAgICAgICAgcGFkZGluZzogJ3ZhcigtLXMtMykgdmFyKC0tcy00KScsXG4gICAgICAgICAgICBmb250U2l6ZTogJ3ZhcigtLXQtc21hbGwpJyxcbiAgICAgICAgICB9fVxuICAgICAgICA+XG4gICAgICAgICAge3VwbG9hZEVycm9yfVxuICAgICAgICA8L2Rpdj5cbiAgICAgICl9XG5cbiAgICAgIHsodXBsb2FkaW5nIHx8IGpvYklkKSAmJiAoXG4gICAgICAgIDxkaXYgc3R5bGU9e3sgZGlzcGxheTogJ2ZsZXgnLCBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJywgZ2FwOiAndmFyKC0tcy0yKScgfX0+XG4gICAgICAgICAgPFByb2dyZXNzQmFyXG4gICAgICAgICAgICB2YWx1ZT17dXBsb2FkaW5nID8gNSA6IHByb2dyZXNzfVxuICAgICAgICAgICAgbGFiZWw9e1xuICAgICAgICAgICAgICB1cGxvYWRpbmdcbiAgICAgICAgICAgICAgICA/ICdVcGxvYWRpbmfigKYnXG4gICAgICAgICAgICAgICAgOiBpc0ZhaWxlZFxuICAgICAgICAgICAgICAgID8gYEZhaWxlZDogJHtzdGF0dXM/LnJlYXNvbiA/PyAndW5rbm93biBlcnJvcid9YFxuICAgICAgICAgICAgICAgIDogc3RhdHVzPy5zdGF0dXNcbiAgICAgICAgICAgICAgICA/IGAke3N0YXR1cy5zdGF0dXMuY2hhckF0KDApLnRvVXBwZXJDYXNlKCl9JHtzdGF0dXMuc3RhdHVzLnNsaWNlKDEpfeKApmBcbiAgICAgICAgICAgICAgICA6ICdQcm9jZXNzaW5n4oCmJ1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29sb3I9e2lzRmFpbGVkID8gJyNjMDM5MmInIDogJ3ZhcigtLWFjY2VudCknfVxuICAgICAgICAgIC8+XG4gICAgICAgICAge3N0YXR1cyAmJiAoXG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgZm9udFNpemU6ICd2YXIoLS10LXNtYWxsKScsXG4gICAgICAgICAgICAgICAgY29sb3I6ICd2YXIoLS1mZy1tdXRlZCknLFxuICAgICAgICAgICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICAgICAgICAgICAgICBnYXA6ICd2YXIoLS1zLTQpJyxcbiAgICAgICAgICAgICAgICBmbGV4V3JhcDogJ3dyYXAnLFxuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8c3Bhbj5DaHVua3M6IHtzdGF0dXMuY2h1bmtzRW1iZWRkZWR9L3tzdGF0dXMuY2h1bmtzVG90YWx9PC9zcGFuPlxuICAgICAgICAgICAgICA8c3Bhbj5UaGVtZXM6IHtzdGF0dXMudGhlbWVzRm91bmR9PC9zcGFuPlxuICAgICAgICAgICAgICA8c3Bhbj5Ub3BpY3M6IHtzdGF0dXMudG9waWNzRm91bmR9PC9zcGFuPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9kaXY+XG4gICAgICApfVxuICAgIDwvZGl2PlxuICApXG59XG4iXSwibmFtZXMiOlsiUmVhY3QiLCJ1c2VSZWYiLCJ1c2VTdGF0ZSIsInVzZUNhbGxiYWNrIiwiQnV0dG9uIiwiUHJvZ3Jlc3NCYXIiLCJ1c2VJbmdlc3Rpb25TdGF0dXMiLCJwYiIsInBvc3RJbmdlc3QiLCJEb2N1bWVudFVwbG9hZCIsIm9uU3VjY2VzcyIsImZpbGVJbnB1dFJlZiIsInVwbG9hZGluZyIsInNldFVwbG9hZGluZyIsImpvYklkIiwic2V0Sm9iSWQiLCJ1cGxvYWRFcnJvciIsInNldFVwbG9hZEVycm9yIiwiZHJhZ092ZXIiLCJzZXREcmFnT3ZlciIsInN0YXR1cyIsInByb2dyZXNzIiwiaGFuZGxlRmlsZXMiLCJmaWxlcyIsImxlbmd0aCIsImZpbGUiLCJhbGxvd2VkIiwiZXh0IiwibmFtZSIsInNsaWNlIiwibGFzdEluZGV4T2YiLCJ0b0xvd2VyQ2FzZSIsImluY2x1ZGVzIiwiZm9ybWF0IiwiZmQiLCJGb3JtRGF0YSIsImFwcGVuZCIsImRvYyIsImNvbGxlY3Rpb24iLCJjcmVhdGUiLCJwYlVybCIsInByb2Nlc3MiLCJlbnYiLCJORVhUX1BVQkxJQ19QT0NLRVRCQVNFX1VSTCIsImZpbGVVcmwiLCJpZCIsImpJZCIsImRvY3VtZW50SWQiLCJmaWxlbmFtZSIsImVyciIsIkVycm9yIiwibWVzc2FnZSIsImhhbmRsZUNoYW5nZSIsImUiLCJ0YXJnZXQiLCJ2YWx1ZSIsImhhbmRsZURyb3AiLCJwcmV2ZW50RGVmYXVsdCIsImRhdGFUcmFuc2ZlciIsImhhbmRsZURyYWdPdmVyIiwiaGFuZGxlRHJhZ0xlYXZlIiwiaXNEb25lIiwiaXNGYWlsZWQiLCJkaXYiLCJzdHlsZSIsImJhY2tncm91bmQiLCJib3JkZXJSYWRpdXMiLCJwYWRkaW5nIiwidGV4dEFsaWduIiwiZGlzcGxheSIsImZsZXhEaXJlY3Rpb24iLCJnYXAiLCJwIiwibWFyZ2luIiwiZm9udFdlaWdodCIsImNvbG9yIiwidGhlbWVzRm91bmQiLCJ0b3BpY3NGb3VuZCIsInZhcmlhbnQiLCJzaXplIiwib25DbGljayIsIm9uRHJvcCIsIm9uRHJhZ092ZXIiLCJvbkRyYWdMZWF2ZSIsImN1cnJlbnQiLCJjbGljayIsImJvcmRlciIsImN1cnNvciIsInRyYW5zaXRpb24iLCJpbnB1dCIsInJlZiIsInR5cGUiLCJhY2NlcHQiLCJvbkNoYW5nZSIsImZvbnRTaXplIiwibGFiZWwiLCJyZWFzb24iLCJjaGFyQXQiLCJ0b1VwcGVyQ2FzZSIsImZsZXhXcmFwIiwic3BhbiIsImNodW5rc0VtYmVkZGVkIiwiY2h1bmtzVG90YWwiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./src/components/admin/DocumentUpload.tsx\n"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DocumentUpload: () => (/* binding */ DocumentUpload)\n/* harmony export */ });\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-dev-runtime */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react-jsx-dev-runtime.js\");\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _components_ui_Button__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/components/ui/Button */ \"(ssr)/./src/components/ui/Button.tsx\");\n/* harmony import */ var _components_ui_ProgressBar__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/components/ui/ProgressBar */ \"(ssr)/./src/components/ui/ProgressBar.tsx\");\n/* harmony import */ var _lib_hooks_useIngestionStatus__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @/lib/hooks/useIngestionStatus */ \"(ssr)/./src/lib/hooks/useIngestionStatus.ts\");\n/* harmony import */ var _lib_pocketbase__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/lib/pocketbase */ \"(ssr)/./src/lib/pocketbase.ts\");\n/* harmony import */ var _lib_services__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @/lib/services */ \"(ssr)/./src/lib/services.ts\");\n/* __next_internal_client_entry_do_not_use__ DocumentUpload auto */ \n\n\n\n\n\n\nfunction DocumentUpload({ onSuccess }) {\n const fileInputRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);\n const [uploading, setUploading] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n const [jobId, setJobId] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const [uploadError, setUploadError] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const [dragOver, setDragOver] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n const { status, progress } = (0,_lib_hooks_useIngestionStatus__WEBPACK_IMPORTED_MODULE_4__.useIngestionStatus)(jobId);\n const handleFiles = (0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)(async (files)=>{\n if (!files || files.length === 0) return;\n const file = files[0];\n if (!file) return;\n const allowed = [\n \".pdf\",\n \".md\",\n \".txt\"\n ];\n const ext = file.name.slice(file.name.lastIndexOf(\".\")).toLowerCase();\n if (!allowed.includes(ext)) {\n setUploadError(`Unsupported file type: ${ext}. Use PDF, MD, or TXT.`);\n return;\n }\n setUploadError(null);\n setUploading(true);\n setJobId(null);\n try {\n // Create record in PocketBase\n const format = ext.slice(1);\n // Force explicit MIME type — Windows doesn't register .md and sends\n // application/octet-stream which PocketBase rejects.\n const mimeMap = {\n pdf: \"application/pdf\",\n md: \"text/markdown\",\n txt: \"text/plain\"\n };\n const blob = new Blob([\n file\n ], {\n type: mimeMap[format] ?? file.type\n });\n const fd = new FormData();\n fd.append(\"file\", blob, file.name);\n fd.append(\"filename\", file.name);\n fd.append(\"format\", format);\n fd.append(\"status\", \"processing\");\n const doc = await _lib_pocketbase__WEBPACK_IMPORTED_MODULE_5__.pb.collection(\"source_documents\").create(fd);\n // Build PocketBase file download URL\n const pbUrl = \"http://localhost:8090\" ?? 0;\n const fileUrl = `${pbUrl}/api/files/source_documents/${doc.id}/${doc.file}`;\n // Kick off ingestion\n const { jobId: jId } = await (0,_lib_services__WEBPACK_IMPORTED_MODULE_6__.postIngest)({\n documentId: doc.id,\n filename: file.name,\n format,\n fileUrl\n });\n setJobId(jId);\n } catch (err) {\n // PocketBase ClientResponseError has a `response` with field details\n const pbErr = err;\n const detail = pbErr.response?.data ? Object.entries(pbErr.response.data).map(([f, v])=>`${f}: ${v?.message ?? \"\"}`).join(\", \") : null;\n setUploadError(detail ?? (err instanceof Error ? err.message : \"Upload failed\"));\n } finally{\n setUploading(false);\n }\n }, []);\n function handleChange(e) {\n void handleFiles(e.target.files);\n e.target.value = \"\";\n }\n function handleDrop(e) {\n e.preventDefault();\n setDragOver(false);\n void handleFiles(e.dataTransfer.files);\n }\n function handleDragOver(e) {\n e.preventDefault();\n setDragOver(true);\n }\n function handleDragLeave() {\n setDragOver(false);\n }\n const isDone = status?.status === \"done\";\n const isFailed = status?.status === \"failed\";\n if (isDone && jobId) {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n background: \"var(--success)\",\n borderRadius: \"var(--r-md)\",\n padding: \"var(--s-5)\",\n textAlign: \"center\",\n display: \"flex\",\n flexDirection: \"column\",\n gap: \"var(--s-3)\"\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n style: {\n margin: 0,\n fontWeight: 600,\n color: \"var(--teal-900)\"\n },\n children: [\n \"Ingestion complete! \",\n status.themesFound,\n \" themes, \",\n status.topicsFound,\n \" topics found.\"\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 124,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_Button__WEBPACK_IMPORTED_MODULE_2__.Button, {\n variant: \"secondary\",\n size: \"sm\",\n onClick: ()=>{\n setJobId(null);\n onSuccess();\n },\n children: \"Upload another\"\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 127,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 113,\n columnNumber: 7\n }, this);\n }\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n display: \"flex\",\n flexDirection: \"column\",\n gap: \"var(--s-4)\"\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n onDrop: handleDrop,\n onDragOver: handleDragOver,\n onDragLeave: handleDragLeave,\n onClick: ()=>fileInputRef.current?.click(),\n style: {\n border: `2px dashed ${dragOver ? \"var(--accent)\" : \"var(--cream)\"}`,\n borderRadius: \"var(--r-lg)\",\n padding: \"var(--s-8, 64px) var(--s-5)\",\n textAlign: \"center\",\n cursor: \"pointer\",\n background: dragOver ? \"var(--accent-soft)\" : \"var(--bg-warm)\",\n transition: \"background 150ms, border-color 150ms\"\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"input\", {\n ref: fileInputRef,\n type: \"file\",\n accept: \".pdf,.md,.txt\",\n style: {\n display: \"none\"\n },\n onChange: handleChange\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 158,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n style: {\n margin: \"0 0 var(--s-2)\",\n fontSize: \"var(--t-lead)\",\n fontWeight: 600,\n color: \"var(--fg)\"\n },\n children: \"Drop a document here\"\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 165,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n style: {\n margin: 0,\n fontSize: \"var(--t-small)\",\n color: \"var(--fg-muted)\"\n },\n children: \"or tap to browse — PDF, Markdown, TXT\"\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 175,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 143,\n columnNumber: 7\n }, this),\n uploadError && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n background: \"#f8d7da\",\n color: \"#c0392b\",\n borderRadius: \"var(--r-sm)\",\n padding: \"var(--s-3) var(--s-4)\",\n fontSize: \"var(--t-small)\"\n },\n children: uploadError\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 181,\n columnNumber: 9\n }, this),\n (uploading || jobId) && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n display: \"flex\",\n flexDirection: \"column\",\n gap: \"var(--s-2)\"\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_ProgressBar__WEBPACK_IMPORTED_MODULE_3__.ProgressBar, {\n value: uploading ? 5 : progress,\n label: uploading ? \"Uploading…\" : isFailed ? `Failed: ${status?.reason ?? \"unknown error\"}` : status?.status ? `${status.status.charAt(0).toUpperCase()}${status.status.slice(1)}…` : \"Processing…\",\n color: isFailed ? \"#c0392b\" : \"var(--accent)\"\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 196,\n columnNumber: 11\n }, this),\n status && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n fontSize: \"var(--t-small)\",\n color: \"var(--fg-muted)\",\n display: \"flex\",\n gap: \"var(--s-4)\",\n flexWrap: \"wrap\"\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n children: [\n \"Chunks: \",\n status.chunksEmbedded,\n \"/\",\n status.chunksTotal\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 219,\n columnNumber: 15\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n children: [\n \"Themes: \",\n status.themesFound\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 220,\n columnNumber: 15\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n children: [\n \"Topics: \",\n status.topicsFound\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 221,\n columnNumber: 15\n }, this)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 210,\n columnNumber: 13\n }, this)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 195,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 142,\n columnNumber: 5\n }, this);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9zcmMvY29tcG9uZW50cy9hZG1pbi9Eb2N1bWVudFVwbG9hZC50c3giLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7QUFDNEQ7QUFDYjtBQUNVO0FBQ1U7QUFDOUI7QUFDTTtBQU1wQyxTQUFTUyxlQUFlLEVBQUVDLFNBQVMsRUFBdUI7SUFDL0QsTUFBTUMsZUFBZVYsNkNBQU1BLENBQW1CO0lBQzlDLE1BQU0sQ0FBQ1csV0FBV0MsYUFBYSxHQUFHWCwrQ0FBUUEsQ0FBQztJQUMzQyxNQUFNLENBQUNZLE9BQU9DLFNBQVMsR0FBR2IsK0NBQVFBLENBQWdCO0lBQ2xELE1BQU0sQ0FBQ2MsYUFBYUMsZUFBZSxHQUFHZiwrQ0FBUUEsQ0FBZ0I7SUFDOUQsTUFBTSxDQUFDZ0IsVUFBVUMsWUFBWSxHQUFHakIsK0NBQVFBLENBQUM7SUFFekMsTUFBTSxFQUFFa0IsTUFBTSxFQUFFQyxRQUFRLEVBQUUsR0FBR2YsaUZBQWtCQSxDQUFDUTtJQUVoRCxNQUFNUSxjQUFjbkIsa0RBQVdBLENBQzdCLE9BQU9vQjtRQUNMLElBQUksQ0FBQ0EsU0FBU0EsTUFBTUMsTUFBTSxLQUFLLEdBQUc7UUFDbEMsTUFBTUMsT0FBT0YsS0FBSyxDQUFDLEVBQUU7UUFDckIsSUFBSSxDQUFDRSxNQUFNO1FBRVgsTUFBTUMsVUFBVTtZQUFDO1lBQVE7WUFBTztTQUFPO1FBQ3ZDLE1BQU1DLE1BQU1GLEtBQUtHLElBQUksQ0FBQ0MsS0FBSyxDQUFDSixLQUFLRyxJQUFJLENBQUNFLFdBQVcsQ0FBQyxNQUFNQyxXQUFXO1FBQ25FLElBQUksQ0FBQ0wsUUFBUU0sUUFBUSxDQUFDTCxNQUFNO1lBQzFCVixlQUFlLENBQUMsdUJBQXVCLEVBQUVVLElBQUksc0JBQXNCLENBQUM7WUFDcEU7UUFDRjtRQUVBVixlQUFlO1FBQ2ZKLGFBQWE7UUFDYkUsU0FBUztRQUVULElBQUk7WUFDRiw4QkFBOEI7WUFDOUIsTUFBTWtCLFNBQVNOLElBQUlFLEtBQUssQ0FBQztZQUV6QixvRUFBb0U7WUFD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QVEsRUFBRTNELFFBQVE0RixVQUFVLGdCQUFnQixDQUFDLEdBQzlDNUYsUUFBUUEsU0FDUixDQUFDLEVBQUVBLE9BQU9BLE1BQU0sQ0FBQzZGLE1BQU0sQ0FBQyxHQUFHQyxXQUFXLEdBQUcsRUFBRTlGLE9BQU9BLE1BQU0sQ0FBQ1MsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQ3BFO3dCQUVOK0QsT0FBT2IsV0FBVyxZQUFZOzs7Ozs7b0JBRS9CM0Qsd0JBQ0MsOERBQUM0RDt3QkFDQ0MsT0FBTzs0QkFDTDZCLFVBQVU7NEJBQ1ZsQixPQUFPOzRCQUNQTixTQUFTOzRCQUNURSxLQUFLOzRCQUNMMkIsVUFBVTt3QkFDWjs7MENBRUEsOERBQUNDOztvQ0FBSztvQ0FBU2hHLE9BQU9pRyxjQUFjO29DQUFDO29DQUFFakcsT0FBT2tHLFdBQVc7Ozs7Ozs7MENBQ3pELDhEQUFDRjs7b0NBQUs7b0NBQVNoRyxPQUFPeUUsV0FBVzs7Ozs7OzswQ0FDakMsOERBQUN1Qjs7b0NBQUs7b0NBQVNoRyxPQUFPMEUsV0FBVzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQU8vQyIsInNvdXJjZXMiOlsid2VicGFjazovL2xlYXJuaW5nLXBsYXRmb3JtLWZyb250ZW5kLy4vc3JjL2NvbXBvbmVudHMvYWRtaW4vRG9jdW1lbnRVcGxvYWQudHN4Pzc5MzAiXSwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBjbGllbnQnXG5pbXBvcnQgUmVhY3QsIHsgdXNlUmVmLCB1c2VTdGF0ZSwgdXNlQ2FsbGJhY2sgfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IEJ1dHRvbiB9IGZyb20gJ0AvY29tcG9uZW50cy91aS9CdXR0b24nXG5pbXBvcnQgeyBQcm9ncmVzc0JhciB9IGZyb20gJ0AvY29tcG9uZW50cy91aS9Qcm9ncmVzc0JhcidcbmltcG9ydCB7IHVzZUluZ2VzdGlvblN0YXR1cyB9IGZyb20gJ0AvbGliL2hvb2tzL3VzZUluZ2VzdGlvblN0YXR1cydcbmltcG9ydCB7IHBiIH0gZnJvbSAnQC9saWIvcG9ja2V0YmFzZSdcbmltcG9ydCB7IHBvc3RJbmdlc3QgfSBmcm9tICdAL2xpYi9zZXJ2aWNlcydcblxuaW50ZXJmYWNlIERvY3VtZW50VXBsb2FkUHJvcHMge1xuICBvblN1Y2Nlc3M6ICgpID0+IHZvaWRcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIERvY3VtZW50VXBsb2FkKHsgb25TdWNjZXNzIH06IERvY3VtZW50VXBsb2FkUHJvcHMpIHtcbiAgY29uc3QgZmlsZUlucHV0UmVmID0gdXNlUmVmPEhUTUxJbnB1dEVsZW1lbnQ+KG51bGwpXG4gIGNvbnN0IFt1cGxvYWRpbmcsIHNldFVwbG9hZGluZ10gPSB1c2VTdGF0ZShmYWxzZSlcbiAgY29uc3QgW2pvYklkLCBzZXRKb2JJZF0gPSB1c2VTdGF0ZTxzdHJpbmcgfCBudWxsPihudWxsKVxuICBjb25zdCBbdXBsb2FkRXJyb3IsIHNldFVwbG9hZEVycm9yXSA9IHVzZVN0YXRlPHN0cmluZyB8IG51bGw+KG51bGwpXG4gIGNvbnN0IFtkcmFnT3Zlciwgc2V0RHJhZ092ZXJdID0gdXNlU3RhdGUoZmFsc2UpXG5cbiAgY29uc3QgeyBzdGF0dXMsIHByb2dyZXNzIH0gPSB1c2VJbmdlc3Rpb25TdGF0dXMoam9iSWQpXG5cbiAgY29uc3QgaGFuZGxlRmlsZXMgPSB1c2VDYWxsYmFjayhcbiAgICBhc3luYyAoZmlsZXM6IEZpbGVMaXN0IHwgbnVsbCkgPT4ge1xuICAgICAgaWYgKCFmaWxlcyB8fCBmaWxlcy5sZW5ndGggPT09IDApIHJldHVyblxuICAgICAgY29uc3QgZmlsZSA9IGZpbGVzWzBdXG4gICAgICBpZiAoIWZpbGUpIHJldHVyblxuXG4gICAgICBjb25zdCBhbGxvd2VkID0gWycucGRmJywgJy5tZCcsICcudHh0J11cbiAgICAgIGNvbnN0IGV4dCA9IGZpbGUubmFtZS5zbGljZShmaWxlLm5hbWUubGFzdEluZGV4T2YoJy4nKSkudG9Mb3dlckNhc2UoKVxuICAgICAgaWYgKCFhbGxvd2VkLmluY2x1ZGVzKGV4dCkpIHtcbiAgICAgICAgc2V0VXBsb2FkRXJyb3IoYFVuc3VwcG9ydGVkIGZpbGUgdHlwZTogJHtleHR9LiBVc2UgUERGLCBNRCwgb3IgVFhULmApXG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICBzZXRVcGxvYWRFcnJvcihudWxsKVxuICAgICAgc2V0VXBsb2FkaW5nKHRydWUpXG4gICAgICBzZXRKb2JJZChudWxsKVxuXG4gICAgICB0cnkge1xuICAgICAgICAvLyBDcmVhdGUgcmVjb3JkIGluIFBvY2tldEJhc2VcbiAgICAgICAgY29uc3QgZm9ybWF0ID0gZXh0LnNsaWNlKDEpIGFzICdwZGYnIHwgJ21kJyB8ICd0eHQnXG5cbiAgICAgICAgLy8gRm9yY2UgZXhwbGljaXQgTUlNRSB0eXBlIOKAlCBXaW5kb3dzIGRvZXNuJ3QgcmVnaXN0ZXIgLm1kIGFuZCBzZW5kc1xuICAgICAgICAvLyBhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0gd2hpY2ggUG9ja2V0QmFzZSByZWplY3RzLlxuICAgICAgICBjb25zdCBtaW1lTWFwOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICAgICAgICAgIHBkZjogJ2FwcGxpY2F0aW9uL3BkZicsXG4gICAgICAgICAgbWQ6ICd0ZXh0L21hcmtkb3duJyxcbiAgICAgICAgICB0eHQ6ICd0ZXh0L3BsYWluJyxcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBibG9iID0gbmV3IEJsb2IoW2ZpbGVdLCB7IHR5cGU6IG1pbWVNYXBbZm9ybWF0XSA/PyBmaWxlLnR5cGUgfSlcblxuICAgICAgICBjb25zdCBmZCA9IG5ldyBGb3JtRGF0YSgpXG4gICAgICAgIGZkLmFwcGVuZCgnZmlsZScsIGJsb2IsIGZpbGUubmFtZSlcbiAgICAgICAgZmQuYXBwZW5kKCdmaWxlbmFtZScsIGZpbGUubmFtZSlcbiAgICAgICAgZmQuYXBwZW5kKCdmb3JtYXQnLCBmb3JtYXQpXG4gICAgICAgIGZkLmFwcGVuZCgnc3RhdHVzJywgJ3Byb2Nlc3NpbmcnKVxuXG4gICAgICAgIGNvbnN0IGRvYyA9IGF3YWl0IHBiLmNvbGxlY3Rpb24oJ3NvdXJjZV9kb2N1bWVudHMnKS5jcmVhdGU8eyBpZDogc3RyaW5nOyBmaWxlOiBzdHJpbmcgfT4oZmQpXG5cbiAgICAgICAgLy8gQnVpbGQgUG9ja2V0QmFzZSBmaWxlIGRvd25sb2FkIFVSTFxuICAgICAgICBjb25zdCBwYlVybCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX1BPQ0tFVEJBU0VfVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjgwOTAnXG4gICAgICAgIGNvbnN0IGZpbGVVcmwgPSBgJHtwYlVybH0vYXBpL2ZpbGVzL3NvdXJjZV9kb2N1bWVudHMvJHtkb2MuaWR9LyR7ZG9jLmZpbGV9YFxuXG4gICAgICAgIC8vIEtpY2sgb2ZmIGluZ2VzdGlvblxuICAgICAgICBjb25zdCB7IGpvYklkOiBqSWQgfSA9IGF3YWl0IHBvc3RJbmdlc3Qoe1xuICAgICAgICAgIGRvY3VtZW50SWQ6IGRvYy5pZCxcbiAgICAgICAgICBmaWxlbmFtZTogZmlsZS5uYW1lLFxuICAgICAgICAgIGZvcm1hdCxcbiAgICAgICAgICBmaWxlVXJsLFxuICAgICAgICB9KVxuICAgICAgICBzZXRKb2JJZChqSWQpXG4gICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgLy8gUG9ja2V0QmFzZSBDbGllbnRSZXNwb25zZUVycm9yIGhhcyBhIGByZXNwb25zZWAgd2l0aCBmaWVsZCBkZXRhaWxzXG4gICAgICAgIGNvbnN0IHBiRXJyID0gZXJyIGFzIHsgcmVzcG9uc2U/OiB7IG1lc3NhZ2U/OiBzdHJpbmc7IGRhdGE/OiBSZWNvcmQ8c3RyaW5nLCB7IG1lc3NhZ2U/OiBzdHJpbmcgfT4gfSB9XG4gICAgICAgIGNvbnN0IGRldGFpbCA9IHBiRXJyLnJlc3BvbnNlPy5kYXRhXG4gICAgICAgICAgPyBPYmplY3QuZW50cmllcyhwYkVyci5yZXNwb25zZS5kYXRhKVxuICAgICAgICAgICAgICAubWFwKChbZiwgdl0pID0+IGAke2Z9OiAke3Y/Lm1lc3NhZ2UgPz8gJyd9YClcbiAgICAgICAgICAgICAgLmpvaW4oJywgJylcbiAgICAgICAgICA6IG51bGxcbiAgICAgICAgc2V0VXBsb2FkRXJyb3IoZGV0YWlsID8/IChlcnIgaW5zdGFuY2VvZiBFcnJvciA/IGVyci5tZXNzYWdlIDogJ1VwbG9hZCBmYWlsZWQnKSlcbiAgICAgIH0gZmluYWxseSB7XG4gICAgICAgIHNldFVwbG9hZGluZyhmYWxzZSlcbiAgICAgIH1cbiAgICB9LFxuICAgIFtdLFxuICApXG5cbiAgZnVuY3Rpb24gaGFuZGxlQ2hhbmdlKGU6IFJlYWN0LkNoYW5nZUV2ZW50PEhUTUxJbnB1dEVsZW1lbnQ+KSB7XG4gICAgdm9pZCBoYW5kbGVGaWxlcyhlLnRhcmdldC5maWxlcylcbiAgICBlLnRhcmdldC52YWx1ZSA9ICcnXG4gIH1cblxuICBmdW5jdGlvbiBoYW5kbGVEcm9wKGU6IFJlYWN0LkRyYWdFdmVudDxIVE1MRGl2RWxlbWVudD4pIHtcbiAgICBlLnByZXZlbnREZWZhdWx0KClcbiAgICBzZXREcmFnT3ZlcihmYWxzZSlcbiAgICB2b2lkIGhhbmRsZUZpbGVzKGUuZGF0YVRyYW5zZmVyLmZpbGVzKVxuICB9XG5cbiAgZnVuY3Rpb24gaGFuZGxlRHJhZ092ZXIoZTogUmVhY3QuRHJhZ0V2ZW50PEhUTUxEaXZFbGVtZW50Pikge1xuICAgIGUucHJldmVudERlZmF1bHQoKVxuICAgIHNldERyYWdPdmVyKHRydWUpXG4gIH1cblxuICBmdW5jdGlvbiBoYW5kbGVEcmFnTGVhdmUoKSB7XG4gICAgc2V0RHJhZ092ZXIoZmFsc2UpXG4gIH1cblxuICBjb25zdCBpc0RvbmUgPSBzdGF0dXM/LnN0YXR1cyA9PT0gJ2RvbmUnXG4gIGNvbnN0IGlzRmFpbGVkID0gc3RhdHVzPy5zdGF0dXMgPT09ICdmYWlsZWQnXG5cbiAgaWYgKGlzRG9uZSAmJiBqb2JJZCkge1xuICAgIHJldHVybiAoXG4gICAgICA8ZGl2XG4gICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgYmFja2dyb3VuZDogJ3ZhcigtLXN1Y2Nlc3MpJyxcbiAgICAgICAgICBib3JkZXJSYWRpdXM6ICd2YXIoLS1yLW1kKScsXG4gICAgICAgICAgcGFkZGluZzogJ3ZhcigtLXMtNSknLFxuICAgICAgICAgIHRleHRBbGlnbjogJ2NlbnRlcicsXG4gICAgICAgICAgZGlzcGxheTogJ2ZsZXgnLFxuICAgICAgICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxuICAgICAgICAgIGdhcDogJ3ZhcigtLXMtMyknLFxuICAgICAgICB9fVxuICAgICAgPlxuICAgICAgICA8cCBzdHlsZT17eyBtYXJnaW46IDAsIGZvbnRXZWlnaHQ6IDYwMCwgY29sb3I6ICd2YXIoLS10ZWFsLTkwMCknIH19PlxuICAgICAgICAgIEluZ2VzdGlvbiBjb21wbGV0ZSEge3N0YXR1cy50aGVtZXNGb3VuZH0gdGhlbWVzLCB7c3RhdHVzLnRvcGljc0ZvdW5kfSB0b3BpY3MgZm91bmQuXG4gICAgICAgIDwvcD5cbiAgICAgICAgPEJ1dHRvblxuICAgICAgICAgIHZhcmlhbnQ9XCJzZWNvbmRhcnlcIlxuICAgICAgICAgIHNpemU9XCJzbVwiXG4gICAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgICAgc2V0Sm9iSWQobnVsbClcbiAgICAgICAgICAgIG9uU3VjY2VzcygpXG4gICAgICAgICAgfX1cbiAgICAgICAgPlxuICAgICAgICAgIFVwbG9hZCBhbm90aGVyXG4gICAgICAgIDwvQnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgKVxuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IHN0eWxlPXt7IGRpc3BsYXk6ICdmbGV4JywgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsIGdhcDogJ3ZhcigtLXMtNCknIH19PlxuICAgICAgPGRpdlxuICAgICAgICBvbkRyb3A9e2hhbmRsZURyb3B9XG4gICAgICAgIG9uRHJhZ092ZXI9e2hhbmRsZURyYWdPdmVyfVxuICAgICAgICBvbkRyYWdMZWF2ZT17aGFuZGxlRHJhZ0xlYXZlfVxuICAgICAgICBvbkNsaWNrPXsoKSA9PiBmaWxlSW5wdXRSZWYuY3VycmVudD8uY2xpY2soKX1cbiAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICBib3JkZXI6IGAycHggZGFzaGVkICR7ZHJhZ092ZXIgPyAndmFyKC0tYWNjZW50KScgOiAndmFyKC0tY3JlYW0pJ31gLFxuICAgICAgICAgIGJvcmRlclJhZGl1czogJ3ZhcigtLXItbGcpJyxcbiAgICAgICAgICBwYWRkaW5nOiAndmFyKC0tcy04LCA2NHB4KSB2YXIoLS1zLTUpJyxcbiAgICAgICAgICB0ZXh0QWxpZ246ICdjZW50ZXInLFxuICAgICAgICAgIGN1cnNvcjogJ3BvaW50ZXInLFxuICAgICAgICAgIGJhY2tncm91bmQ6IGRyYWdPdmVyID8gJ3ZhcigtLWFjY2VudC1zb2Z0KScgOiAndmFyKC0tYmctd2FybSknLFxuICAgICAgICAgIHRyYW5zaXRpb246ICdiYWNrZ3JvdW5kIDE1MG1zLCBib3JkZXItY29sb3IgMTUwbXMnLFxuICAgICAgICB9fVxuICAgICAgPlxuICAgICAgICA8aW5wdXRcbiAgICAgICAgICByZWY9e2ZpbGVJbnB1dFJlZn1cbiAgICAgICAgICB0eXBlPVwiZmlsZVwiXG4gICAgICAgICAgYWNjZXB0PVwiLnBkZiwubWQsLnR4dFwiXG4gICAgICAgICAgc3R5bGU9e3sgZGlzcGxheTogJ25vbmUnIH19XG4gICAgICAgICAgb25DaGFuZ2U9e2hhbmRsZUNoYW5nZX1cbiAgICAgICAgLz5cbiAgICAgICAgPHBcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgbWFyZ2luOiAnMCAwIHZhcigtLXMtMiknLFxuICAgICAgICAgICAgZm9udFNpemU6ICd2YXIoLS10LWxlYWQpJyxcbiAgICAgICAgICAgIGZvbnRXZWlnaHQ6IDYwMCxcbiAgICAgICAgICAgIGNvbG9yOiAndmFyKC0tZmcpJyxcbiAgICAgICAgICB9fVxuICAgICAgICA+XG4gICAgICAgICAgRHJvcCBhIGRvY3VtZW50IGhlcmVcbiAgICAgICAgPC9wPlxuICAgICAgICA8cCBzdHlsZT17eyBtYXJnaW46IDAsIGZvbnRTaXplOiAndmFyKC0tdC1zbWFsbCknLCBjb2xvcjogJ3ZhcigtLWZnLW11dGVkKScgfX0+XG4gICAgICAgICAgb3IgdGFwIHRvIGJyb3dzZSDigJQgUERGLCBNYXJrZG93biwgVFhUXG4gICAgICAgIDwvcD5cbiAgICAgIDwvZGl2PlxuXG4gICAgICB7dXBsb2FkRXJyb3IgJiYgKFxuICAgICAgICA8ZGl2XG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICcjZjhkN2RhJyxcbiAgICAgICAgICAgIGNvbG9yOiAnI2MwMzkyYicsXG4gICAgICAgICAgICBib3JkZXJSYWRpdXM6ICd2YXIoLS1yLXNtKScsXG4gICAgICAgICAgICBwYWRkaW5nOiAndmFyKC0tcy0zKSB2YXIoLS1zLTQpJyxcbiAgICAgICAgICAgIGZvbnRTaXplOiAndmFyKC0tdC1zbWFsbCknLFxuICAgICAgICAgIH19XG4gICAgICAgID5cbiAgICAgICAgICB7dXBsb2FkRXJyb3J9XG4gICAgICAgIDwvZGl2PlxuICAgICAgKX1cblxuICAgICAgeyh1cGxvYWRpbmcgfHwgam9iSWQpICYmIChcbiAgICAgICAgPGRpdiBzdHlsZT17eyBkaXNwbGF5OiAnZmxleCcsIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLCBnYXA6ICd2YXIoLS1zLTIpJyB9fT5cbiAgICAgICAgICA8UHJvZ3Jlc3NCYXJcbiAgICAgICAgICAgIHZhbHVlPXt1cGxvYWRpbmcgPyA1IDogcHJvZ3Jlc3N9XG4gICAgICAgICAgICBsYWJlbD17XG4gICAgICAgICAgICAgIHVwbG9hZGluZ1xuICAgICAgICAgICAgICAgID8gJ1VwbG9hZGluZ+KApidcbiAgICAgICAgICAgICAgICA6IGlzRmFpbGVkXG4gICAgICAgICAgICAgICAgPyBgRmFpbGVkOiAke3N0YXR1cz8ucmVhc29uID8/ICd1bmtub3duIGVycm9yJ31gXG4gICAgICAgICAgICAgICAgOiBzdGF0dXM/LnN0YXR1c1xuICAgICAgICAgICAgICAgID8gYCR7c3RhdHVzLnN0YXR1cy5jaGFyQXQoMCkudG9VcHBlckNhc2UoKX0ke3N0YXR1cy5zdGF0dXMuc2xpY2UoMSl94oCmYFxuICAgICAgICAgICAgICAgIDogJ1Byb2Nlc3NpbmfigKYnXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb2xvcj17aXNGYWlsZWQgPyAnI2MwMzkyYicgOiAndmFyKC0tYWNjZW50KSd9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7c3RhdHVzICYmIChcbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICBmb250U2l6ZTogJ3ZhcigtLXQtc21hbGwpJyxcbiAgICAgICAgICAgICAgICBjb2xvcjogJ3ZhcigtLWZnLW11dGVkKScsXG4gICAgICAgICAgICAgICAgZGlzcGxheTogJ2ZsZXgnLFxuICAgICAgICAgICAgICAgIGdhcDogJ3ZhcigtLXMtNCknLFxuICAgICAgICAgICAgICAgIGZsZXhXcmFwOiAnd3JhcCcsXG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxzcGFuPkNodW5rczoge3N0YXR1cy5jaHVua3NFbWJlZGRlZH0ve3N0YXR1cy5jaHVua3NUb3RhbH08L3NwYW4+XG4gICAgICAgICAgICAgIDxzcGFuPlRoZW1lczoge3N0YXR1cy50aGVtZXNGb3VuZH08L3NwYW4+XG4gICAgICAgICAgICAgIDxzcGFuPlRvcGljczoge3N0YXR1cy50b3BpY3NGb3VuZH08L3NwYW4+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICApfVxuICAgICAgICA8L2Rpdj5cbiAgICAgICl9XG4gICAgPC9kaXY+XG4gIClcbn1cbiJdLCJuYW1lcyI6WyJSZWFjdCIsInVzZVJlZiIsInVzZVN0YXRlIiwidXNlQ2FsbGJhY2siLCJCdXR0b24iLCJQcm9ncmVzc0JhciIsInVzZUluZ2VzdGlvblN0YXR1cyIsInBiIiwicG9zdEluZ2VzdCIsIkRvY3VtZW50VXBsb2FkIiwib25TdWNjZXNzIiwiZmlsZUlucHV0UmVmIiwidXBsb2FkaW5nIiwic2V0VXBsb2FkaW5nIiwiam9iSWQiLCJzZXRKb2JJZCIsInVwbG9hZEVycm9yIiwic2V0VXBsb2FkRXJyb3IiLCJkcmFnT3ZlciIsInNldERyYWdPdmVyIiwic3RhdHVzIiwicHJvZ3Jlc3MiLCJoYW5kbGVGaWxlcyIsImZpbGVzIiwibGVuZ3RoIiwiZmlsZSIsImFsbG93ZWQiLCJleHQiLCJuYW1lIiwic2xpY2UiLCJsYXN0SW5kZXhPZiIsInRvTG93ZXJDYXNlIiwiaW5jbHVkZXMiLCJmb3JtYXQiLCJtaW1lTWFwIiwicGRmIiwibWQiLCJ0eHQiLCJibG9iIiwiQmxvYiIsInR5cGUiLCJmZCIsIkZvcm1EYXRhIiwiYXBwZW5kIiwiZG9jIiwiY29sbGVjdGlvbiIsImNyZWF0ZSIsInBiVXJsIiwicHJvY2VzcyIsImVudiIsIk5FWFRfUFVCTElDX1BPQ0tFVEJBU0VfVVJMIiwiZmlsZVVybCIsImlkIiwiaklkIiwiZG9jdW1lbnRJZCIsImZpbGVuYW1lIiwiZXJyIiwicGJFcnIiLCJkZXRhaWwiLCJyZXNwb25zZSIsImRhdGEiLCJPYmplY3QiLCJlbnRyaWVzIiwibWFwIiwiZiIsInYiLCJtZXNzYWdlIiwiam9pbiIsIkVycm9yIiwiaGFuZGxlQ2hhbmdlIiwiZSIsInRhcmdldCIsInZhbHVlIiwiaGFuZGxlRHJvcCIsInByZXZlbnREZWZhdWx0IiwiZGF0YVRyYW5zZmVyIiwiaGFuZGxlRHJhZ092ZXIiLCJoYW5kbGVEcmFnTGVhdmUiLCJpc0RvbmUiLCJpc0ZhaWxlZCIsImRpdiIsInN0eWxlIiwiYmFja2dyb3VuZCIsImJvcmRlclJhZGl1cyIsInBhZGRpbmciLCJ0ZXh0QWxpZ24iLCJkaXNwbGF5IiwiZmxleERpcmVjdGlvbiIsImdhcCIsInAiLCJtYXJnaW4iLCJmb250V2VpZ2h0IiwiY29sb3IiLCJ0aGVtZXNGb3VuZCIsInRvcGljc0ZvdW5kIiwidmFyaWFudCIsInNpemUiLCJvbkNsaWNrIiwib25Ecm9wIiwib25EcmFnT3ZlciIsIm9uRHJhZ0xlYXZlIiwiY3VycmVudCIsImNsaWNrIiwiYm9yZGVyIiwiY3Vyc29yIiwidHJhbnNpdGlvbiIsImlucHV0IiwicmVmIiwiYWNjZXB0Iiwib25DaGFuZ2UiLCJmb250U2l6ZSIsImxhYmVsIiwicmVhc29uIiwiY2hhckF0IiwidG9VcHBlckNhc2UiLCJmbGV4V3JhcCIsInNwYW4iLCJjaHVua3NFbWJlZGRlZCIsImNodW5rc1RvdGFsIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./src/components/admin/DocumentUpload.tsx\n"); /***/ }), @@ -235,7 +235,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFeed: () => (/* binding */ getFeed),\n/* harmony export */ getIngestionStatus: () => (/* binding */ getIngestionStatus),\n/* harmony export */ getLeaderboard: () => (/* binding */ getLeaderboard),\n/* harmony export */ patchCurriculumWeekOrder: () => (/* binding */ patchCurriculumWeekOrder),\n/* harmony export */ postComplete: () => (/* binding */ postComplete),\n/* harmony export */ postCurriculumConfirm: () => (/* binding */ postCurriculumConfirm),\n/* harmony export */ postGenerateAll: () => (/* binding */ postGenerateAll),\n/* harmony export */ postIngest: () => (/* binding */ postIngest)\n/* harmony export */ });\nconst INGESTION_URL = \"http://localhost:3001\" ?? 0;\nconst GENERATION_URL = \"http://localhost:3002\" ?? 0;\nconst CURRICULUM_URL = \"http://localhost:3003\" ?? 0;\nconst PROGRESS_URL = \"http://localhost:3005\" ?? 0;\nasync function handleResponse(res) {\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(`HTTP ${res.status}: ${text}`);\n }\n return res.json();\n}\nasync function postIngest(payload) {\n const res = await fetch(`${INGESTION_URL}/ingest`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getIngestionStatus(jobId) {\n const res = await fetch(`${INGESTION_URL}/ingest/status/${encodeURIComponent(jobId)}`);\n return handleResponse(res);\n}\nasync function postGenerateAll(themeId) {\n const res = await fetch(`${GENERATION_URL}/generate/theme/${encodeURIComponent(themeId)}`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n return handleResponse(res);\n}\nasync function postComplete(payload) {\n const res = await fetch(`${PROGRESS_URL}/complete`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getLeaderboard() {\n const res = await fetch(`${PROGRESS_URL}/leaderboard`);\n return handleResponse(res);\n}\nasync function getFeed() {\n const res = await fetch(`${PROGRESS_URL}/feed`);\n return handleResponse(res);\n}\nasync function postCurriculumConfirm(versionId) {\n const res = await fetch(`${CURRICULUM_URL}/curriculum/versions/${encodeURIComponent(versionId)}/confirm`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(`HTTP ${res.status}: ${text}`);\n }\n}\nasync function patchCurriculumWeekOrder(weekId, position) {\n const res = await fetch(`${CURRICULUM_URL}/curriculum/weeks/${encodeURIComponent(weekId)}/order`, {\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n position\n })\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(`HTTP ${res.status}: ${text}`);\n }\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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UUFDOUNDLE1BQU1DLEtBQUtDLFNBQVMsQ0FBQztZQUFFYTtRQUFTO0lBQ2xDO0lBRUYsSUFBSSxDQUFDNUIsSUFBSUMsRUFBRSxFQUFFO1FBQ1gsTUFBTUMsT0FBTyxNQUFNRixJQUFJRSxJQUFJLEdBQUdDLEtBQUssQ0FBQyxJQUFNSCxJQUFJSSxVQUFVO1FBQ3hELE1BQU0sSUFBSUMsTUFBTSxDQUFDLEtBQUssRUFBRUwsSUFBSU0sTUFBTSxDQUFDLEVBQUUsRUFBRUosS0FBSyxDQUFDO0lBQy9DO0FBQ0YiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9sZWFybmluZy1wbGF0Zm9ybS1mcm9udGVuZC8uL3NyYy9saWIvc2VydmljZXMudHM/MDcwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIEluZ2VzdGlvbkpvYlN0YXR1cyxcbiAgQ29tcGxldGVQYXlsb2FkLFxuICBDb21wbGV0ZVJlc3BvbnNlLFxuICBMZWFkZXJib2FyZEVudHJ5LFxuICBGZWVkRW50cnksXG59IGZyb20gJ0AvdHlwZXMnXG5cbmNvbnN0IElOR0VTVElPTl9VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19JTkdFU1RJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDEnXG5jb25zdCBHRU5FUkFUSU9OX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0dFTkVSQVRJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDInXG5jb25zdCBDVVJSSUNVTFVNX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDMnXG5jb25zdCBQUk9HUkVTU19VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19QUk9HUkVTU19VUkwgPz8gJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwNSdcblxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlUmVzcG9uc2U8VD4ocmVzOiBSZXNwb25zZSk6IFByb21pc2U8VD4ge1xuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxuICByZXR1cm4gcmVzLmpzb24oKSBhcyBQcm9taXNlPFQ+XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0SW5nZXN0KHBheWxvYWQ6IHtcbiAgZG9jdW1lbnRJZDogc3RyaW5nXG4gIGZpbGVuYW1lOiBzdHJpbmdcbiAgZm9ybWF0OiAncGRmJyB8ICdtZCcgfCAndHh0J1xuICBmaWxlVXJsOiBzdHJpbmdcbn0pOiBQcm9taXNlPHsgam9iSWQ6IHN0cmluZyB9PiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdGAsIHtcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICBib2R5OiBKU09OLnN0cmluZ2lmeShwYXlsb2FkKSxcbiAgfSlcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPHsgam9iSWQ6IHN0cmluZyB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRJbmdlc3Rpb25TdGF0dXMoam9iSWQ6IHN0cmluZyk6IFByb21pc2U8SW5nZXN0aW9uSm9iU3RhdHVzPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdC9zdGF0dXMvJHtlbmNvZGVVUklDb21wb25lbnQoam9iSWQpfWApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxJbmdlc3Rpb25Kb2JTdGF0dXM+KHJlcylcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHBvc3RHZW5lcmF0ZUFsbCh0aGVtZUlkOiBzdHJpbmcpOiBQcm9taXNlPHsgcXVldWVkOiBudW1iZXIgfT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtHRU5FUkFUSU9OX1VSTH0vZ2VuZXJhdGUvdGhlbWUvJHtlbmNvZGVVUklDb21wb25lbnQodGhlbWVJZCl9YCwge1xuICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgIGhlYWRlcnM6IHsgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyB9LFxuICB9KVxuICByZXR1cm4gaGFuZGxlUmVzcG9uc2U8eyBxdWV1ZWQ6IG51bWJlciB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0Q29tcGxldGUocGF5bG9hZDogQ29tcGxldGVQYXlsb2FkKTogUHJvbWlzZTxDb21wbGV0ZVJlc3BvbnNlPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vY29tcGxldGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkocGF5bG9hZCksXG4gIH0pXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxDb21wbGV0ZVJlc3BvbnNlPihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRMZWFkZXJib2FyZCgpOiBQcm9taXNlPExlYWRlcmJvYXJkRW50cnlbXT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtQUk9HUkVTU19VUkx9L2xlYWRlcmJvYXJkYClcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPExlYWRlcmJvYXJkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0RmVlZCgpOiBQcm9taXNlPEZlZWRFbnRyeVtdPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vZmVlZGApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxGZWVkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcG9zdEN1cnJpY3VsdW1Db25maXJtKHZlcnNpb25JZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3ZlcnNpb25zLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHZlcnNpb25JZCl9L2NvbmZpcm1gLFxuICAgIHtcbiAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyKHdlZWtJZDogc3RyaW5nLCBwb3NpdGlvbjogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3dlZWtzLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHdlZWtJZCl9L29yZGVyYCxcbiAgICB7XG4gICAgICBtZXRob2Q6ICdQQVRDSCcsXG4gICAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHsgcG9zaXRpb24gfSksXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuIl0sIm5hbWVzIjpbIklOR0VTVElPTl9VUkwiLCJwcm9jZXNzIiwiZW52IiwiTkVYVF9QVUJMSUNfSU5HRVNUSU9OX1VSTCIsIkdFTkVSQVRJT05fVVJMIiwiTkVYVF9QVUJMSUNfR0VORVJBVElPTl9VUkwiLCJDVVJSSUNVTFVNX1VSTCIsIk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMIiwiUFJPR1JFU1NfVVJMIiwiTkVYVF9QVUJMSUNfUFJPR1JFU1NfVVJMIiwiaGFuZGxlUmVzcG9uc2UiLCJyZXMiLCJvayIsInRleHQiLCJjYXRjaCIsInN0YXR1c1RleHQiLCJFcnJvciIsInN0YXR1cyIsImpzb24iLCJwb3N0SW5nZXN0IiwicGF5bG9hZCIsImZldGNoIiwibWV0aG9kIiwiaGVhZGVycyIsImJvZHkiLCJKU09OIiwic3RyaW5naWZ5IiwiZ2V0SW5nZXN0aW9uU3RhdHVzIiwiam9iSWQiLCJlbmNvZGVVUklDb21wb25lbnQiLCJwb3N0R2VuZXJhdGVBbGwiLCJ0aGVtZUlkIiwicG9zdENvbXBsZXRlIiwiZ2V0TGVhZGVyYm9hcmQiLCJnZXRGZWVkIiwicG9zdEN1cnJpY3VsdW1Db25maXJtIiwidmVyc2lvbklkIiwicGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyIiwid2Vla0lkIiwicG9zaXRpb24iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./src/lib/services.ts\n"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFeed: () => (/* binding */ getFeed),\n/* harmony export */ getIngestionStatus: () => (/* binding */ getIngestionStatus),\n/* harmony export */ getLeaderboard: () => (/* binding */ getLeaderboard),\n/* harmony export */ patchCurriculumWeekOrder: () => (/* binding */ patchCurriculumWeekOrder),\n/* harmony export */ postComplete: () => (/* binding */ postComplete),\n/* harmony export */ postCurriculumConfirm: () => (/* binding */ postCurriculumConfirm),\n/* harmony export */ postGenerateAll: () => (/* binding */ postGenerateAll),\n/* harmony export */ postIngest: () => (/* binding */ postIngest)\n/* harmony export */ });\nconst INGESTION_URL = \"http://localhost:3001\" ?? 0;\nconst GENERATION_URL = \"http://localhost:3002\" ?? 0;\nconst CURRICULUM_URL = \"http://localhost:3003\" ?? 0;\nconst PROGRESS_URL = \"http://localhost:3005\" ?? 0;\nasync function handleResponse(res) {\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(`HTTP ${res.status}: ${text}`);\n }\n return res.json();\n}\nasync function postIngest(payload) {\n const res = await fetch(`${INGESTION_URL}/ingest`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getIngestionStatus(jobId) {\n const res = await fetch(`${INGESTION_URL}/ingest/status/${encodeURIComponent(jobId)}`);\n return handleResponse(res);\n}\nasync function postGenerateAll(themeId) {\n const res = await fetch(`${GENERATION_URL}/generate`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n themeId\n })\n });\n const data = await handleResponse(res);\n return {\n queued: data.totalItems\n };\n}\nasync function postComplete(payload) {\n const res = await fetch(`${PROGRESS_URL}/complete`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getLeaderboard() {\n const res = await fetch(`${PROGRESS_URL}/leaderboard`);\n return handleResponse(res);\n}\nasync function getFeed() {\n const res = await fetch(`${PROGRESS_URL}/feed`);\n return handleResponse(res);\n}\nasync function postCurriculumConfirm(versionId) {\n const res = await fetch(`${CURRICULUM_URL}/curriculum/versions/${encodeURIComponent(versionId)}/confirm`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(`HTTP ${res.status}: ${text}`);\n }\n}\nasync function patchCurriculumWeekOrder(weekId, position) {\n const res = await fetch(`${CURRICULUM_URL}/curriculum/weeks/${encodeURIComponent(weekId)}/order`, {\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n position\n })\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(`HTTP ${res.status}: ${text}`);\n }\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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LG1CQUFtQlksUUFBUSxNQUFNLENBQUMsRUFDeEU7UUFDRW5CLFFBQVE7UUFDUkMsU0FBUztZQUFFLGdCQUFnQjtRQUFtQjtRQUM5Q0MsTUFBTUMsS0FBS0MsU0FBUyxDQUFDO1lBQUVnQjtRQUFTO0lBQ2xDO0lBRUYsSUFBSSxDQUFDL0IsSUFBSUMsRUFBRSxFQUFFO1FBQ1gsTUFBTUMsT0FBTyxNQUFNRixJQUFJRSxJQUFJLEdBQUdDLEtBQUssQ0FBQyxJQUFNSCxJQUFJSSxVQUFVO1FBQ3hELE1BQU0sSUFBSUMsTUFBTSxDQUFDLEtBQUssRUFBRUwsSUFBSU0sTUFBTSxDQUFDLEVBQUUsRUFBRUosS0FBSyxDQUFDO0lBQy9DO0FBQ0YiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9sZWFybmluZy1wbGF0Zm9ybS1mcm9udGVuZC8uL3NyYy9saWIvc2VydmljZXMudHM/MDcwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIEluZ2VzdGlvbkpvYlN0YXR1cyxcbiAgQ29tcGxldGVQYXlsb2FkLFxuICBDb21wbGV0ZVJlc3BvbnNlLFxuICBMZWFkZXJib2FyZEVudHJ5LFxuICBGZWVkRW50cnksXG59IGZyb20gJ0AvdHlwZXMnXG5cbmNvbnN0IElOR0VTVElPTl9VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19JTkdFU1RJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDEnXG5jb25zdCBHRU5FUkFUSU9OX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0dFTkVSQVRJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDInXG5jb25zdCBDVVJSSUNVTFVNX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDMnXG5jb25zdCBQUk9HUkVTU19VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19QUk9HUkVTU19VUkwgPz8gJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwNSdcblxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlUmVzcG9uc2U8VD4ocmVzOiBSZXNwb25zZSk6IFByb21pc2U8VD4ge1xuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxuICByZXR1cm4gcmVzLmpzb24oKSBhcyBQcm9taXNlPFQ+XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0SW5nZXN0KHBheWxvYWQ6IHtcbiAgZG9jdW1lbnRJZDogc3RyaW5nXG4gIGZpbGVuYW1lOiBzdHJpbmdcbiAgZm9ybWF0OiAncGRmJyB8ICdtZCcgfCAndHh0J1xuICBmaWxlVXJsOiBzdHJpbmdcbn0pOiBQcm9taXNlPHsgam9iSWQ6IHN0cmluZyB9PiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdGAsIHtcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICBib2R5OiBKU09OLnN0cmluZ2lmeShwYXlsb2FkKSxcbiAgfSlcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPHsgam9iSWQ6IHN0cmluZyB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRJbmdlc3Rpb25TdGF0dXMoam9iSWQ6IHN0cmluZyk6IFByb21pc2U8SW5nZXN0aW9uSm9iU3RhdHVzPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdC9zdGF0dXMvJHtlbmNvZGVVUklDb21wb25lbnQoam9iSWQpfWApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxJbmdlc3Rpb25Kb2JTdGF0dXM+KHJlcylcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHBvc3RHZW5lcmF0ZUFsbCh0aGVtZUlkOiBzdHJpbmcpOiBQcm9taXNlPHsgcXVldWVkOiBudW1iZXIgfT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtHRU5FUkFUSU9OX1VSTH0vZ2VuZXJhdGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkoeyB0aGVtZUlkIH0pLFxuICB9KVxuICBjb25zdCBkYXRhID0gYXdhaXQgaGFuZGxlUmVzcG9uc2U8eyBqb2JJZDogc3RyaW5nOyB0b3RhbEl0ZW1zOiBudW1iZXIgfT4ocmVzKVxuICByZXR1cm4geyBxdWV1ZWQ6IGRhdGEudG90YWxJdGVtcyB9XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0Q29tcGxldGUocGF5bG9hZDogQ29tcGxldGVQYXlsb2FkKTogUHJvbWlzZTxDb21wbGV0ZVJlc3BvbnNlPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vY29tcGxldGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkocGF5bG9hZCksXG4gIH0pXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxDb21wbGV0ZVJlc3BvbnNlPihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRMZWFkZXJib2FyZCgpOiBQcm9taXNlPExlYWRlcmJvYXJkRW50cnlbXT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtQUk9HUkVTU19VUkx9L2xlYWRlcmJvYXJkYClcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPExlYWRlcmJvYXJkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0RmVlZCgpOiBQcm9taXNlPEZlZWRFbnRyeVtdPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vZmVlZGApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxGZWVkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcG9zdEN1cnJpY3VsdW1Db25maXJtKHZlcnNpb25JZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3ZlcnNpb25zLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHZlcnNpb25JZCl9L2NvbmZpcm1gLFxuICAgIHtcbiAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyKHdlZWtJZDogc3RyaW5nLCBwb3NpdGlvbjogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3dlZWtzLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHdlZWtJZCl9L29yZGVyYCxcbiAgICB7XG4gICAgICBtZXRob2Q6ICdQQVRDSCcsXG4gICAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHsgcG9zaXRpb24gfSksXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuIl0sIm5hbWVzIjpbIklOR0VTVElPTl9VUkwiLCJwcm9jZXNzIiwiZW52IiwiTkVYVF9QVUJMSUNfSU5HRVNUSU9OX1VSTCIsIkdFTkVSQVRJT05fVVJMIiwiTkVYVF9QVUJMSUNfR0VORVJBVElPTl9VUkwiLCJDVVJSSUNVTFVNX1VSTCIsIk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMIiwiUFJPR1JFU1NfVVJMIiwiTkVYVF9QVUJMSUNfUFJPR1JFU1NfVVJMIiwiaGFuZGxlUmVzcG9uc2UiLCJyZXMiLCJvayIsInRleHQiLCJjYXRjaCIsInN0YXR1c1RleHQiLCJFcnJvciIsInN0YXR1cyIsImpzb24iLCJwb3N0SW5nZXN0IiwicGF5bG9hZCIsImZldGNoIiwibWV0aG9kIiwiaGVhZGVycyIsImJvZHkiLCJKU09OIiwic3RyaW5naWZ5IiwiZ2V0SW5nZXN0aW9uU3RhdHVzIiwiam9iSWQiLCJlbmNvZGVVUklDb21wb25lbnQiLCJwb3N0R2VuZXJhdGVBbGwiLCJ0aGVtZUlkIiwiZGF0YSIsInF1ZXVlZCIsInRvdGFsSXRlbXMiLCJwb3N0Q29tcGxldGUiLCJnZXRMZWFkZXJib2FyZCIsImdldEZlZWQiLCJwb3N0Q3VycmljdWx1bUNvbmZpcm0iLCJ2ZXJzaW9uSWQiLCJwYXRjaEN1cnJpY3VsdW1XZWVrT3JkZXIiLCJ3ZWVrSWQiLCJwb3NpdGlvbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./src/lib/services.ts\n"); /***/ }), @@ -304,7 +304,7 @@ __webpack_require__.r(__webpack_exports__); /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (/* binding */ RootLayout),\n/* harmony export */ metadata: () => (/* binding */ metadata),\n/* harmony export */ viewport: () => (/* binding */ viewport)\n/* harmony export */ });\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-dev-runtime */ \"(rsc)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/rsc/react-jsx-dev-runtime.js\");\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _stylesheet_css__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../stylesheet.css */ \"(rsc)/../../stylesheet.css\");\n/* harmony import */ var _globals_css__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./globals.css */ \"(rsc)/./src/app/globals.css\");\n\n\n\nconst metadata = {\n title: \"Learning Platform\",\n description: \"Employee knowledge and learning\",\n manifest: \"/manifest.json\",\n appleWebApp: {\n capable: true,\n statusBarStyle: \"default\",\n title: \"Learning Platform\"\n }\n};\nconst viewport = {\n themeColor: \"#1F5560\",\n width: \"device-width\",\n initialScale: 1,\n maximumScale: 1\n};\nfunction RootLayout({ children }) {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"html\", {\n lang: \"en\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"body\", {\n children: children\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\app\\\\layout.tsx\",\n lineNumber: 30,\n columnNumber: 7\n }, this)\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\app\\\\layout.tsx\",\n lineNumber: 29,\n columnNumber: 5\n }, this);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9zcmMvYXBwL2xheW91dC50c3giLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFDbUM7QUFDYjtBQUVmLE1BQU1BLFdBQXFCO0lBQ2hDQyxPQUFPO0lBQ1BDLGFBQWE7SUFDYkMsVUFBVTtJQUNWQyxhQUFhO1FBQ1hDLFNBQVM7UUFDVEMsZ0JBQWdCO1FBQ2hCTCxPQUFPO0lBQ1Q7QUFDRixFQUFDO0FBRU0sTUFBTU0sV0FBcUI7SUFDaENDLFlBQVk7SUFDWkMsT0FBTztJQUNQQyxjQUFjO0lBQ2RDLGNBQWM7QUFDaEIsRUFBQztBQUVjLFNBQVNDLFdBQVcsRUFDakNDLFFBQVEsRUFHVDtJQUNDLHFCQUNFLDhEQUFDQztRQUFLQyxNQUFLO2tCQUNULDRFQUFDQztzQkFBTUg7Ozs7Ozs7Ozs7O0FBR2IiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9sZWFybmluZy1wbGF0Zm9ybS1mcm9udGVuZC8uL3NyYy9hcHAvbGF5b3V0LnRzeD81N2E5Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgTWV0YWRhdGEsIFZpZXdwb3J0IH0gZnJvbSAnbmV4dCdcbmltcG9ydCAnLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MnXG5pbXBvcnQgJy4vZ2xvYmFscy5jc3MnXG5cbmV4cG9ydCBjb25zdCBtZXRhZGF0YTogTWV0YWRhdGEgPSB7XG4gIHRpdGxlOiAnTGVhcm5pbmcgUGxhdGZvcm0nLFxuICBkZXNjcmlwdGlvbjogJ0VtcGxveWVlIGtub3dsZWRnZSBhbmQgbGVhcm5pbmcnLFxuICBtYW5pZmVzdDogJy9tYW5pZmVzdC5qc29uJyxcbiAgYXBwbGVXZWJBcHA6IHtcbiAgICBjYXBhYmxlOiB0cnVlLFxuICAgIHN0YXR1c0JhclN0eWxlOiAnZGVmYXVsdCcsXG4gICAgdGl0bGU6ICdMZWFybmluZyBQbGF0Zm9ybScsXG4gIH0sXG59XG5cbmV4cG9ydCBjb25zdCB2aWV3cG9ydDogVmlld3BvcnQgPSB7XG4gIHRoZW1lQ29sb3I6ICcjMUY1NTYwJyxcbiAgd2lkdGg6ICdkZXZpY2Utd2lkdGgnLFxuICBpbml0aWFsU2NhbGU6IDEsXG4gIG1heGltdW1TY2FsZTogMSxcbn1cblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gUm9vdExheW91dCh7XG4gIGNoaWxkcmVuLFxufToge1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlXG59KSB7XG4gIHJldHVybiAoXG4gICAgPGh0bWwgbGFuZz1cImVuXCI+XG4gICAgICA8Ym9keT57Y2hpbGRyZW59PC9ib2R5PlxuICAgIDwvaHRtbD5cbiAgKVxufVxuIl0sIm5hbWVzIjpbIm1ldGFkYXRhIiwidGl0bGUiLCJkZXNjcmlwdGlvbiIsIm1hbmlmZXN0IiwiYXBwbGVXZWJBcHAiLCJjYXBhYmxlIiwic3RhdHVzQmFyU3R5bGUiLCJ2aWV3cG9ydCIsInRoZW1lQ29sb3IiLCJ3aWR0aCIsImluaXRpYWxTY2FsZSIsIm1heGltdW1TY2FsZSIsIlJvb3RMYXlvdXQiLCJjaGlsZHJlbiIsImh0bWwiLCJsYW5nIiwiYm9keSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(rsc)/./src/app/layout.tsx\n"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (/* binding */ RootLayout),\n/* harmony export */ metadata: () => (/* binding */ metadata),\n/* harmony export */ viewport: () => (/* binding */ viewport)\n/* harmony export */ });\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-dev-runtime */ \"(rsc)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/rsc/react-jsx-dev-runtime.js\");\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _stylesheet_css__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../stylesheet.css */ \"(rsc)/../../stylesheet.css\");\n/* harmony import */ var _globals_css__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./globals.css */ \"(rsc)/./src/app/globals.css\");\n\n\n\nconst metadata = {\n title: \"Learning Platform\",\n description: \"Employee knowledge and learning\",\n manifest: \"/manifest.json\",\n icons: {\n icon: \"/favicon.svg\"\n },\n appleWebApp: {\n capable: true,\n statusBarStyle: \"default\",\n title: \"Learning Platform\"\n },\n other: {\n \"mobile-web-app-capable\": \"yes\"\n }\n};\nconst viewport = {\n themeColor: \"#1F5560\",\n width: \"device-width\",\n initialScale: 1,\n maximumScale: 1\n};\nfunction RootLayout({ children }) {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"html\", {\n lang: \"en\",\n suppressHydrationWarning: true,\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"body\", {\n children: children\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\app\\\\layout.tsx\",\n lineNumber: 34,\n columnNumber: 7\n }, this)\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\app\\\\layout.tsx\",\n lineNumber: 33,\n columnNumber: 5\n }, this);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9zcmMvYXBwL2xheW91dC50c3giLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFDbUM7QUFDYjtBQUVmLE1BQU1BLFdBQXFCO0lBQ2hDQyxPQUFPO0lBQ1BDLGFBQWE7SUFDYkMsVUFBVTtJQUNWQyxPQUFPO1FBQUVDLE1BQU07SUFBZTtJQUM5QkMsYUFBYTtRQUNYQyxTQUFTO1FBQ1RDLGdCQUFnQjtRQUNoQlAsT0FBTztJQUNUO0lBQ0FRLE9BQU87UUFDTCwwQkFBMEI7SUFDNUI7QUFDRixFQUFDO0FBRU0sTUFBTUMsV0FBcUI7SUFDaENDLFlBQVk7SUFDWkMsT0FBTztJQUNQQyxjQUFjO0lBQ2RDLGNBQWM7QUFDaEIsRUFBQztBQUVjLFNBQVNDLFdBQVcsRUFDakNDLFFBQVEsRUFHVDtJQUNDLHFCQUNFLDhEQUFDQztRQUFLQyxNQUFLO1FBQUtDLHdCQUF3QjtrQkFDdEMsNEVBQUNDO3NCQUFNSjs7Ozs7Ozs7Ozs7QUFHYiIsInNvdXJjZXMiOlsid2VicGFjazovL2xlYXJuaW5nLXBsYXRmb3JtLWZyb250ZW5kLy4vc3JjL2FwcC9sYXlvdXQudHN4PzU3YTkiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBNZXRhZGF0YSwgVmlld3BvcnQgfSBmcm9tICduZXh0J1xuaW1wb3J0ICcuLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcydcbmltcG9ydCAnLi9nbG9iYWxzLmNzcydcblxuZXhwb3J0IGNvbnN0IG1ldGFkYXRhOiBNZXRhZGF0YSA9IHtcbiAgdGl0bGU6ICdMZWFybmluZyBQbGF0Zm9ybScsXG4gIGRlc2NyaXB0aW9uOiAnRW1wbG95ZWUga25vd2xlZGdlIGFuZCBsZWFybmluZycsXG4gIG1hbmlmZXN0OiAnL21hbmlmZXN0Lmpzb24nLFxuICBpY29uczogeyBpY29uOiAnL2Zhdmljb24uc3ZnJyB9LFxuICBhcHBsZVdlYkFwcDoge1xuICAgIGNhcGFibGU6IHRydWUsXG4gICAgc3RhdHVzQmFyU3R5bGU6ICdkZWZhdWx0JyxcbiAgICB0aXRsZTogJ0xlYXJuaW5nIFBsYXRmb3JtJyxcbiAgfSxcbiAgb3RoZXI6IHtcbiAgICAnbW9iaWxlLXdlYi1hcHAtY2FwYWJsZSc6ICd5ZXMnLFxuICB9LFxufVxuXG5leHBvcnQgY29uc3Qgdmlld3BvcnQ6IFZpZXdwb3J0ID0ge1xuICB0aGVtZUNvbG9yOiAnIzFGNTU2MCcsXG4gIHdpZHRoOiAnZGV2aWNlLXdpZHRoJyxcbiAgaW5pdGlhbFNjYWxlOiAxLFxuICBtYXhpbXVtU2NhbGU6IDEsXG59XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIFJvb3RMYXlvdXQoe1xuICBjaGlsZHJlbixcbn06IHtcbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZVxufSkge1xuICByZXR1cm4gKFxuICAgIDxodG1sIGxhbmc9XCJlblwiIHN1cHByZXNzSHlkcmF0aW9uV2FybmluZz5cbiAgICAgIDxib2R5PntjaGlsZHJlbn08L2JvZHk+XG4gICAgPC9odG1sPlxuICApXG59XG4iXSwibmFtZXMiOlsibWV0YWRhdGEiLCJ0aXRsZSIsImRlc2NyaXB0aW9uIiwibWFuaWZlc3QiLCJpY29ucyIsImljb24iLCJhcHBsZVdlYkFwcCIsImNhcGFibGUiLCJzdGF0dXNCYXJTdHlsZSIsIm90aGVyIiwidmlld3BvcnQiLCJ0aGVtZUNvbG9yIiwid2lkdGgiLCJpbml0aWFsU2NhbGUiLCJtYXhpbXVtU2NhbGUiLCJSb290TGF5b3V0IiwiY2hpbGRyZW4iLCJodG1sIiwibGFuZyIsInN1cHByZXNzSHlkcmF0aW9uV2FybmluZyIsImJvZHkiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(rsc)/./src/app/layout.tsx\n"); /***/ }) diff --git a/app/frontend/.next/server/app/admin/knowledge/page.js b/app/frontend/.next/server/app/admin/knowledge/page.js index ccdabe8..6ce6fee 100644 --- a/app/frontend/.next/server/app/admin/knowledge/page.js +++ b/app/frontend/.next/server/app/admin/knowledge/page.js @@ -136,7 +136,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ThemeCard: () => (/* binding */ ThemeCard)\n/* harmony export */ });\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-dev-runtime */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react-jsx-dev-runtime.js\");\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var next_link__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! next/link */ \"(ssr)/./node_modules/next/dist/api/link.js\");\n/* harmony import */ var _components_ui_StatusBadge__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/components/ui/StatusBadge */ \"(ssr)/./src/components/ui/StatusBadge.tsx\");\n/* harmony import */ var _components_ui_Button__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @/components/ui/Button */ \"(ssr)/./src/components/ui/Button.tsx\");\n/* harmony import */ var _lib_services__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/lib/services */ \"(ssr)/./src/lib/services.ts\");\n/* __next_internal_client_entry_do_not_use__ ThemeCard auto */ \n\n\n\n\n\nfunction ThemeCard({ theme, onUpdate }) {\n const [generating, setGenerating] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n const [error, setError] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const [queued, setQueued] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n async function handleGenerate() {\n setGenerating(true);\n setError(null);\n try {\n const { queued: q } = await (0,_lib_services__WEBPACK_IMPORTED_MODULE_5__.postGenerateAll)(theme.id);\n setQueued(q);\n onUpdate();\n } catch (err) {\n setError(err instanceof Error ? err.message : \"Generation failed\");\n } finally{\n setGenerating(false);\n }\n }\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n background: \"var(--bg)\",\n border: \"1.5px solid var(--cream)\",\n borderRadius: \"var(--r-md)\",\n padding: \"var(--s-4)\",\n display: \"flex\",\n flexDirection: \"column\",\n gap: \"var(--s-3)\"\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n display: \"flex\",\n alignItems: \"flex-start\",\n justifyContent: \"space-between\",\n gap: \"var(--s-3)\"\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n flex: 1,\n minWidth: 0\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"h3\", {\n style: {\n margin: \"0 0 var(--s-1)\",\n fontSize: \"var(--t-body)\",\n fontWeight: 700,\n color: \"var(--fg)\"\n },\n children: theme.title\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\ThemeCard.tsx\",\n lineNumber: 47,\n columnNumber: 11\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n style: {\n margin: 0,\n fontSize: \"var(--t-small)\",\n color: \"var(--fg-muted)\",\n lineHeight: 1.5\n },\n children: theme.description\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\ThemeCard.tsx\",\n lineNumber: 57,\n columnNumber: 11\n }, this)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\ThemeCard.tsx\",\n lineNumber: 46,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_StatusBadge__WEBPACK_IMPORTED_MODULE_3__.StatusBadge, {\n status: theme.status\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\ThemeCard.tsx\",\n lineNumber: 68,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\ThemeCard.tsx\",\n lineNumber: 45,\n columnNumber: 7\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n fontSize: \"var(--t-label)\",\n fontFamily: \"var(--font-mono)\",\n color: \"var(--fg-subtle)\",\n textTransform: \"uppercase\",\n letterSpacing: \"var(--label-ls)\"\n },\n children: [\n theme.source_documents.length,\n \" source doc\",\n theme.source_documents.length !== 1 ? \"s\" : \"\"\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\ThemeCard.tsx\",\n lineNumber: 71,\n columnNumber: 7\n }, this),\n queued !== null && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n background: \"var(--success)\",\n color: \"var(--teal-900)\",\n borderRadius: \"var(--r-sm)\",\n padding: \"var(--s-2) var(--s-3)\",\n fontSize: \"var(--t-small)\",\n fontWeight: 500\n },\n children: [\n queued,\n \" micro-learnings queued for generation\"\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\ThemeCard.tsx\",\n lineNumber: 84,\n columnNumber: 9\n }, this),\n error && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n background: \"#f8d7da\",\n color: \"#c0392b\",\n borderRadius: \"var(--r-sm)\",\n padding: \"var(--s-2) var(--s-3)\",\n fontSize: \"var(--t-small)\"\n },\n children: error\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\ThemeCard.tsx\",\n lineNumber: 99,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n display: \"flex\",\n gap: \"var(--s-2)\",\n flexWrap: \"wrap\"\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(next_link__WEBPACK_IMPORTED_MODULE_2__[\"default\"], {\n href: `/admin/knowledge/${theme.id}`,\n style: {\n textDecoration: \"none\"\n },\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_Button__WEBPACK_IMPORTED_MODULE_4__.Button, {\n variant: \"secondary\",\n size: \"sm\",\n children: \"View topics\"\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\ThemeCard.tsx\",\n lineNumber: 114,\n columnNumber: 11\n }, this)\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\ThemeCard.tsx\",\n lineNumber: 113,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_Button__WEBPACK_IMPORTED_MODULE_4__.Button, {\n variant: \"primary\",\n size: \"sm\",\n onClick: ()=>void handleGenerate(),\n loading: generating,\n children: \"Generate micro-learnings\"\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\ThemeCard.tsx\",\n lineNumber: 118,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\ThemeCard.tsx\",\n lineNumber: 112,\n columnNumber: 7\n }, this)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\ThemeCard.tsx\",\n lineNumber: 34,\n columnNumber: 5\n }, this);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9zcmMvY29tcG9uZW50cy9hZG1pbi9UaGVtZUNhcmQudHN4IiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFDdUM7QUFDWDtBQUU2QjtBQUNWO0FBQ0M7QUFPekMsU0FBU00sVUFBVSxFQUFFQyxLQUFLLEVBQUVDLFFBQVEsRUFBa0I7SUFDM0QsTUFBTSxDQUFDQyxZQUFZQyxjQUFjLEdBQUdULCtDQUFRQSxDQUFDO0lBQzdDLE1BQU0sQ0FBQ1UsT0FBT0MsU0FBUyxHQUFHWCwrQ0FBUUEsQ0FBZ0I7SUFDbEQsTUFBTSxDQUFDWSxRQUFRQyxVQUFVLEdBQUdiLCtDQUFRQSxDQUFnQjtJQUVwRCxlQUFlYztRQUNiTCxjQUFjO1FBQ2RFLFNBQVM7UUFDVCxJQUFJO1lBQ0YsTUFBTSxFQUFFQyxRQUFRRyxDQUFDLEVBQUUsR0FBRyxNQUFNWCw4REFBZUEsQ0FBQ0UsTUFBTVUsRUFBRTtZQUNwREgsVUFBVUU7WUFDVlI7UUFDRixFQUFFLE9BQU9VLEtBQUs7WUFDWk4sU0FBU00sZUFBZUMsUUFBUUQsSUFBSUUsT0FBTyxHQUFHO1FBQ2hELFNBQVU7WUFDUlYsY0FBYztRQUNoQjtJQUNGO0lBRUEscUJBQ0UsOERBQUNXO1FBQ0NDLE9BQU87WUFDTEMsWUFBWTtZQUNaQyxRQUFRO1lBQ1JDLGNBQWM7WUFDZEMsU0FBUztZQUNUQyxTQUFTO1lBQ1RDLGVBQWU7WUFDZkMsS0FBSztRQUNQOzswQkFFQSw4REFBQ1I7Z0JBQUlDLE9BQU87b0JBQUVLLFNBQVM7b0JBQVFHLFlBQVk7b0JBQWNDLGdCQUFnQjtvQkFBaUJGLEtBQUs7Z0JBQWE7O2tDQUMxRyw4REFBQ1I7d0JBQUlDLE9BQU87NEJBQUVVLE1BQU07NEJBQUdDLFVBQVU7d0JBQUU7OzBDQUNqQyw4REFBQ0M7Z0NBQ0NaLE9BQU87b0NBQ0xhLFFBQVE7b0NBQ1JDLFVBQVU7b0NBQ1ZDLFlBQVk7b0NBQ1pDLE9BQU87Z0NBQ1Q7MENBRUMvQixNQUFNZ0MsS0FBSzs7Ozs7OzBDQUVkLDhEQUFDQztnQ0FDQ2xCLE9BQU87b0NBQ0xhLFFBQVE7b0NBQ1JDLFVBQVU7b0NBQ1ZFLE9BQU87b0NBQ1BHLFlBQVk7Z0NBQ2Q7MENBRUNsQyxNQUFNbUMsV0FBVzs7Ozs7Ozs7Ozs7O2tDQUd0Qiw4REFBQ3ZDLG1FQUFXQTt3QkFBQ3dDLFFBQVFwQyxNQUFNb0MsTUFBTTs7Ozs7Ozs7Ozs7OzBCQUduQyw4REFBQ3RCO2dCQUNDQyxPQUFPO29CQUNMYyxVQUFVO29CQUNWUSxZQUFZO29CQUNaTixPQUFPO29CQUNQTyxlQUFlO29CQUNmQyxlQUFlO2dCQUNqQjs7b0JBRUN2QyxNQUFNd0MsZ0JBQWdCLENBQUNDLE1BQU07b0JBQUM7b0JBQVl6QyxNQUFNd0MsZ0JBQWdCLENBQUNDLE1BQU0sS0FBSyxJQUFJLE1BQU07Ozs7Ozs7WUFHeEZuQyxXQUFXLHNCQUNWLDhEQUFDUTtnQkFDQ0MsT0FBTztvQkFDTEMsWUFBWTtvQkFDWmUsT0FBTztvQkFDUGIsY0FBYztvQkFDZEMsU0FBUztvQkFDVFUsVUFBVTtvQkFDVkMsWUFBWTtnQkFDZDs7b0JBRUN4QjtvQkFBTzs7Ozs7OztZQUlYRix1QkFDQyw4REFBQ1U7Z0JBQ0NDLE9BQU87b0JBQ0xDLFlBQVk7b0JBQ1plLE9BQU87b0JBQ1BiLGNBQWM7b0JBQ2RDLFNBQVM7b0JBQ1RVLFVBQVU7Z0JBQ1o7MEJBRUN6Qjs7Ozs7OzBCQUlMLDhEQUFDVTtnQkFBSUMsT0FBTztvQkFBRUssU0FBUztvQkFBUUUsS0FBSztvQkFBY29CLFVBQVU7Z0JBQU87O2tDQUNqRSw4REFBQy9DLGlEQUFJQTt3QkFBQ2dELE1BQU0sQ0FBQyxpQkFBaUIsRUFBRTNDLE1BQU1VLEVBQUUsQ0FBQyxDQUFDO3dCQUFFSyxPQUFPOzRCQUFFNkIsZ0JBQWdCO3dCQUFPO2tDQUMxRSw0RUFBQy9DLHlEQUFNQTs0QkFBQ2dELFNBQVE7NEJBQVlDLE1BQUs7c0NBQUs7Ozs7Ozs7Ozs7O2tDQUl4Qyw4REFBQ2pELHlEQUFNQTt3QkFDTGdELFNBQVE7d0JBQ1JDLE1BQUs7d0JBQ0xDLFNBQVMsSUFBTSxLQUFLdkM7d0JBQ3BCd0MsU0FBUzlDO2tDQUNWOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFNVCIsInNvdXJjZXMiOlsid2VicGFjazovL2xlYXJuaW5nLXBsYXRmb3JtLWZyb250ZW5kLy4vc3JjL2NvbXBvbmVudHMvYWRtaW4vVGhlbWVDYXJkLnRzeD84YmNjIl0sInNvdXJjZXNDb250ZW50IjpbIid1c2UgY2xpZW50J1xuaW1wb3J0IFJlYWN0LCB7IHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgTGluayBmcm9tICduZXh0L2xpbmsnXG5pbXBvcnQgdHlwZSB7IFRoZW1lIH0gZnJvbSAnQC90eXBlcydcbmltcG9ydCB7IFN0YXR1c0JhZGdlIH0gZnJvbSAnQC9jb21wb25lbnRzL3VpL1N0YXR1c0JhZGdlJ1xuaW1wb3J0IHsgQnV0dG9uIH0gZnJvbSAnQC9jb21wb25lbnRzL3VpL0J1dHRvbidcbmltcG9ydCB7IHBvc3RHZW5lcmF0ZUFsbCB9IGZyb20gJ0AvbGliL3NlcnZpY2VzJ1xuXG5pbnRlcmZhY2UgVGhlbWVDYXJkUHJvcHMge1xuICB0aGVtZTogVGhlbWVcbiAgb25VcGRhdGU6ICgpID0+IHZvaWRcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIFRoZW1lQ2FyZCh7IHRoZW1lLCBvblVwZGF0ZSB9OiBUaGVtZUNhcmRQcm9wcykge1xuICBjb25zdCBbZ2VuZXJhdGluZywgc2V0R2VuZXJhdGluZ10gPSB1c2VTdGF0ZShmYWxzZSlcbiAgY29uc3QgW2Vycm9yLCBzZXRFcnJvcl0gPSB1c2VTdGF0ZTxzdHJpbmcgfCBudWxsPihudWxsKVxuICBjb25zdCBbcXVldWVkLCBzZXRRdWV1ZWRdID0gdXNlU3RhdGU8bnVtYmVyIHwgbnVsbD4obnVsbClcblxuICBhc3luYyBmdW5jdGlvbiBoYW5kbGVHZW5lcmF0ZSgpIHtcbiAgICBzZXRHZW5lcmF0aW5nKHRydWUpXG4gICAgc2V0RXJyb3IobnVsbClcbiAgICB0cnkge1xuICAgICAgY29uc3QgeyBxdWV1ZWQ6IHEgfSA9IGF3YWl0IHBvc3RHZW5lcmF0ZUFsbCh0aGVtZS5pZClcbiAgICAgIHNldFF1ZXVlZChxKVxuICAgICAgb25VcGRhdGUoKVxuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgc2V0RXJyb3IoZXJyIGluc3RhbmNlb2YgRXJyb3IgPyBlcnIubWVzc2FnZSA6ICdHZW5lcmF0aW9uIGZhaWxlZCcpXG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHNldEdlbmVyYXRpbmcoZmFsc2UpXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2XG4gICAgICBzdHlsZT17e1xuICAgICAgICBiYWNrZ3JvdW5kOiAndmFyKC0tYmcpJyxcbiAgICAgICAgYm9yZGVyOiAnMS41cHggc29saWQgdmFyKC0tY3JlYW0pJyxcbiAgICAgICAgYm9yZGVyUmFkaXVzOiAndmFyKC0tci1tZCknLFxuICAgICAgICBwYWRkaW5nOiAndmFyKC0tcy00KScsXG4gICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICAgICAgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsXG4gICAgICAgIGdhcDogJ3ZhcigtLXMtMyknLFxuICAgICAgfX1cbiAgICA+XG4gICAgICA8ZGl2IHN0eWxlPXt7IGRpc3BsYXk6ICdmbGV4JywgYWxpZ25JdGVtczogJ2ZsZXgtc3RhcnQnLCBqdXN0aWZ5Q29udGVudDogJ3NwYWNlLWJldHdlZW4nLCBnYXA6ICd2YXIoLS1zLTMpJyB9fT5cbiAgICAgICAgPGRpdiBzdHlsZT17eyBmbGV4OiAxLCBtaW5XaWR0aDogMCB9fT5cbiAgICAgICAgICA8aDNcbiAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgIG1hcmdpbjogJzAgMCB2YXIoLS1zLTEpJyxcbiAgICAgICAgICAgICAgZm9udFNpemU6ICd2YXIoLS10LWJvZHkpJyxcbiAgICAgICAgICAgICAgZm9udFdlaWdodDogNzAwLFxuICAgICAgICAgICAgICBjb2xvcjogJ3ZhcigtLWZnKScsXG4gICAgICAgICAgICB9fVxuICAgICAgICAgID5cbiAgICAgICAgICAgIHt0aGVtZS50aXRsZX1cbiAgICAgICAgICA8L2gzPlxuICAgICAgICAgIDxwXG4gICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICBtYXJnaW46IDAsXG4gICAgICAgICAgICAgIGZvbnRTaXplOiAndmFyKC0tdC1zbWFsbCknLFxuICAgICAgICAgICAgICBjb2xvcjogJ3ZhcigtLWZnLW11dGVkKScsXG4gICAgICAgICAgICAgIGxpbmVIZWlnaHQ6IDEuNSxcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgPlxuICAgICAgICAgICAge3RoZW1lLmRlc2NyaXB0aW9ufVxuICAgICAgICAgIDwvcD5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxTdGF0dXNCYWRnZSBzdGF0dXM9e3RoZW1lLnN0YXR1c30gLz5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2XG4gICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgZm9udFNpemU6ICd2YXIoLS10LWxhYmVsKScsXG4gICAgICAgICAgZm9udEZhbWlseTogJ3ZhcigtLWZvbnQtbW9ubyknLFxuICAgICAgICAgIGNvbG9yOiAndmFyKC0tZmctc3VidGxlKScsXG4gICAgICAgICAgdGV4dFRyYW5zZm9ybTogJ3VwcGVyY2FzZScsXG4gICAgICAgICAgbGV0dGVyU3BhY2luZzogJ3ZhcigtLWxhYmVsLWxzKScsXG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIHt0aGVtZS5zb3VyY2VfZG9jdW1lbnRzLmxlbmd0aH0gc291cmNlIGRvY3t0aGVtZS5zb3VyY2VfZG9jdW1lbnRzLmxlbmd0aCAhPT0gMSA/ICdzJyA6ICcnfVxuICAgICAgPC9kaXY+XG5cbiAgICAgIHtxdWV1ZWQgIT09IG51bGwgJiYgKFxuICAgICAgICA8ZGl2XG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICd2YXIoLS1zdWNjZXNzKScsXG4gICAgICAgICAgICBjb2xvcjogJ3ZhcigtLXRlYWwtOTAwKScsXG4gICAgICAgICAgICBib3JkZXJSYWRpdXM6ICd2YXIoLS1yLXNtKScsXG4gICAgICAgICAgICBwYWRkaW5nOiAndmFyKC0tcy0yKSB2YXIoLS1zLTMpJyxcbiAgICAgICAgICAgIGZvbnRTaXplOiAndmFyKC0tdC1zbWFsbCknLFxuICAgICAgICAgICAgZm9udFdlaWdodDogNTAwLFxuICAgICAgICAgIH19XG4gICAgICAgID5cbiAgICAgICAgICB7cXVldWVkfSBtaWNyby1sZWFybmluZ3MgcXVldWVkIGZvciBnZW5lcmF0aW9uXG4gICAgICAgIDwvZGl2PlxuICAgICAgKX1cblxuICAgICAge2Vycm9yICYmIChcbiAgICAgICAgPGRpdlxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAnI2Y4ZDdkYScsXG4gICAgICAgICAgICBjb2xvcjogJyNjMDM5MmInLFxuICAgICAgICAgICAgYm9yZGVyUmFkaXVzOiAndmFyKC0tci1zbSknLFxuICAgICAgICAgICAgcGFkZGluZzogJ3ZhcigtLXMtMikgdmFyKC0tcy0zKScsXG4gICAgICAgICAgICBmb250U2l6ZTogJ3ZhcigtLXQtc21hbGwpJyxcbiAgICAgICAgICB9fVxuICAgICAgICA+XG4gICAgICAgICAge2Vycm9yfVxuICAgICAgICA8L2Rpdj5cbiAgICAgICl9XG5cbiAgICAgIDxkaXYgc3R5bGU9e3sgZGlzcGxheTogJ2ZsZXgnLCBnYXA6ICd2YXIoLS1zLTIpJywgZmxleFdyYXA6ICd3cmFwJyB9fT5cbiAgICAgICAgPExpbmsgaHJlZj17YC9hZG1pbi9rbm93bGVkZ2UvJHt0aGVtZS5pZH1gfSBzdHlsZT17eyB0ZXh0RGVjb3JhdGlvbjogJ25vbmUnIH19PlxuICAgICAgICAgIDxCdXR0b24gdmFyaWFudD1cInNlY29uZGFyeVwiIHNpemU9XCJzbVwiPlxuICAgICAgICAgICAgVmlldyB0b3BpY3NcbiAgICAgICAgICA8L0J1dHRvbj5cbiAgICAgICAgPC9MaW5rPlxuICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgdmFyaWFudD1cInByaW1hcnlcIlxuICAgICAgICAgIHNpemU9XCJzbVwiXG4gICAgICAgICAgb25DbGljaz17KCkgPT4gdm9pZCBoYW5kbGVHZW5lcmF0ZSgpfVxuICAgICAgICAgIGxvYWRpbmc9e2dlbmVyYXRpbmd9XG4gICAgICAgID5cbiAgICAgICAgICBHZW5lcmF0ZSBtaWNyby1sZWFybmluZ3NcbiAgICAgICAgPC9CdXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgKVxufVxuIl0sIm5hbWVzIjpbIlJlYWN0IiwidXNlU3RhdGUiLCJMaW5rIiwiU3RhdHVzQmFkZ2UiLCJCdXR0b24iLCJwb3N0R2VuZXJhdGVBbGwiLCJUaGVtZUNhcmQiLCJ0aGVtZSIsIm9uVXBkYXRlIiwiZ2VuZXJhdGluZyIsInNldEdlbmVyYXRpbmciLCJlcnJvciIsInNldEVycm9yIiwicXVldWVkIiwic2V0UXVldWVkIiwiaGFuZGxlR2VuZXJhdGUiLCJxIiwiaWQiLCJlcnIiLCJFcnJvciIsIm1lc3NhZ2UiLCJkaXYiLCJzdHlsZSIsImJhY2tncm91bmQiLCJib3JkZXIiLCJib3JkZXJSYWRpdXMiLCJwYWRkaW5nIiwiZGlzcGxheSIsImZsZXhEaXJlY3Rpb24iLCJnYXAiLCJhbGlnbkl0ZW1zIiwianVzdGlmeUNvbnRlbnQiLCJmbGV4IiwibWluV2lkdGgiLCJoMyIsIm1hcmdpbiIsImZvbnRTaXplIiwiZm9udFdlaWdodCIsImNvbG9yIiwidGl0bGUiLCJwIiwibGluZUhlaWdodCIsImRlc2NyaXB0aW9uIiwic3RhdHVzIiwiZm9udEZhbWlseSIsInRleHRUcmFuc2Zvcm0iLCJsZXR0ZXJTcGFjaW5nIiwic291cmNlX2RvY3VtZW50cyIsImxlbmd0aCIsImZsZXhXcmFwIiwiaHJlZiIsInRleHREZWNvcmF0aW9uIiwidmFyaWFudCIsInNpemUiLCJvbkNsaWNrIiwibG9hZGluZyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./src/components/admin/ThemeCard.tsx\n"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ThemeCard: () => (/* binding */ ThemeCard)\n/* harmony export */ });\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-dev-runtime */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react-jsx-dev-runtime.js\");\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var next_link__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! next/link */ \"(ssr)/./node_modules/next/dist/api/link.js\");\n/* harmony import */ var _components_ui_StatusBadge__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/components/ui/StatusBadge */ \"(ssr)/./src/components/ui/StatusBadge.tsx\");\n/* harmony import */ var _components_ui_Button__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @/components/ui/Button */ \"(ssr)/./src/components/ui/Button.tsx\");\n/* harmony import */ var _lib_pocketbase__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/lib/pocketbase */ \"(ssr)/./src/lib/pocketbase.ts\");\n/* harmony import */ var _lib_services__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @/lib/services */ \"(ssr)/./src/lib/services.ts\");\n/* __next_internal_client_entry_do_not_use__ ThemeCard auto */ \n\n\n\n\n\n\nfunction ThemeCard({ theme, onUpdate }) {\n const [approving, setApproving] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n const [rejecting, setRejecting] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n const [toast, setToast] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const [error, setError] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n async function handleApprove() {\n setApproving(true);\n setError(null);\n setToast(null);\n try {\n // 1. Fetch all topics in this theme\n const topics = await _lib_pocketbase__WEBPACK_IMPORTED_MODULE_5__.pb.collection(\"topics\").getFullList({\n filter: `theme=\"${theme.id}\"`,\n fields: \"id\"\n });\n // 2. Publish all topics\n await Promise.all(topics.map((t)=>_lib_pocketbase__WEBPACK_IMPORTED_MODULE_5__.pb.collection(\"topics\").update(t.id, {\n status: \"published\"\n })));\n // 3. Publish the theme\n await _lib_pocketbase__WEBPACK_IMPORTED_MODULE_5__.pb.collection(\"themes\").update(theme.id, {\n status: \"published\"\n });\n // 4. Trigger generation service\n const { queued } = await (0,_lib_services__WEBPACK_IMPORTED_MODULE_6__.postGenerateAll)(theme.id);\n setToast(`Generation queued for ${queued} micro-learnings`);\n onUpdate();\n } catch (err) {\n setError(err instanceof Error ? err.message : \"Approval failed\");\n } finally{\n setApproving(false);\n }\n }\n async function handleReject() {\n setRejecting(true);\n setError(null);\n try {\n await _lib_pocketbase__WEBPACK_IMPORTED_MODULE_5__.pb.collection(\"themes\").update(theme.id, {\n status: \"rejected\"\n });\n onUpdate();\n } catch (err) {\n setError(err instanceof Error ? err.message : \"Rejection failed\");\n } finally{\n setRejecting(false);\n }\n }\n const isPublished = theme.status === \"published\";\n const isRejected = theme.status === \"rejected\";\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n background: \"var(--bg)\",\n border: \"1.5px solid var(--cream)\",\n borderRadius: \"var(--r-md)\",\n padding: \"var(--s-4)\",\n display: \"flex\",\n flexDirection: \"column\",\n gap: \"var(--s-3)\",\n opacity: isRejected ? 0.6 : 1\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n display: \"flex\",\n alignItems: \"flex-start\",\n justifyContent: \"space-between\",\n gap: \"var(--s-3)\"\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n flex: 1,\n minWidth: 0\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"h3\", {\n style: {\n margin: \"0 0 var(--s-1)\",\n fontSize: \"var(--t-body)\",\n fontWeight: 700,\n color: \"var(--fg)\"\n },\n children: theme.title\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\ThemeCard.tsx\",\n lineNumber: 82,\n columnNumber: 11\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n style: {\n margin: 0,\n fontSize: \"var(--t-small)\",\n color: \"var(--fg-muted)\",\n lineHeight: 1.5\n },\n children: theme.description\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\ThemeCard.tsx\",\n lineNumber: 85,\n columnNumber: 11\n }, this)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\ThemeCard.tsx\",\n lineNumber: 81,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_StatusBadge__WEBPACK_IMPORTED_MODULE_3__.StatusBadge, {\n status: theme.status\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\ThemeCard.tsx\",\n lineNumber: 89,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\ThemeCard.tsx\",\n lineNumber: 80,\n columnNumber: 7\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n fontSize: \"var(--t-label)\",\n fontFamily: \"var(--font-mono)\",\n color: \"var(--fg-subtle)\",\n textTransform: \"uppercase\",\n letterSpacing: \"var(--label-ls)\"\n },\n children: [\n theme.source_documents.length,\n \" source doc\",\n theme.source_documents.length !== 1 ? \"s\" : \"\"\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\ThemeCard.tsx\",\n lineNumber: 92,\n columnNumber: 7\n }, this),\n toast && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n background: \"var(--success)\",\n color: \"var(--teal-900)\",\n borderRadius: \"var(--r-sm)\",\n padding: \"var(--s-2) var(--s-3)\",\n fontSize: \"var(--t-small)\",\n fontWeight: 500\n },\n children: toast\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\ThemeCard.tsx\",\n lineNumber: 105,\n columnNumber: 9\n }, this),\n error && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n background: \"#f8d7da\",\n color: \"#c0392b\",\n borderRadius: \"var(--r-sm)\",\n padding: \"var(--s-2) var(--s-3)\",\n fontSize: \"var(--t-small)\"\n },\n children: error\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\ThemeCard.tsx\",\n lineNumber: 111,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n display: \"flex\",\n gap: \"var(--s-2)\",\n flexWrap: \"wrap\"\n },\n children: [\n !isRejected && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(next_link__WEBPACK_IMPORTED_MODULE_2__[\"default\"], {\n href: `/admin/knowledge/${theme.id}`,\n style: {\n textDecoration: \"none\"\n },\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_Button__WEBPACK_IMPORTED_MODULE_4__.Button, {\n variant: \"secondary\",\n size: \"sm\",\n children: \"Edit topics\"\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\ThemeCard.tsx\",\n lineNumber: 119,\n columnNumber: 13\n }, this)\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\ThemeCard.tsx\",\n lineNumber: 118,\n columnNumber: 11\n }, this),\n !isPublished && !isRejected && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, {\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_Button__WEBPACK_IMPORTED_MODULE_4__.Button, {\n variant: \"primary\",\n size: \"sm\",\n onClick: ()=>void handleApprove(),\n loading: approving,\n children: \"Approve batch\"\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\ThemeCard.tsx\",\n lineNumber: 124,\n columnNumber: 13\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_Button__WEBPACK_IMPORTED_MODULE_4__.Button, {\n variant: \"danger\",\n size: \"sm\",\n onClick: ()=>void handleReject(),\n loading: rejecting,\n children: \"Reject\"\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\ThemeCard.tsx\",\n lineNumber: 127,\n columnNumber: 13\n }, this)\n ]\n }, void 0, true)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\ThemeCard.tsx\",\n lineNumber: 116,\n columnNumber: 7\n }, this)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\ThemeCard.tsx\",\n lineNumber: 68,\n columnNumber: 5\n }, this);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9zcmMvY29tcG9uZW50cy9hZG1pbi9UaGVtZUNhcmQudHN4IiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7O0FBQ3VDO0FBQ1g7QUFFNkI7QUFDVjtBQUNWO0FBQ1c7QUFPekMsU0FBU08sVUFBVSxFQUFFQyxLQUFLLEVBQUVDLFFBQVEsRUFBa0I7SUFDM0QsTUFBTSxDQUFDQyxXQUFXQyxhQUFhLEdBQUdWLCtDQUFRQSxDQUFDO0lBQzNDLE1BQU0sQ0FBQ1csV0FBV0MsYUFBYSxHQUFHWiwrQ0FBUUEsQ0FBQztJQUMzQyxNQUFNLENBQUNhLE9BQU9DLFNBQVMsR0FBR2QsK0NBQVFBLENBQWdCO0lBQ2xELE1BQU0sQ0FBQ2UsT0FBT0MsU0FBUyxHQUFHaEIsK0NBQVFBLENBQWdCO0lBRWxELGVBQWVpQjtRQUNiUCxhQUFhO1FBQ2JNLFNBQVM7UUFDVEYsU0FBUztRQUNULElBQUk7WUFDRixvQ0FBb0M7WUFDcEMsTUFBTUksU0FBUyxNQUFNZCwrQ0FBRUEsQ0FBQ2UsVUFBVSxDQUFDLFVBQVVDLFdBQVcsQ0FBaUI7Z0JBQ3ZFQyxRQUFRLENBQUMsT0FBTyxFQUFFZCxNQUFNZSxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUM3QkMsUUFBUTtZQUNWO1lBRUEsd0JBQXdCO1lBQ3hCLE1BQU1DLFFBQVFDLEdBQUcsQ0FDZlAsT0FBT1EsR0FBRyxDQUFDLENBQUNDLElBQU12QiwrQ0FBRUEsQ0FBQ2UsVUFBVSxDQUFDLFVBQVVTLE1BQU0sQ0FBQ0QsRUFBRUwsRUFBRSxFQUFFO29CQUFFTyxRQUFRO2dCQUFZO1lBRy9FLHVCQUF1QjtZQUN2QixNQUFNekIsK0NBQUVBLENBQUNlLFVBQVUsQ0FBQyxVQUFVUyxNQUFNLENBQUNyQixNQUFNZSxFQUFFLEVBQUU7Z0JBQUVPLFFBQVE7WUFBWTtZQUVyRSxnQ0FBZ0M7WUFDaEMsTUFBTSxFQUFFQyxNQUFNLEVBQUUsR0FBRyxNQUFNekIsOERBQWVBLENBQUNFLE1BQU1lLEVBQUU7WUFDakRSLFNBQVMsQ0FBQyxzQkFB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MENBQVc7Ozs7OzswQ0FHN0YsOERBQUNOLHlEQUFNQTtnQ0FBQ2lFLFNBQVE7Z0NBQVNDLE1BQUs7Z0NBQUtDLFNBQVMsSUFBTSxLQUFLcEM7Z0NBQWdCcUMsU0FBUzVEOzBDQUFXOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQVF2RyIsInNvdXJjZXMiOlsid2VicGFjazovL2xlYXJuaW5nLXBsYXRmb3JtLWZyb250ZW5kLy4vc3JjL2NvbXBvbmVudHMvYWRtaW4vVGhlbWVDYXJkLnRzeD84YmNjIl0sInNvdXJjZXNDb250ZW50IjpbIid1c2UgY2xpZW50J1xuaW1wb3J0IFJlYWN0LCB7IHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgTGluayBmcm9tICduZXh0L2xpbmsnXG5pbXBvcnQgdHlwZSB7IFRoZW1lIH0gZnJvbSAnQC90eXBlcydcbmltcG9ydCB7IFN0YXR1c0JhZGdlIH0gZnJvbSAnQC9jb21wb25lbnRzL3VpL1N0YXR1c0JhZGdlJ1xuaW1wb3J0IHsgQnV0dG9uIH0gZnJvbSAnQC9jb21wb25lbnRzL3VpL0J1dHRvbidcbmltcG9ydCB7IHBiIH0gZnJvbSAnQC9saWIvcG9ja2V0YmFzZSdcbmltcG9ydCB7IHBvc3RHZW5lcmF0ZUFsbCB9IGZyb20gJ0AvbGliL3NlcnZpY2VzJ1xuXG5pbnRlcmZhY2UgVGhlbWVDYXJkUHJvcHMge1xuICB0aGVtZTogVGhlbWVcbiAgb25VcGRhdGU6ICgpID0+IHZvaWRcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIFRoZW1lQ2FyZCh7IHRoZW1lLCBvblVwZGF0ZSB9OiBUaGVtZUNhcmRQcm9wcykge1xuICBjb25zdCBbYXBwcm92aW5nLCBzZXRBcHByb3ZpbmddID0gdXNlU3RhdGUoZmFsc2UpXG4gIGNvbnN0IFtyZWplY3RpbmcsIHNldFJlamVjdGluZ10gPSB1c2VTdGF0ZShmYWxzZSlcbiAgY29uc3QgW3RvYXN0LCBzZXRUb2FzdF0gPSB1c2VTdGF0ZTxzdHJpbmcgfCBudWxsPihudWxsKVxuICBjb25zdCBbZXJyb3IsIHNldEVycm9yXSA9IHVzZVN0YXRlPHN0cmluZyB8IG51bGw+KG51bGwpXG5cbiAgYXN5bmMgZnVuY3Rpb24gaGFuZGxlQXBwcm92ZSgpIHtcbiAgICBzZXRBcHByb3ZpbmcodHJ1ZSlcbiAgICBzZXRFcnJvcihudWxsKVxuICAgIHNldFRvYXN0KG51bGwpXG4gICAgdHJ5IHtcbiAgICAgIC8vIDEuIEZldGNoIGFsbCB0b3BpY3MgaW4gdGhpcyB0aGVtZVxuICAgICAgY29uc3QgdG9waWNzID0gYXdhaXQgcGIuY29sbGVjdGlvbigndG9waWNzJykuZ2V0RnVsbExpc3Q8eyBpZDogc3RyaW5nIH0+KHtcbiAgICAgICAgZmlsdGVyOiBgdGhlbWU9XCIke3RoZW1lLmlkfVwiYCxcbiAgICAgICAgZmllbGRzOiAnaWQnLFxuICAgICAgfSlcblxuICAgICAgLy8gMi4gUHVibGlzaCBhbGwgdG9waWNzXG4gICAgICBhd2FpdCBQcm9taXNlLmFsbChcbiAgICAgICAgdG9waWNzLm1hcCgodCkgPT4gcGIuY29sbGVjdGlvbigndG9waWNzJykudXBkYXRlKHQuaWQsIHsgc3RhdHVzOiAncHVibGlzaGVkJyB9KSlcbiAgICAgIClcblxuICAgICAgLy8gMy4gUHVibGlzaCB0aGUgdGhlbWVcbiAgICAgIGF3YWl0IHBiLmNvbGxlY3Rpb24oJ3RoZW1lcycpLnVwZGF0ZSh0aGVtZS5pZCwgeyBzdGF0dXM6ICdwdWJsaXNoZWQnIH0pXG5cbiAgICAgIC8vIDQuIFRyaWdnZXIgZ2VuZXJhdGlvbiBzZXJ2aWNlXG4gICAgICBjb25zdCB7IHF1ZXVlZCB9ID0gYXdhaXQgcG9zdEdlbmVyYXRlQWxsKHRoZW1lLmlkKVxuICAgICAgc2V0VG9hc3QoYEdlbmVyYXRpb24gcXVldWVkIGZvciAke3F1ZXVlZH0gbWljcm8tbGVhcm5pbmdzYClcbiAgICAgIG9uVXBkYXRlKClcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIHNldEVycm9yKGVyciBpbnN0YW5jZW9mIEVycm9yID8gZXJyLm1lc3NhZ2UgOiAnQXBwcm92YWwgZmFpbGVkJylcbiAgICB9IGZpbmFsbHkge1xuICAgICAgc2V0QXBwcm92aW5nKGZhbHNlKVxuICAgIH1cbiAgfVxuXG4gIGFzeW5jIGZ1bmN0aW9uIGhhbmRsZVJlamVjdCgpIHtcbiAgICBzZXRSZWplY3RpbmcodHJ1ZSlcbiAgICBzZXRFcnJvcihudWxsKVxuICAgIHRyeSB7XG4gICAgICBhd2FpdCBwYi5jb2xsZWN0aW9uKCd0aGVtZXMnKS51cGRhdGUodGhlbWUuaWQsIHsgc3RhdHVzOiAncmVqZWN0ZWQnIH0pXG4gICAgICBvblVwZGF0ZSgpXG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICBzZXRFcnJvcihlcnIgaW5zdGFuY2VvZiBFcnJvciA/IGVyci5tZXNzYWdlIDogJ1JlamVjdGlvbiBmYWlsZWQnKVxuICAgIH0gZmluYWxseSB7XG4gICAgICBzZXRSZWplY3RpbmcoZmFsc2UpXG4gICAgfVxuICB9XG5cbiAgY29uc3QgaXNQdWJsaXNoZWQgPSB0aGVtZS5zdGF0dXMgPT09ICdwdWJsaXNoZWQnXG4gIGNvbnN0IGlzUmVqZWN0ZWQgPSB0aGVtZS5zdGF0dXMgPT09ICdyZWplY3RlZCdcblxuICByZXR1cm4gKFxuICAgIDxkaXZcbiAgICAgIHN0eWxlPXt7XG4gICAgICAgIGJhY2tncm91bmQ6ICd2YXIoLS1iZyknLFxuICAgICAgICBib3JkZXI6ICcxLjVweCBzb2xpZCB2YXIoLS1jcmVhbSknLFxuICAgICAgICBib3JkZXJSYWRpdXM6ICd2YXIoLS1yLW1kKScsXG4gICAgICAgIHBhZGRpbmc6ICd2YXIoLS1zLTQpJyxcbiAgICAgICAgZGlzcGxheTogJ2ZsZXgnLFxuICAgICAgICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcbiAgICAgICAgZ2FwOiAndmFyKC0tcy0zKScsXG4gICAgICAgIG9wYWNpdHk6IGlzUmVqZWN0ZWQgPyAwLjYgOiAxLFxuICAgICAgfX1cbiAgICA+XG4gICAgICA8ZGl2IHN0eWxlPXt7IGRpc3BsYXk6ICdmbGV4JywgYWxpZ25JdGVtczogJ2ZsZXgtc3RhcnQnLCBqdXN0aWZ5Q29udGVudDogJ3NwYWNlLWJldHdlZW4nLCBnYXA6ICd2YXIoLS1zLTMpJyB9fT5cbiAgICAgICAgPGRpdiBzdHlsZT17eyBmbGV4OiAxLCBtaW5XaWR0aDogMCB9fT5cbiAgICAgICAgICA8aDMgc3R5bGU9e3sgbWFyZ2luOiAnMCAwIHZhcigtLXMtMSknLCBmb250U2l6ZTogJ3ZhcigtLXQtYm9keSknLCBmb250V2VpZ2h0OiA3MDAsIGNvbG9yOiAndmFyKC0tZmcpJyB9fT5cbiAgICAgICAgICAgIHt0aGVtZS50aXRsZX1cbiAgICAgICAgICA8L2gzPlxuICAgICAgICAgIDxwIHN0eWxlPXt7IG1hcmdpbjogMCwgZm9udFNpemU6ICd2YXIoLS10LXNtYWxsKScsIGNvbG9yOiAndmFyKC0tZmctbXV0ZWQpJywgbGluZUhlaWdodDogMS41IH19PlxuICAgICAgICAgICAge3RoZW1lLmRlc2NyaXB0aW9ufVxuICAgICAgICAgIDwvcD5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxTdGF0dXNCYWRnZSBzdGF0dXM9e3RoZW1lLnN0YXR1c30gLz5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2XG4gICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgZm9udFNpemU6ICd2YXIoLS10LWxhYmVsKScsXG4gICAgICAgICAgZm9udEZhbWlseTogJ3ZhcigtLWZvbnQtbW9ubyknLFxuICAgICAgICAgIGNvbG9yOiAndmFyKC0tZmctc3VidGxlKScsXG4gICAgICAgICAgdGV4dFRyYW5zZm9ybTogJ3VwcGVyY2FzZScsXG4gICAgICAgICAgbGV0dGVyU3BhY2luZzogJ3ZhcigtLWxhYmVsLWxzKScsXG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIHt0aGVtZS5zb3VyY2VfZG9jdW1lbnRzLmxlbmd0aH0gc291cmNlIGRvY3t0aGVtZS5zb3VyY2VfZG9jdW1lbnRzLmxlbmd0aCAhPT0gMSA/ICdzJyA6ICcnfVxuICAgICAgPC9kaXY+XG5cbiAgICAgIHt0b2FzdCAmJiAoXG4gICAgICAgIDxkaXYgc3R5bGU9e3sgYmFja2dyb3VuZDogJ3ZhcigtLXN1Y2Nlc3MpJywgY29sb3I6ICd2YXIoLS10ZWFsLTkwMCknLCBib3JkZXJSYWRpdXM6ICd2YXIoLS1yLXNtKScsIHBhZGRpbmc6ICd2YXIoLS1zLTIpIHZhcigtLXMtMyknLCBmb250U2l6ZTogJ3ZhcigtLXQtc21hbGwpJywgZm9udFdlaWdodDogNTAwIH19PlxuICAgICAgICAgIHt0b2FzdH1cbiAgICAgICAgPC9kaXY+XG4gICAgICApfVxuXG4gICAgICB7ZXJyb3IgJiYgKFxuICAgICAgICA8ZGl2IHN0eWxlPXt7IGJhY2tncm91bmQ6ICcjZjhkN2RhJywgY29sb3I6ICcjYzAzOTJiJywgYm9yZGVyUmFkaXVzOiAndmFyKC0tci1zbSknLCBwYWRkaW5nOiAndmFyKC0tcy0yKSB2YXIoLS1zLTMpJywgZm9udFNpemU6ICd2YXIoLS10LXNtYWxsKScgfX0+XG4gICAgICAgICAge2Vycm9yfVxuICAgICAgICA8L2Rpdj5cbiAgICAgICl9XG5cbiAgICAgIDxkaXYgc3R5bGU9e3sgZGlzcGxheTogJ2ZsZXgnLCBnYXA6ICd2YXIoLS1zLTIpJywgZmxleFdyYXA6ICd3cmFwJyB9fT5cbiAgICAgICAgeyFpc1JlamVjdGVkICYmIChcbiAgICAgICAgICA8TGluayBocmVmPXtgL2FkbWluL2tub3dsZWRnZS8ke3RoZW1lLmlkfWB9IHN0eWxlPXt7IHRleHREZWNvcmF0aW9uOiAnbm9uZScgfX0+XG4gICAgICAgICAgICA8QnV0dG9uIHZhcmlhbnQ9XCJzZWNvbmRhcnlcIiBzaXplPVwic21cIj5FZGl0IHRvcGljczwvQnV0dG9uPlxuICAgICAgICAgIDwvTGluaz5cbiAgICAgICAgKX1cbiAgICAgICAgeyFpc1B1Ymxpc2hlZCAmJiAhaXNSZWplY3RlZCAmJiAoXG4gICAgICAgICAgPD5cbiAgICAgICAgICAgIDxCdXR0b24gdmFyaWFudD1cInByaW1hcnlcIiBzaXplPVwic21cIiBvbkNsaWNrPXsoKSA9PiB2b2lkIGhhbmRsZUFwcHJvdmUoKX0gbG9hZGluZz17YXBwcm92aW5nfT5cbiAgICAgICAgICAgICAgQXBwcm92ZSBiYXRjaFxuICAgICAgICAgICAgPC9CdXR0b24+XG4gICAgICAgICAgICA8QnV0dG9uIHZhcmlhbnQ9XCJkYW5nZXJcIiBzaXplPVwic21cIiBvbkNsaWNrPXsoKSA9PiB2b2lkIGhhbmRsZVJlamVjdCgpfSBsb2FkaW5nPXtyZWplY3Rpbmd9PlxuICAgICAgICAgICAgICBSZWplY3RcbiAgICAgICAgICAgIDwvQnV0dG9uPlxuICAgICAgICAgIDwvPlxuICAgICAgICApfVxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIClcbn1cbiJdLCJuYW1lcyI6WyJSZWFjdCIsInVzZVN0YXRlIiwiTGluayIsIlN0YXR1c0JhZGdlIiwiQnV0dG9uIiwicGIiLCJwb3N0R2VuZXJhdGVBbGwiLCJUaGVtZUNhcmQiLCJ0aGVtZSIsIm9uVXBkYXRlIiwiYXBwcm92aW5nIiwic2V0QXBwcm92aW5nIiwicmVqZWN0aW5nIiwic2V0UmVqZWN0aW5nIiwidG9hc3QiLCJzZXRUb2FzdCIsImVycm9yIiwic2V0RXJyb3IiLCJoYW5kbGVBcHByb3ZlIiwidG9waWNzIiwiY29sbGVjdGlvbiIsImdldEZ1bGxMaXN0IiwiZmlsdGVyIiwiaWQiLCJmaWVsZHMiLCJQcm9taXNlIiwiYWxsIiwibWFwIiwidCIsInVwZGF0ZSIsInN0YXR1cyIsInF1ZXVlZCIsImVyciIsIkVycm9yIiwibWVzc2FnZSIsImhhbmRsZVJlamVjdCIsImlzUHVibGlzaGVkIiwiaXNSZWplY3RlZCIsImRpdiIsInN0eWxlIiwiYmFja2dyb3VuZCIsImJvcmRlciIsImJvcmRlclJhZGl1cyIsInBhZGRpbmciLCJkaXNwbGF5IiwiZmxleERpcmVjdGlvbiIsImdhcCIsIm9wYWNpdHkiLCJhbGlnbkl0ZW1zIiwianVzdGlmeUNvbnRlbnQiLCJmbGV4IiwibWluV2lkdGgiLCJoMyIsIm1hcmdpbiIsImZvbnRTaXplIiwiZm9udFdlaWdodCIsImNvbG9yIiwidGl0bGUiLCJwIiwibGluZUhlaWdodCIsImRlc2NyaXB0aW9uIiwiZm9udEZhbWlseSIsInRleHRUcmFuc2Zvcm0iLCJsZXR0ZXJTcGFjaW5nIiwic291cmNlX2RvY3VtZW50cyIsImxlbmd0aCIsImZsZXhXcmFwIiwiaHJlZiIsInRleHREZWNvcmF0aW9uIiwidmFyaWFudCIsInNpemUiLCJvbkNsaWNrIiwibG9hZGluZyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./src/components/admin/ThemeCard.tsx\n"); /***/ }), @@ -202,7 +202,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFeed: () => (/* binding */ getFeed),\n/* harmony export */ getIngestionStatus: () => (/* binding */ getIngestionStatus),\n/* harmony export */ getLeaderboard: () => (/* binding */ getLeaderboard),\n/* harmony export */ patchCurriculumWeekOrder: () => (/* binding */ patchCurriculumWeekOrder),\n/* harmony export */ postComplete: () => (/* binding */ postComplete),\n/* harmony export */ postCurriculumConfirm: () => (/* binding */ postCurriculumConfirm),\n/* harmony export */ postGenerateAll: () => (/* binding */ postGenerateAll),\n/* harmony export */ postIngest: () => (/* binding */ postIngest)\n/* harmony export */ });\nconst INGESTION_URL = \"http://localhost:3001\" ?? 0;\nconst GENERATION_URL = \"http://localhost:3002\" ?? 0;\nconst CURRICULUM_URL = \"http://localhost:3003\" ?? 0;\nconst PROGRESS_URL = \"http://localhost:3005\" ?? 0;\nasync function handleResponse(res) {\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(`HTTP ${res.status}: ${text}`);\n }\n return res.json();\n}\nasync function postIngest(payload) {\n const res = await fetch(`${INGESTION_URL}/ingest`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getIngestionStatus(jobId) {\n const res = await fetch(`${INGESTION_URL}/ingest/status/${encodeURIComponent(jobId)}`);\n return handleResponse(res);\n}\nasync function postGenerateAll(themeId) {\n const res = await fetch(`${GENERATION_URL}/generate/theme/${encodeURIComponent(themeId)}`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n return handleResponse(res);\n}\nasync function postComplete(payload) {\n const res = await fetch(`${PROGRESS_URL}/complete`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getLeaderboard() {\n const res = await fetch(`${PROGRESS_URL}/leaderboard`);\n return handleResponse(res);\n}\nasync function getFeed() {\n const res = await fetch(`${PROGRESS_URL}/feed`);\n return handleResponse(res);\n}\nasync function postCurriculumConfirm(versionId) {\n const res = await fetch(`${CURRICULUM_URL}/curriculum/versions/${encodeURIComponent(versionId)}/confirm`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(`HTTP ${res.status}: ${text}`);\n }\n}\nasync function patchCurriculumWeekOrder(weekId, position) {\n const res = await fetch(`${CURRICULUM_URL}/curriculum/weeks/${encodeURIComponent(weekId)}/order`, {\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n position\n })\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(`HTTP ${res.status}: ${text}`);\n }\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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UUFDOUNDLE1BQU1DLEtBQUtDLFNBQVMsQ0FBQztZQUFFYTtRQUFTO0lBQ2xDO0lBRUYsSUFBSSxDQUFDNUIsSUFBSUMsRUFBRSxFQUFFO1FBQ1gsTUFBTUMsT0FBTyxNQUFNRixJQUFJRSxJQUFJLEdBQUdDLEtBQUssQ0FBQyxJQUFNSCxJQUFJSSxVQUFVO1FBQ3hELE1BQU0sSUFBSUMsTUFBTSxDQUFDLEtBQUssRUFBRUwsSUFBSU0sTUFBTSxDQUFDLEVBQUUsRUFBRUosS0FBSyxDQUFDO0lBQy9DO0FBQ0YiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9sZWFybmluZy1wbGF0Zm9ybS1mcm9udGVuZC8uL3NyYy9saWIvc2VydmljZXMudHM/MDcwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIEluZ2VzdGlvbkpvYlN0YXR1cyxcbiAgQ29tcGxldGVQYXlsb2FkLFxuICBDb21wbGV0ZVJlc3BvbnNlLFxuICBMZWFkZXJib2FyZEVudHJ5LFxuICBGZWVkRW50cnksXG59IGZyb20gJ0AvdHlwZXMnXG5cbmNvbnN0IElOR0VTVElPTl9VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19JTkdFU1RJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDEnXG5jb25zdCBHRU5FUkFUSU9OX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0dFTkVSQVRJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDInXG5jb25zdCBDVVJSSUNVTFVNX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDMnXG5jb25zdCBQUk9HUkVTU19VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19QUk9HUkVTU19VUkwgPz8gJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwNSdcblxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlUmVzcG9uc2U8VD4ocmVzOiBSZXNwb25zZSk6IFByb21pc2U8VD4ge1xuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxuICByZXR1cm4gcmVzLmpzb24oKSBhcyBQcm9taXNlPFQ+XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0SW5nZXN0KHBheWxvYWQ6IHtcbiAgZG9jdW1lbnRJZDogc3RyaW5nXG4gIGZpbGVuYW1lOiBzdHJpbmdcbiAgZm9ybWF0OiAncGRmJyB8ICdtZCcgfCAndHh0J1xuICBmaWxlVXJsOiBzdHJpbmdcbn0pOiBQcm9taXNlPHsgam9iSWQ6IHN0cmluZyB9PiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdGAsIHtcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICBib2R5OiBKU09OLnN0cmluZ2lmeShwYXlsb2FkKSxcbiAgfSlcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPHsgam9iSWQ6IHN0cmluZyB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRJbmdlc3Rpb25TdGF0dXMoam9iSWQ6IHN0cmluZyk6IFByb21pc2U8SW5nZXN0aW9uSm9iU3RhdHVzPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdC9zdGF0dXMvJHtlbmNvZGVVUklDb21wb25lbnQoam9iSWQpfWApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxJbmdlc3Rpb25Kb2JTdGF0dXM+KHJlcylcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHBvc3RHZW5lcmF0ZUFsbCh0aGVtZUlkOiBzdHJpbmcpOiBQcm9taXNlPHsgcXVldWVkOiBudW1iZXIgfT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtHRU5FUkFUSU9OX1VSTH0vZ2VuZXJhdGUvdGhlbWUvJHtlbmNvZGVVUklDb21wb25lbnQodGhlbWVJZCl9YCwge1xuICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgIGhlYWRlcnM6IHsgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyB9LFxuICB9KVxuICByZXR1cm4gaGFuZGxlUmVzcG9uc2U8eyBxdWV1ZWQ6IG51bWJlciB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0Q29tcGxldGUocGF5bG9hZDogQ29tcGxldGVQYXlsb2FkKTogUHJvbWlzZTxDb21wbGV0ZVJlc3BvbnNlPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vY29tcGxldGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkocGF5bG9hZCksXG4gIH0pXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxDb21wbGV0ZVJlc3BvbnNlPihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRMZWFkZXJib2FyZCgpOiBQcm9taXNlPExlYWRlcmJvYXJkRW50cnlbXT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtQUk9HUkVTU19VUkx9L2xlYWRlcmJvYXJkYClcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPExlYWRlcmJvYXJkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0RmVlZCgpOiBQcm9taXNlPEZlZWRFbnRyeVtdPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vZmVlZGApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxGZWVkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcG9zdEN1cnJpY3VsdW1Db25maXJtKHZlcnNpb25JZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3ZlcnNpb25zLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHZlcnNpb25JZCl9L2NvbmZpcm1gLFxuICAgIHtcbiAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyKHdlZWtJZDogc3RyaW5nLCBwb3NpdGlvbjogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3dlZWtzLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHdlZWtJZCl9L29yZGVyYCxcbiAgICB7XG4gICAgICBtZXRob2Q6ICdQQVRDSCcsXG4gICAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHsgcG9zaXRpb24gfSksXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuIl0sIm5hbWVzIjpbIklOR0VTVElPTl9VUkwiLCJwcm9jZXNzIiwiZW52IiwiTkVYVF9QVUJMSUNfSU5HRVNUSU9OX1VSTCIsIkdFTkVSQVRJT05fVVJMIiwiTkVYVF9QVUJMSUNfR0VORVJBVElPTl9VUkwiLCJDVVJSSUNVTFVNX1VSTCIsIk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMIiwiUFJPR1JFU1NfVVJMIiwiTkVYVF9QVUJMSUNfUFJPR1JFU1NfVVJMIiwiaGFuZGxlUmVzcG9uc2UiLCJyZXMiLCJvayIsInRleHQiLCJjYXRjaCIsInN0YXR1c1RleHQiLCJFcnJvciIsInN0YXR1cyIsImpzb24iLCJwb3N0SW5nZXN0IiwicGF5bG9hZCIsImZldGNoIiwibWV0aG9kIiwiaGVhZGVycyIsImJvZHkiLCJKU09OIiwic3RyaW5naWZ5IiwiZ2V0SW5nZXN0aW9uU3RhdHVzIiwiam9iSWQiLCJlbmNvZGVVUklDb21wb25lbnQiLCJwb3N0R2VuZXJhdGVBbGwiLCJ0aGVtZUlkIiwicG9zdENvbXBsZXRlIiwiZ2V0TGVhZGVyYm9hcmQiLCJnZXRGZWVkIiwicG9zdEN1cnJpY3VsdW1Db25maXJtIiwidmVyc2lvbklkIiwicGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyIiwid2Vla0lkIiwicG9zaXRpb24iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./src/lib/services.ts\n"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFeed: () => (/* binding */ getFeed),\n/* harmony export */ getIngestionStatus: () => (/* binding */ getIngestionStatus),\n/* harmony export */ getLeaderboard: () => (/* binding */ getLeaderboard),\n/* harmony export */ patchCurriculumWeekOrder: () => (/* binding */ patchCurriculumWeekOrder),\n/* harmony export */ postComplete: () => (/* binding */ postComplete),\n/* harmony export */ postCurriculumConfirm: () => (/* binding */ postCurriculumConfirm),\n/* harmony export */ postGenerateAll: () => (/* binding */ postGenerateAll),\n/* harmony export */ postIngest: () => (/* binding */ postIngest)\n/* harmony export */ });\nconst INGESTION_URL = \"http://localhost:3001\" ?? 0;\nconst GENERATION_URL = \"http://localhost:3002\" ?? 0;\nconst CURRICULUM_URL = \"http://localhost:3003\" ?? 0;\nconst PROGRESS_URL = \"http://localhost:3005\" ?? 0;\nasync function handleResponse(res) {\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(`HTTP ${res.status}: ${text}`);\n }\n return res.json();\n}\nasync function postIngest(payload) {\n const res = await fetch(`${INGESTION_URL}/ingest`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getIngestionStatus(jobId) {\n const res = await fetch(`${INGESTION_URL}/ingest/status/${encodeURIComponent(jobId)}`);\n return handleResponse(res);\n}\nasync function postGenerateAll(themeId) {\n const res = await fetch(`${GENERATION_URL}/generate`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n themeId\n })\n });\n const data = await handleResponse(res);\n return {\n queued: data.totalItems\n };\n}\nasync function postComplete(payload) {\n const res = await fetch(`${PROGRESS_URL}/complete`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getLeaderboard() {\n const res = await fetch(`${PROGRESS_URL}/leaderboard`);\n return handleResponse(res);\n}\nasync function getFeed() {\n const res = await fetch(`${PROGRESS_URL}/feed`);\n return handleResponse(res);\n}\nasync function postCurriculumConfirm(versionId) {\n const res = await fetch(`${CURRICULUM_URL}/curriculum/versions/${encodeURIComponent(versionId)}/confirm`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(`HTTP ${res.status}: ${text}`);\n }\n}\nasync function patchCurriculumWeekOrder(weekId, position) {\n const res = await fetch(`${CURRICULUM_URL}/curriculum/weeks/${encodeURIComponent(weekId)}/order`, {\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n position\n })\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(`HTTP ${res.status}: ${text}`);\n }\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9zcmMvbGliL3NlcnZpY2VzLnRzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBUUEsTUFBTUEsZ0JBQWdCQyx1QkFBcUMsSUFBSTtBQUMvRCxNQUFNRyxpQkFBaUJILHVCQUFzQyxJQUFJO0FBQ2pFLE1BQU1LLGlCQUFpQkwsdUJBQXNDLElBQUk7QUFDakUsTUFBTU8sZUFBZVAsdUJBQW9DLElBQUk7QUFFN0QsZUFBZVMsZUFBa0JDLEdBQWE7SUFDNUMsSUFBSSxDQUFDQSxJQUFJQyxFQUFFLEVBQUU7UUFDWCxNQUFNQyxPQUFPLE1BQU1GLElBQUlFLElBQUksR0FBR0MsS0FBSyxDQUFDLElBQU1ILElBQUlJLFVBQVU7UUFDeEQsTUFBTSxJQUFJQyxNQUFNLENBQUMsS0FBSyxFQUFFTCxJQUFJTSxNQUFNLENBQUMsRUFBRSxFQUFFSixLQUFLLENBQUM7SUFDL0M7SUFDQSxPQUFPRixJQUFJTyxJQUFJO0FBQ2pCO0FBRU8sZUFBZUMsV0FBV0MsT0FLaEM7SUFDQyxNQUFNVCxNQUFNLE1BQU1VLE1BQU0sQ0FBQyxFQUFFckIsY0FBYyxPQUFPLENBQUMsRUFBRTtRQUNqRHNCLFFBQVE7UUFDUkMsU0FBUztZQUFFLGdCQUFnQjtRQUFtQjtRQUM5Q0MsTUFBTUMsS0FBS0MsU0FBUyxDQUFDTjtJQUN2QjtJQUNBLE9BQU9WLGVBQWtDQztBQUMzQztBQUVPLGVBQWVnQixtQkFBbUJDLEtBQWE7SUFDcEQsTUFBTWpCLE1BQU0sTUFBTVUsTUFBTSxDQUFDLEVBQUVyQixjQUFjLGVBQWUsRUFBRTZCLG1CQUFtQkQsT0FBTyxDQUFDO0lBQ3JGLE9BQU9sQixlQUFtQ0M7QUFDNUM7QUFFTyxlQUFlbUIsZ0JBQWdCQyxPQUFlO0lBQ25ELE1BQU1wQixNQUFNLE1BQU1VLE1BQU0sQ0FBQyxFQUFFakIsZUFBZSxTQUFTLENBQUMsRUFBRTtRQUNwRGtCLFFBQVE7UUFDUkMsU0FBUztZQUFFLGdCQUFnQjtRQUFtQjtRQUM5Q0MsTUFBTUMsS0FBS0MsU0FBUyxDQUFDO1lBQUVLO1FBQVE7SUFDakM7SUFDQSxNQUFNQyxPQUFPLE1BQU10QixlQUFzREM7SUFDekUsT0FBTztRQUFFc0IsUUFBUUQsS0FBS0UsVUFBVTtJQUFDO0FBQ25DO0FBRU8sZUFBZUMsYUFBYWYsT0FBd0I7SUFDekQsTUFBTVQsTUFBTSxNQUFNVSxNQUFNLENBQUMsRUFBRWIsYUFBYSxTQUFTLENBQUMsRUFBRTtRQUNsRGMsUUFBUTtRQUNSQyxTQUFTO1lBQUUsZ0JBQWdCO1FBQW1CO1FBQzlDQyxNQUFNQyxLQUFLQyxTQUFTLENBQUNOO0lBQ3ZCO0lBQ0EsT0FBT1YsZUFBaUNDO0FBQzFDO0FBRU8sZUFBZXlCO0lBQ3BCLE1BQU16QixNQUFNLE1BQU1VLE1BQU0sQ0FBQyxFQUFFYixhQUFhLFlBQVksQ0FBQztJQUNyRCxPQUFPRSxlQUFtQ0M7QUFDNUM7QUFFTyxlQUFlMEI7SUFDcEIsTUFBTTFCLE1BQU0sTUFBTVUsTUFBTSxDQUFDLEVBQUViLGFBQWEsS0FBSyxDQUFDO0lBQzlDLE9BQU9FLGVBQTRCQztBQUNyQztBQUVPLGVBQWUyQixzQkFBc0JDLFNBQWlCO0lBQzNELE1BQU01QixNQUFNLE1BQU1VLE1BQ2hCLENBQUMsRUFBRWYsZUFBZSxxQkFBcUIsRUFBRXVCLG1CQUFtQlUsV0FBVyxRQUFRLENBQUMsRUFDaEY7UUFDRWpCLFFBQVE7UUFDUkMsU0FBUztZQUFFLGdCQUFnQjtRQUFtQjtJQUNoRDtJQUVGLElBQUksQ0FBQ1osSUFBSUMsRUFBRSxFQUFFO1FBQ1gsTUFBTUMsT0FBTyxNQUFNRixJQUFJRSxJQUFJLEdBQUdDLEtBQUssQ0FBQyxJQUFNSCxJQUFJSSxVQUFVO1FBQ3hELE1BQU0sSUFBSUMsTUFBTSxDQUFDLEtBQUssRUFBRUwsSUFBSU0sTUFBTSxDQUFDLEVBQUUsRUFBRUosS0FBSyxDQUFDO0lBQy9DO0FBQ0Y7QUFFTyxlQUFlMkIseUJBQXlCQyxNQUFjLEVBQUVDLFFBQWdCO0lBQzdFLE1BQU0vQixNQUFNLE1BQU1VLE1BQ2hCLENBQUMsRUFBRWYsZUFBZSxrQkFBa0IsRUFBRXVCLG1CQUFtQlksUUFBUSxNQUFNLENBQUMsRUFDeEU7UUFDRW5CLFFBQVE7UUFDUkMsU0FBUztZQUFFLGdCQUFnQjtRQUFtQjtRQUM5Q0MsTUFBTUMsS0FBS0MsU0FBUyxDQUFDO1lBQUVnQjtRQUFTO0lBQ2xDO0lBRUYsSUFBSSxDQUFDL0IsSUFBSUMsRUFBRSxFQUFFO1FBQ1gsTUFBTUMsT0FBTyxNQUFNRixJQUFJRSxJQUFJLEdBQUdDLEtBQUssQ0FBQyxJQUFNSCxJQUFJSSxVQUFVO1FBQ3hELE1BQU0sSUFBSUMsTUFBTSxDQUFDLEtBQUssRUFBRUwsSUFBSU0sTUFBTSxDQUFDLEVBQUUsRUFBRUosS0FBSyxDQUFDO0lBQy9DO0FBQ0YiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9sZWFybmluZy1wbGF0Zm9ybS1mcm9udGVuZC8uL3NyYy9saWIvc2VydmljZXMudHM/MDcwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIEluZ2VzdGlvbkpvYlN0YXR1cyxcbiAgQ29tcGxldGVQYXlsb2FkLFxuICBDb21wbGV0ZVJlc3BvbnNlLFxuICBMZWFkZXJib2FyZEVudHJ5LFxuICBGZWVkRW50cnksXG59IGZyb20gJ0AvdHlwZXMnXG5cbmNvbnN0IElOR0VTVElPTl9VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19JTkdFU1RJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDEnXG5jb25zdCBHRU5FUkFUSU9OX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0dFTkVSQVRJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDInXG5jb25zdCBDVVJSSUNVTFVNX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDMnXG5jb25zdCBQUk9HUkVTU19VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19QUk9HUkVTU19VUkwgPz8gJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwNSdcblxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlUmVzcG9uc2U8VD4ocmVzOiBSZXNwb25zZSk6IFByb21pc2U8VD4ge1xuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxuICByZXR1cm4gcmVzLmpzb24oKSBhcyBQcm9taXNlPFQ+XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0SW5nZXN0KHBheWxvYWQ6IHtcbiAgZG9jdW1lbnRJZDogc3RyaW5nXG4gIGZpbGVuYW1lOiBzdHJpbmdcbiAgZm9ybWF0OiAncGRmJyB8ICdtZCcgfCAndHh0J1xuICBmaWxlVXJsOiBzdHJpbmdcbn0pOiBQcm9taXNlPHsgam9iSWQ6IHN0cmluZyB9PiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdGAsIHtcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICBib2R5OiBKU09OLnN0cmluZ2lmeShwYXlsb2FkKSxcbiAgfSlcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPHsgam9iSWQ6IHN0cmluZyB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRJbmdlc3Rpb25TdGF0dXMoam9iSWQ6IHN0cmluZyk6IFByb21pc2U8SW5nZXN0aW9uSm9iU3RhdHVzPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdC9zdGF0dXMvJHtlbmNvZGVVUklDb21wb25lbnQoam9iSWQpfWApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxJbmdlc3Rpb25Kb2JTdGF0dXM+KHJlcylcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHBvc3RHZW5lcmF0ZUFsbCh0aGVtZUlkOiBzdHJpbmcpOiBQcm9taXNlPHsgcXVldWVkOiBudW1iZXIgfT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtHRU5FUkFUSU9OX1VSTH0vZ2VuZXJhdGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkoeyB0aGVtZUlkIH0pLFxuICB9KVxuICBjb25zdCBkYXRhID0gYXdhaXQgaGFuZGxlUmVzcG9uc2U8eyBqb2JJZDogc3RyaW5nOyB0b3RhbEl0ZW1zOiBudW1iZXIgfT4ocmVzKVxuICByZXR1cm4geyBxdWV1ZWQ6IGRhdGEudG90YWxJdGVtcyB9XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0Q29tcGxldGUocGF5bG9hZDogQ29tcGxldGVQYXlsb2FkKTogUHJvbWlzZTxDb21wbGV0ZVJlc3BvbnNlPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vY29tcGxldGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkocGF5bG9hZCksXG4gIH0pXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxDb21wbGV0ZVJlc3BvbnNlPihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRMZWFkZXJib2FyZCgpOiBQcm9taXNlPExlYWRlcmJvYXJkRW50cnlbXT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtQUk9HUkVTU19VUkx9L2xlYWRlcmJvYXJkYClcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPExlYWRlcmJvYXJkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0RmVlZCgpOiBQcm9taXNlPEZlZWRFbnRyeVtdPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vZmVlZGApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxGZWVkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcG9zdEN1cnJpY3VsdW1Db25maXJtKHZlcnNpb25JZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3ZlcnNpb25zLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHZlcnNpb25JZCl9L2NvbmZpcm1gLFxuICAgIHtcbiAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyKHdlZWtJZDogc3RyaW5nLCBwb3NpdGlvbjogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3dlZWtzLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHdlZWtJZCl9L29yZGVyYCxcbiAgICB7XG4gICAgICBtZXRob2Q6ICdQQVRDSCcsXG4gICAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHsgcG9zaXRpb24gfSksXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuIl0sIm5hbWVzIjpbIklOR0VTVElPTl9VUkwiLCJwcm9jZXNzIiwiZW52IiwiTkVYVF9QVUJMSUNfSU5HRVNUSU9OX1VSTCIsIkdFTkVSQVRJT05fVVJMIiwiTkVYVF9QVUJMSUNfR0VORVJBVElPTl9VUkwiLCJDVVJSSUNVTFVNX1VSTCIsIk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMIiwiUFJPR1JFU1NfVVJMIiwiTkVYVF9QVUJMSUNfUFJPR1JFU1NfVVJMIiwiaGFuZGxlUmVzcG9uc2UiLCJyZXMiLCJvayIsInRleHQiLCJjYXRjaCIsInN0YXR1c1RleHQiLCJFcnJvciIsInN0YXR1cyIsImpzb24iLCJwb3N0SW5nZXN0IiwicGF5bG9hZCIsImZldGNoIiwibWV0aG9kIiwiaGVhZGVycyIsImJvZHkiLCJKU09OIiwic3RyaW5naWZ5IiwiZ2V0SW5nZXN0aW9uU3RhdHVzIiwiam9iSWQiLCJlbmNvZGVVUklDb21wb25lbnQiLCJwb3N0R2VuZXJhdGVBbGwiLCJ0aGVtZUlkIiwiZGF0YSIsInF1ZXVlZCIsInRvdGFsSXRlbXMiLCJwb3N0Q29tcGxldGUiLCJnZXRMZWFkZXJib2FyZCIsImdldEZlZWQiLCJwb3N0Q3VycmljdWx1bUNvbmZpcm0iLCJ2ZXJzaW9uSWQiLCJwYXRjaEN1cnJpY3VsdW1XZWVrT3JkZXIiLCJ3ZWVrSWQiLCJwb3NpdGlvbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./src/lib/services.ts\n"); /***/ }), @@ -271,7 +271,7 @@ __webpack_require__.r(__webpack_exports__); /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (/* binding */ RootLayout),\n/* harmony export */ metadata: () => (/* binding */ metadata),\n/* harmony export */ viewport: () => (/* binding */ viewport)\n/* harmony export */ });\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-dev-runtime */ \"(rsc)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/rsc/react-jsx-dev-runtime.js\");\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _stylesheet_css__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../stylesheet.css */ \"(rsc)/../../stylesheet.css\");\n/* harmony import */ var _globals_css__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./globals.css */ \"(rsc)/./src/app/globals.css\");\n\n\n\nconst metadata = {\n title: \"Learning Platform\",\n description: \"Employee knowledge and learning\",\n manifest: \"/manifest.json\",\n appleWebApp: {\n capable: true,\n statusBarStyle: \"default\",\n title: \"Learning Platform\"\n }\n};\nconst viewport = {\n themeColor: \"#1F5560\",\n width: \"device-width\",\n initialScale: 1,\n maximumScale: 1\n};\nfunction RootLayout({ children }) {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"html\", {\n lang: \"en\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"body\", {\n children: children\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\app\\\\layout.tsx\",\n lineNumber: 30,\n columnNumber: 7\n }, this)\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\app\\\\layout.tsx\",\n lineNumber: 29,\n columnNumber: 5\n }, this);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9zcmMvYXBwL2xheW91dC50c3giLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFDbUM7QUFDYjtBQUVmLE1BQU1BLFdBQXFCO0lBQ2hDQyxPQUFPO0lBQ1BDLGFBQWE7SUFDYkMsVUFBVTtJQUNWQyxhQUFhO1FBQ1hDLFNBQVM7UUFDVEMsZ0JBQWdCO1FBQ2hCTCxPQUFPO0lBQ1Q7QUFDRixFQUFDO0FBRU0sTUFBTU0sV0FBcUI7SUFDaENDLFlBQVk7SUFDWkMsT0FBTztJQUNQQyxjQUFjO0lBQ2RDLGNBQWM7QUFDaEIsRUFBQztBQUVjLFNBQVNDLFdBQVcsRUFDakNDLFFBQVEsRUFHVDtJQUNDLHFCQUNFLDhEQUFDQztRQUFLQyxNQUFLO2tCQUNULDRFQUFDQztzQkFBTUg7Ozs7Ozs7Ozs7O0FBR2IiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9sZWFybmluZy1wbGF0Zm9ybS1mcm9udGVuZC8uL3NyYy9hcHAvbGF5b3V0LnRzeD81N2E5Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgTWV0YWRhdGEsIFZpZXdwb3J0IH0gZnJvbSAnbmV4dCdcbmltcG9ydCAnLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MnXG5pbXBvcnQgJy4vZ2xvYmFscy5jc3MnXG5cbmV4cG9ydCBjb25zdCBtZXRhZGF0YTogTWV0YWRhdGEgPSB7XG4gIHRpdGxlOiAnTGVhcm5pbmcgUGxhdGZvcm0nLFxuICBkZXNjcmlwdGlvbjogJ0VtcGxveWVlIGtub3dsZWRnZSBhbmQgbGVhcm5pbmcnLFxuICBtYW5pZmVzdDogJy9tYW5pZmVzdC5qc29uJyxcbiAgYXBwbGVXZWJBcHA6IHtcbiAgICBjYXBhYmxlOiB0cnVlLFxuICAgIHN0YXR1c0JhclN0eWxlOiAnZGVmYXVsdCcsXG4gICAgdGl0bGU6ICdMZWFybmluZyBQbGF0Zm9ybScsXG4gIH0sXG59XG5cbmV4cG9ydCBjb25zdCB2aWV3cG9ydDogVmlld3BvcnQgPSB7XG4gIHRoZW1lQ29sb3I6ICcjMUY1NTYwJyxcbiAgd2lkdGg6ICdkZXZpY2Utd2lkdGgnLFxuICBpbml0aWFsU2NhbGU6IDEsXG4gIG1heGltdW1TY2FsZTogMSxcbn1cblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gUm9vdExheW91dCh7XG4gIGNoaWxkcmVuLFxufToge1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlXG59KSB7XG4gIHJldHVybiAoXG4gICAgPGh0bWwgbGFuZz1cImVuXCI+XG4gICAgICA8Ym9keT57Y2hpbGRyZW59PC9ib2R5PlxuICAgIDwvaHRtbD5cbiAgKVxufVxuIl0sIm5hbWVzIjpbIm1ldGFkYXRhIiwidGl0bGUiLCJkZXNjcmlwdGlvbiIsIm1hbmlmZXN0IiwiYXBwbGVXZWJBcHAiLCJjYXBhYmxlIiwic3RhdHVzQmFyU3R5bGUiLCJ2aWV3cG9ydCIsInRoZW1lQ29sb3IiLCJ3aWR0aCIsImluaXRpYWxTY2FsZSIsIm1heGltdW1TY2FsZSIsIlJvb3RMYXlvdXQiLCJjaGlsZHJlbiIsImh0bWwiLCJsYW5nIiwiYm9keSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(rsc)/./src/app/layout.tsx\n"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (/* binding */ RootLayout),\n/* harmony export */ metadata: () => (/* binding */ metadata),\n/* harmony export */ viewport: () => (/* binding */ viewport)\n/* harmony export */ });\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-dev-runtime */ \"(rsc)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/rsc/react-jsx-dev-runtime.js\");\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _stylesheet_css__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../stylesheet.css */ \"(rsc)/../../stylesheet.css\");\n/* harmony import */ var _globals_css__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./globals.css */ \"(rsc)/./src/app/globals.css\");\n\n\n\nconst metadata = {\n title: \"Learning Platform\",\n description: \"Employee knowledge and learning\",\n manifest: \"/manifest.json\",\n icons: {\n icon: \"/favicon.svg\"\n },\n appleWebApp: {\n capable: true,\n statusBarStyle: \"default\",\n title: \"Learning Platform\"\n },\n other: {\n \"mobile-web-app-capable\": \"yes\"\n }\n};\nconst viewport = {\n themeColor: \"#1F5560\",\n width: \"device-width\",\n initialScale: 1,\n maximumScale: 1\n};\nfunction RootLayout({ children }) {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"html\", {\n lang: \"en\",\n suppressHydrationWarning: true,\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"body\", {\n children: children\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\app\\\\layout.tsx\",\n lineNumber: 34,\n columnNumber: 7\n }, this)\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\app\\\\layout.tsx\",\n lineNumber: 33,\n columnNumber: 5\n }, this);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9zcmMvYXBwL2xheW91dC50c3giLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFDbUM7QUFDYjtBQUVmLE1BQU1BLFdBQXFCO0lBQ2hDQyxPQUFPO0lBQ1BDLGFBQWE7SUFDYkMsVUFBVTtJQUNWQyxPQUFPO1FBQUVDLE1BQU07SUFBZTtJQUM5QkMsYUFBYTtRQUNYQyxTQUFTO1FBQ1RDLGdCQUFnQjtRQUNoQlAsT0FBTztJQUNUO0lBQ0FRLE9BQU87UUFDTCwwQkFBMEI7SUFDNUI7QUFDRixFQUFDO0FBRU0sTUFBTUMsV0FBcUI7SUFDaENDLFlBQVk7SUFDWkMsT0FBTztJQUNQQyxjQUFjO0lBQ2RDLGNBQWM7QUFDaEIsRUFBQztBQUVjLFNBQVNDLFdBQVcsRUFDakNDLFFBQVEsRUFHVDtJQUNDLHFCQUNFLDhEQUFDQztRQUFLQyxNQUFLO1FBQUtDLHdCQUF3QjtrQkFDdEMsNEVBQUNDO3NCQUFNSjs7Ozs7Ozs7Ozs7QUFHYiIsInNvdXJjZXMiOlsid2VicGFjazovL2xlYXJuaW5nLXBsYXRmb3JtLWZyb250ZW5kLy4vc3JjL2FwcC9sYXlvdXQudHN4PzU3YTkiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBNZXRhZGF0YSwgVmlld3BvcnQgfSBmcm9tICduZXh0J1xuaW1wb3J0ICcuLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcydcbmltcG9ydCAnLi9nbG9iYWxzLmNzcydcblxuZXhwb3J0IGNvbnN0IG1ldGFkYXRhOiBNZXRhZGF0YSA9IHtcbiAgdGl0bGU6ICdMZWFybmluZyBQbGF0Zm9ybScsXG4gIGRlc2NyaXB0aW9uOiAnRW1wbG95ZWUga25vd2xlZGdlIGFuZCBsZWFybmluZycsXG4gIG1hbmlmZXN0OiAnL21hbmlmZXN0Lmpzb24nLFxuICBpY29uczogeyBpY29uOiAnL2Zhdmljb24uc3ZnJyB9LFxuICBhcHBsZVdlYkFwcDoge1xuICAgIGNhcGFibGU6IHRydWUsXG4gICAgc3RhdHVzQmFyU3R5bGU6ICdkZWZhdWx0JyxcbiAgICB0aXRsZTogJ0xlYXJuaW5nIFBsYXRmb3JtJyxcbiAgfSxcbiAgb3RoZXI6IHtcbiAgICAnbW9iaWxlLXdlYi1hcHAtY2FwYWJsZSc6ICd5ZXMnLFxuICB9LFxufVxuXG5leHBvcnQgY29uc3Qgdmlld3BvcnQ6IFZpZXdwb3J0ID0ge1xuICB0aGVtZUNvbG9yOiAnIzFGNTU2MCcsXG4gIHdpZHRoOiAnZGV2aWNlLXdpZHRoJyxcbiAgaW5pdGlhbFNjYWxlOiAxLFxuICBtYXhpbXVtU2NhbGU6IDEsXG59XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIFJvb3RMYXlvdXQoe1xuICBjaGlsZHJlbixcbn06IHtcbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZVxufSkge1xuICByZXR1cm4gKFxuICAgIDxodG1sIGxhbmc9XCJlblwiIHN1cHByZXNzSHlkcmF0aW9uV2FybmluZz5cbiAgICAgIDxib2R5PntjaGlsZHJlbn08L2JvZHk+XG4gICAgPC9odG1sPlxuICApXG59XG4iXSwibmFtZXMiOlsibWV0YWRhdGEiLCJ0aXRsZSIsImRlc2NyaXB0aW9uIiwibWFuaWZlc3QiLCJpY29ucyIsImljb24iLCJhcHBsZVdlYkFwcCIsImNhcGFibGUiLCJzdGF0dXNCYXJTdHlsZSIsIm90aGVyIiwidmlld3BvcnQiLCJ0aGVtZUNvbG9yIiwid2lkdGgiLCJpbml0aWFsU2NhbGUiLCJtYXhpbXVtU2NhbGUiLCJSb290TGF5b3V0IiwiY2hpbGRyZW4iLCJodG1sIiwibGFuZyIsInN1cHByZXNzSHlkcmF0aW9uV2FybmluZyIsImJvZHkiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(rsc)/./src/app/layout.tsx\n"); /***/ }) @@ -282,7 +282,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac var __webpack_require__ = require("../../../webpack-runtime.js"); __webpack_require__.C(exports); var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId)) -var __webpack_exports__ = __webpack_require__.X(0, ["vendor-chunks/next","vendor-chunks/pocketbase","vendor-chunks/@swc"], () => (__webpack_exec__("(rsc)/./node_modules/next/dist/build/webpack/loaders/next-app-loader.js?name=app%2Fadmin%2Fknowledge%2Fpage&page=%2Fadmin%2Fknowledge%2Fpage&appPaths=%2Fadmin%2Fknowledge%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fknowledge%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"))); +var __webpack_exports__ = __webpack_require__.X(0, ["vendor-chunks/next","vendor-chunks/@swc","vendor-chunks/pocketbase"], () => (__webpack_exec__("(rsc)/./node_modules/next/dist/build/webpack/loaders/next-app-loader.js?name=app%2Fadmin%2Fknowledge%2Fpage&page=%2Fadmin%2Fknowledge%2Fpage&appPaths=%2Fadmin%2Fknowledge%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fknowledge%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"))); module.exports = __webpack_exports__; })(); \ No newline at end of file diff --git a/app/frontend/.next/server/app/admin/page.js b/app/frontend/.next/server/app/admin/page.js index 92ad8d6..b19280e 100644 --- a/app/frontend/.next/server/app/admin/page.js +++ b/app/frontend/.next/server/app/admin/page.js @@ -220,7 +220,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac var __webpack_require__ = require("../../webpack-runtime.js"); __webpack_require__.C(exports); var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId)) -var __webpack_exports__ = __webpack_require__.X(0, ["vendor-chunks/next","vendor-chunks/@swc","vendor-chunks/pocketbase"], () => (__webpack_exec__("(rsc)/./node_modules/next/dist/build/webpack/loaders/next-app-loader.js?name=app%2Fadmin%2Fpage&page=%2Fadmin%2Fpage&appPaths=%2Fadmin%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"))); +var __webpack_exports__ = __webpack_require__.X(0, ["vendor-chunks/next","vendor-chunks/pocketbase","vendor-chunks/@swc"], () => (__webpack_exec__("(rsc)/./node_modules/next/dist/build/webpack/loaders/next-app-loader.js?name=app%2Fadmin%2Fpage&page=%2Fadmin%2Fpage&appPaths=%2Fadmin%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"))); module.exports = __webpack_exports__; })(); \ No newline at end of file diff --git a/app/frontend/.next/server/app/app/library/[topicId]/page.js b/app/frontend/.next/server/app/app/library/[topicId]/page.js index 5e9fd1a..e0bc9c1 100644 --- a/app/frontend/.next/server/app/app/library/[topicId]/page.js +++ b/app/frontend/.next/server/app/app/library/[topicId]/page.js @@ -334,7 +334,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFeed: () => (/* binding */ getFeed),\n/* harmony export */ getIngestionStatus: () => (/* binding */ getIngestionStatus),\n/* harmony export */ getLeaderboard: () => (/* binding */ getLeaderboard),\n/* harmony export */ patchCurriculumWeekOrder: () => (/* binding */ patchCurriculumWeekOrder),\n/* harmony export */ postComplete: () => (/* binding */ postComplete),\n/* harmony export */ postCurriculumConfirm: () => (/* binding */ postCurriculumConfirm),\n/* harmony export */ postGenerateAll: () => (/* binding */ postGenerateAll),\n/* harmony export */ postIngest: () => (/* binding */ postIngest)\n/* harmony export */ });\nconst INGESTION_URL = \"http://localhost:3001\" ?? 0;\nconst GENERATION_URL = \"http://localhost:3002\" ?? 0;\nconst CURRICULUM_URL = \"http://localhost:3003\" ?? 0;\nconst PROGRESS_URL = \"http://localhost:3005\" ?? 0;\nasync function handleResponse(res) {\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(`HTTP ${res.status}: ${text}`);\n }\n return res.json();\n}\nasync function postIngest(payload) {\n const res = await fetch(`${INGESTION_URL}/ingest`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getIngestionStatus(jobId) {\n const res = await fetch(`${INGESTION_URL}/ingest/status/${encodeURIComponent(jobId)}`);\n return handleResponse(res);\n}\nasync function postGenerateAll(themeId) {\n const res = await fetch(`${GENERATION_URL}/generate/theme/${encodeURIComponent(themeId)}`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n return handleResponse(res);\n}\nasync function postComplete(payload) {\n const res = await fetch(`${PROGRESS_URL}/complete`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getLeaderboard() {\n const res = await fetch(`${PROGRESS_URL}/leaderboard`);\n return handleResponse(res);\n}\nasync function getFeed() {\n const res = await fetch(`${PROGRESS_URL}/feed`);\n return handleResponse(res);\n}\nasync function postCurriculumConfirm(versionId) {\n const res = await fetch(`${CURRICULUM_URL}/curriculum/versions/${encodeURIComponent(versionId)}/confirm`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(`HTTP ${res.status}: ${text}`);\n }\n}\nasync function patchCurriculumWeekOrder(weekId, position) {\n const res = await fetch(`${CURRICULUM_URL}/curriculum/weeks/${encodeURIComponent(weekId)}/order`, {\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n position\n })\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(`HTTP ${res.status}: ${text}`);\n }\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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UUFDOUNDLE1BQU1DLEtBQUtDLFNBQVMsQ0FBQztZQUFFYTtRQUFTO0lBQ2xDO0lBRUYsSUFBSSxDQUFDNUIsSUFBSUMsRUFBRSxFQUFFO1FBQ1gsTUFBTUMsT0FBTyxNQUFNRixJQUFJRSxJQUFJLEdBQUdDLEtBQUssQ0FBQyxJQUFNSCxJQUFJSSxVQUFVO1FBQ3hELE1BQU0sSUFBSUMsTUFBTSxDQUFDLEtBQUssRUFBRUwsSUFBSU0sTUFBTSxDQUFDLEVBQUUsRUFBRUosS0FBSyxDQUFDO0lBQy9DO0FBQ0YiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9sZWFybmluZy1wbGF0Zm9ybS1mcm9udGVuZC8uL3NyYy9saWIvc2VydmljZXMudHM/MDcwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIEluZ2VzdGlvbkpvYlN0YXR1cyxcbiAgQ29tcGxldGVQYXlsb2FkLFxuICBDb21wbGV0ZVJlc3BvbnNlLFxuICBMZWFkZXJib2FyZEVudHJ5LFxuICBGZWVkRW50cnksXG59IGZyb20gJ0AvdHlwZXMnXG5cbmNvbnN0IElOR0VTVElPTl9VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19JTkdFU1RJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDEnXG5jb25zdCBHRU5FUkFUSU9OX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0dFTkVSQVRJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDInXG5jb25zdCBDVVJSSUNVTFVNX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDMnXG5jb25zdCBQUk9HUkVTU19VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19QUk9HUkVTU19VUkwgPz8gJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwNSdcblxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlUmVzcG9uc2U8VD4ocmVzOiBSZXNwb25zZSk6IFByb21pc2U8VD4ge1xuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxuICByZXR1cm4gcmVzLmpzb24oKSBhcyBQcm9taXNlPFQ+XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0SW5nZXN0KHBheWxvYWQ6IHtcbiAgZG9jdW1lbnRJZDogc3RyaW5nXG4gIGZpbGVuYW1lOiBzdHJpbmdcbiAgZm9ybWF0OiAncGRmJyB8ICdtZCcgfCAndHh0J1xuICBmaWxlVXJsOiBzdHJpbmdcbn0pOiBQcm9taXNlPHsgam9iSWQ6IHN0cmluZyB9PiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdGAsIHtcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICBib2R5OiBKU09OLnN0cmluZ2lmeShwYXlsb2FkKSxcbiAgfSlcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPHsgam9iSWQ6IHN0cmluZyB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRJbmdlc3Rpb25TdGF0dXMoam9iSWQ6IHN0cmluZyk6IFByb21pc2U8SW5nZXN0aW9uSm9iU3RhdHVzPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdC9zdGF0dXMvJHtlbmNvZGVVUklDb21wb25lbnQoam9iSWQpfWApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxJbmdlc3Rpb25Kb2JTdGF0dXM+KHJlcylcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHBvc3RHZW5lcmF0ZUFsbCh0aGVtZUlkOiBzdHJpbmcpOiBQcm9taXNlPHsgcXVldWVkOiBudW1iZXIgfT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtHRU5FUkFUSU9OX1VSTH0vZ2VuZXJhdGUvdGhlbWUvJHtlbmNvZGVVUklDb21wb25lbnQodGhlbWVJZCl9YCwge1xuICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgIGhlYWRlcnM6IHsgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyB9LFxuICB9KVxuICByZXR1cm4gaGFuZGxlUmVzcG9uc2U8eyBxdWV1ZWQ6IG51bWJlciB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0Q29tcGxldGUocGF5bG9hZDogQ29tcGxldGVQYXlsb2FkKTogUHJvbWlzZTxDb21wbGV0ZVJlc3BvbnNlPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vY29tcGxldGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkocGF5bG9hZCksXG4gIH0pXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxDb21wbGV0ZVJlc3BvbnNlPihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRMZWFkZXJib2FyZCgpOiBQcm9taXNlPExlYWRlcmJvYXJkRW50cnlbXT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtQUk9HUkVTU19VUkx9L2xlYWRlcmJvYXJkYClcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPExlYWRlcmJvYXJkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0RmVlZCgpOiBQcm9taXNlPEZlZWRFbnRyeVtdPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vZmVlZGApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxGZWVkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcG9zdEN1cnJpY3VsdW1Db25maXJtKHZlcnNpb25JZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3ZlcnNpb25zLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHZlcnNpb25JZCl9L2NvbmZpcm1gLFxuICAgIHtcbiAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyKHdlZWtJZDogc3RyaW5nLCBwb3NpdGlvbjogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3dlZWtzLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHdlZWtJZCl9L29yZGVyYCxcbiAgICB7XG4gICAgICBtZXRob2Q6ICdQQVRDSCcsXG4gICAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHsgcG9zaXRpb24gfSksXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuIl0sIm5hbWVzIjpbIklOR0VTVElPTl9VUkwiLCJwcm9jZXNzIiwiZW52IiwiTkVYVF9QVUJMSUNfSU5HRVNUSU9OX1VSTCIsIkdFTkVSQVRJT05fVVJMIiwiTkVYVF9QVUJMSUNfR0VORVJBVElPTl9VUkwiLCJDVVJSSUNVTFVNX1VSTCIsIk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMIiwiUFJPR1JFU1NfVVJMIiwiTkVYVF9QVUJMSUNfUFJPR1JFU1NfVVJMIiwiaGFuZGxlUmVzcG9uc2UiLCJyZXMiLCJvayIsInRleHQiLCJjYXRjaCIsInN0YXR1c1RleHQiLCJFcnJvciIsInN0YXR1cyIsImpzb24iLCJwb3N0SW5nZXN0IiwicGF5bG9hZCIsImZldGNoIiwibWV0aG9kIiwiaGVhZGVycyIsImJvZHkiLCJKU09OIiwic3RyaW5naWZ5IiwiZ2V0SW5nZXN0aW9uU3RhdHVzIiwiam9iSWQiLCJlbmNvZGVVUklDb21wb25lbnQiLCJwb3N0R2VuZXJhdGVBbGwiLCJ0aGVtZUlkIiwicG9zdENvbXBsZXRlIiwiZ2V0TGVhZGVyYm9hcmQiLCJnZXRGZWVkIiwicG9zdEN1cnJpY3VsdW1Db25maXJtIiwidmVyc2lvbklkIiwicGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyIiwid2Vla0lkIiwicG9zaXRpb24iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./src/lib/services.ts\n"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFeed: () => (/* binding */ getFeed),\n/* harmony export */ getIngestionStatus: () => (/* binding */ getIngestionStatus),\n/* harmony export */ getLeaderboard: () => (/* binding */ getLeaderboard),\n/* harmony export */ patchCurriculumWeekOrder: () => (/* binding */ patchCurriculumWeekOrder),\n/* harmony export */ postComplete: () => (/* binding */ postComplete),\n/* harmony export */ postCurriculumConfirm: () => (/* binding */ postCurriculumConfirm),\n/* harmony export */ postGenerateAll: () => (/* binding */ postGenerateAll),\n/* harmony export */ postIngest: () => (/* binding */ postIngest)\n/* harmony export */ });\nconst INGESTION_URL = \"http://localhost:3001\" ?? 0;\nconst GENERATION_URL = \"http://localhost:3002\" ?? 0;\nconst CURRICULUM_URL = \"http://localhost:3003\" ?? 0;\nconst PROGRESS_URL = \"http://localhost:3005\" ?? 0;\nasync function handleResponse(res) {\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(`HTTP ${res.status}: ${text}`);\n }\n return res.json();\n}\nasync function postIngest(payload) {\n const res = await fetch(`${INGESTION_URL}/ingest`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getIngestionStatus(jobId) {\n const res = await fetch(`${INGESTION_URL}/ingest/status/${encodeURIComponent(jobId)}`);\n return handleResponse(res);\n}\nasync function postGenerateAll(themeId) {\n const res = await fetch(`${GENERATION_URL}/generate`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n themeId\n })\n });\n const data = await handleResponse(res);\n return {\n queued: data.totalItems\n };\n}\nasync function postComplete(payload) {\n const res = await fetch(`${PROGRESS_URL}/complete`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getLeaderboard() {\n const res = await fetch(`${PROGRESS_URL}/leaderboard`);\n return handleResponse(res);\n}\nasync function getFeed() {\n const res = await fetch(`${PROGRESS_URL}/feed`);\n return handleResponse(res);\n}\nasync function postCurriculumConfirm(versionId) {\n const res = await fetch(`${CURRICULUM_URL}/curriculum/versions/${encodeURIComponent(versionId)}/confirm`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(`HTTP ${res.status}: ${text}`);\n }\n}\nasync function patchCurriculumWeekOrder(weekId, position) {\n const res = await fetch(`${CURRICULUM_URL}/curriculum/weeks/${encodeURIComponent(weekId)}/order`, {\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n position\n })\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(`HTTP ${res.status}: ${text}`);\n }\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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LG1CQUFtQlksUUFBUSxNQUFNLENBQUMsRUFDeEU7UUFDRW5CLFFBQVE7UUFDUkMsU0FBUztZQUFFLGdCQUFnQjtRQUFtQjtRQUM5Q0MsTUFBTUMsS0FBS0MsU0FBUyxDQUFDO1lBQUVnQjtRQUFTO0lBQ2xDO0lBRUYsSUFBSSxDQUFDL0IsSUFBSUMsRUFBRSxFQUFFO1FBQ1gsTUFBTUMsT0FBTyxNQUFNRixJQUFJRSxJQUFJLEdBQUdDLEtBQUssQ0FBQyxJQUFNSCxJQUFJSSxVQUFVO1FBQ3hELE1BQU0sSUFBSUMsTUFBTSxDQUFDLEtBQUssRUFBRUwsSUFBSU0sTUFBTSxDQUFDLEVBQUUsRUFBRUosS0FBSyxDQUFDO0lBQy9DO0FBQ0YiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9sZWFybmluZy1wbGF0Zm9ybS1mcm9udGVuZC8uL3NyYy9saWIvc2VydmljZXMudHM/MDcwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIEluZ2VzdGlvbkpvYlN0YXR1cyxcbiAgQ29tcGxldGVQYXlsb2FkLFxuICBDb21wbGV0ZVJlc3BvbnNlLFxuICBMZWFkZXJib2FyZEVudHJ5LFxuICBGZWVkRW50cnksXG59IGZyb20gJ0AvdHlwZXMnXG5cbmNvbnN0IElOR0VTVElPTl9VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19JTkdFU1RJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDEnXG5jb25zdCBHRU5FUkFUSU9OX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0dFTkVSQVRJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDInXG5jb25zdCBDVVJSSUNVTFVNX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDMnXG5jb25zdCBQUk9HUkVTU19VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19QUk9HUkVTU19VUkwgPz8gJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwNSdcblxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlUmVzcG9uc2U8VD4ocmVzOiBSZXNwb25zZSk6IFByb21pc2U8VD4ge1xuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxuICByZXR1cm4gcmVzLmpzb24oKSBhcyBQcm9taXNlPFQ+XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0SW5nZXN0KHBheWxvYWQ6IHtcbiAgZG9jdW1lbnRJZDogc3RyaW5nXG4gIGZpbGVuYW1lOiBzdHJpbmdcbiAgZm9ybWF0OiAncGRmJyB8ICdtZCcgfCAndHh0J1xuICBmaWxlVXJsOiBzdHJpbmdcbn0pOiBQcm9taXNlPHsgam9iSWQ6IHN0cmluZyB9PiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdGAsIHtcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICBib2R5OiBKU09OLnN0cmluZ2lmeShwYXlsb2FkKSxcbiAgfSlcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPHsgam9iSWQ6IHN0cmluZyB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRJbmdlc3Rpb25TdGF0dXMoam9iSWQ6IHN0cmluZyk6IFByb21pc2U8SW5nZXN0aW9uSm9iU3RhdHVzPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdC9zdGF0dXMvJHtlbmNvZGVVUklDb21wb25lbnQoam9iSWQpfWApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxJbmdlc3Rpb25Kb2JTdGF0dXM+KHJlcylcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHBvc3RHZW5lcmF0ZUFsbCh0aGVtZUlkOiBzdHJpbmcpOiBQcm9taXNlPHsgcXVldWVkOiBudW1iZXIgfT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtHRU5FUkFUSU9OX1VSTH0vZ2VuZXJhdGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkoeyB0aGVtZUlkIH0pLFxuICB9KVxuICBjb25zdCBkYXRhID0gYXdhaXQgaGFuZGxlUmVzcG9uc2U8eyBqb2JJZDogc3RyaW5nOyB0b3RhbEl0ZW1zOiBudW1iZXIgfT4ocmVzKVxuICByZXR1cm4geyBxdWV1ZWQ6IGRhdGEudG90YWxJdGVtcyB9XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0Q29tcGxldGUocGF5bG9hZDogQ29tcGxldGVQYXlsb2FkKTogUHJvbWlzZTxDb21wbGV0ZVJlc3BvbnNlPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vY29tcGxldGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkocGF5bG9hZCksXG4gIH0pXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxDb21wbGV0ZVJlc3BvbnNlPihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRMZWFkZXJib2FyZCgpOiBQcm9taXNlPExlYWRlcmJvYXJkRW50cnlbXT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtQUk9HUkVTU19VUkx9L2xlYWRlcmJvYXJkYClcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPExlYWRlcmJvYXJkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0RmVlZCgpOiBQcm9taXNlPEZlZWRFbnRyeVtdPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vZmVlZGApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxGZWVkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcG9zdEN1cnJpY3VsdW1Db25maXJtKHZlcnNpb25JZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3ZlcnNpb25zLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHZlcnNpb25JZCl9L2NvbmZpcm1gLFxuICAgIHtcbiAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyKHdlZWtJZDogc3RyaW5nLCBwb3NpdGlvbjogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3dlZWtzLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHdlZWtJZCl9L29yZGVyYCxcbiAgICB7XG4gICAgICBtZXRob2Q6ICdQQVRDSCcsXG4gICAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHsgcG9zaXRpb24gfSksXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuIl0sIm5hbWVzIjpbIklOR0VTVElPTl9VUkwiLCJwcm9jZXNzIiwiZW52IiwiTkVYVF9QVUJMSUNfSU5HRVNUSU9OX1VSTCIsIkdFTkVSQVRJT05fVVJMIiwiTkVYVF9QVUJMSUNfR0VORVJBVElPTl9VUkwiLCJDVVJSSUNVTFVNX1VSTCIsIk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMIiwiUFJPR1JFU1NfVVJMIiwiTkVYVF9QVUJMSUNfUFJPR1JFU1NfVVJMIiwiaGFuZGxlUmVzcG9uc2UiLCJyZXMiLCJvayIsInRleHQiLCJjYXRjaCIsInN0YXR1c1RleHQiLCJFcnJvciIsInN0YXR1cyIsImpzb24iLCJwb3N0SW5nZXN0IiwicGF5bG9hZCIsImZldGNoIiwibWV0aG9kIiwiaGVhZGVycyIsImJvZHkiLCJKU09OIiwic3RyaW5naWZ5IiwiZ2V0SW5nZXN0aW9uU3RhdHVzIiwiam9iSWQiLCJlbmNvZGVVUklDb21wb25lbnQiLCJwb3N0R2VuZXJhdGVBbGwiLCJ0aGVtZUlkIiwiZGF0YSIsInF1ZXVlZCIsInRvdGFsSXRlbXMiLCJwb3N0Q29tcGxldGUiLCJnZXRMZWFkZXJib2FyZCIsImdldEZlZWQiLCJwb3N0Q3VycmljdWx1bUNvbmZpcm0iLCJ2ZXJzaW9uSWQiLCJwYXRjaEN1cnJpY3VsdW1XZWVrT3JkZXIiLCJ3ZWVrSWQiLCJwb3NpdGlvbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./src/lib/services.ts\n"); /***/ }), diff --git a/app/frontend/.next/server/app/app/profile/page.js b/app/frontend/.next/server/app/app/profile/page.js index a52a703..db8b99d 100644 --- a/app/frontend/.next/server/app/app/profile/page.js +++ b/app/frontend/.next/server/app/app/profile/page.js @@ -246,7 +246,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFeed: () => (/* binding */ getFeed),\n/* harmony export */ getIngestionStatus: () => (/* binding */ getIngestionStatus),\n/* harmony export */ getLeaderboard: () => (/* binding */ getLeaderboard),\n/* harmony export */ patchCurriculumWeekOrder: () => (/* binding */ patchCurriculumWeekOrder),\n/* harmony export */ postComplete: () => (/* binding */ postComplete),\n/* harmony export */ postCurriculumConfirm: () => (/* binding */ postCurriculumConfirm),\n/* harmony export */ postGenerateAll: () => (/* binding */ postGenerateAll),\n/* harmony export */ postIngest: () => (/* binding */ postIngest)\n/* harmony export */ });\nconst INGESTION_URL = \"http://localhost:3001\" ?? 0;\nconst GENERATION_URL = \"http://localhost:3002\" ?? 0;\nconst CURRICULUM_URL = \"http://localhost:3003\" ?? 0;\nconst PROGRESS_URL = \"http://localhost:3005\" ?? 0;\nasync function handleResponse(res) {\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(`HTTP ${res.status}: ${text}`);\n }\n return res.json();\n}\nasync function postIngest(payload) {\n const res = await fetch(`${INGESTION_URL}/ingest`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getIngestionStatus(jobId) {\n const res = await fetch(`${INGESTION_URL}/ingest/status/${encodeURIComponent(jobId)}`);\n return handleResponse(res);\n}\nasync function postGenerateAll(themeId) {\n const res = await fetch(`${GENERATION_URL}/generate/theme/${encodeURIComponent(themeId)}`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n return handleResponse(res);\n}\nasync function postComplete(payload) {\n const res = await fetch(`${PROGRESS_URL}/complete`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getLeaderboard() {\n const res = await fetch(`${PROGRESS_URL}/leaderboard`);\n return handleResponse(res);\n}\nasync function getFeed() {\n const res = await fetch(`${PROGRESS_URL}/feed`);\n return handleResponse(res);\n}\nasync function postCurriculumConfirm(versionId) {\n const res = await fetch(`${CURRICULUM_URL}/curriculum/versions/${encodeURIComponent(versionId)}/confirm`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(`HTTP ${res.status}: ${text}`);\n }\n}\nasync function patchCurriculumWeekOrder(weekId, position) {\n const res = await fetch(`${CURRICULUM_URL}/curriculum/weeks/${encodeURIComponent(weekId)}/order`, {\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n position\n })\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(`HTTP ${res.status}: ${text}`);\n }\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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UUFDOUNDLE1BQU1DLEtBQUtDLFNBQVMsQ0FBQztZQUFFYTtRQUFTO0lBQ2xDO0lBRUYsSUFBSSxDQUFDNUIsSUFBSUMsRUFBRSxFQUFFO1FBQ1gsTUFBTUMsT0FBTyxNQUFNRixJQUFJRSxJQUFJLEdBQUdDLEtBQUssQ0FBQyxJQUFNSCxJQUFJSSxVQUFVO1FBQ3hELE1BQU0sSUFBSUMsTUFBTSxDQUFDLEtBQUssRUFBRUwsSUFBSU0sTUFBTSxDQUFDLEVBQUUsRUFBRUosS0FBSyxDQUFDO0lBQy9DO0FBQ0YiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9sZWFybmluZy1wbGF0Zm9ybS1mcm9udGVuZC8uL3NyYy9saWIvc2VydmljZXMudHM/MDcwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIEluZ2VzdGlvbkpvYlN0YXR1cyxcbiAgQ29tcGxldGVQYXlsb2FkLFxuICBDb21wbGV0ZVJlc3BvbnNlLFxuICBMZWFkZXJib2FyZEVudHJ5LFxuICBGZWVkRW50cnksXG59IGZyb20gJ0AvdHlwZXMnXG5cbmNvbnN0IElOR0VTVElPTl9VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19JTkdFU1RJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDEnXG5jb25zdCBHRU5FUkFUSU9OX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0dFTkVSQVRJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDInXG5jb25zdCBDVVJSSUNVTFVNX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDMnXG5jb25zdCBQUk9HUkVTU19VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19QUk9HUkVTU19VUkwgPz8gJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwNSdcblxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlUmVzcG9uc2U8VD4ocmVzOiBSZXNwb25zZSk6IFByb21pc2U8VD4ge1xuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxuICByZXR1cm4gcmVzLmpzb24oKSBhcyBQcm9taXNlPFQ+XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0SW5nZXN0KHBheWxvYWQ6IHtcbiAgZG9jdW1lbnRJZDogc3RyaW5nXG4gIGZpbGVuYW1lOiBzdHJpbmdcbiAgZm9ybWF0OiAncGRmJyB8ICdtZCcgfCAndHh0J1xuICBmaWxlVXJsOiBzdHJpbmdcbn0pOiBQcm9taXNlPHsgam9iSWQ6IHN0cmluZyB9PiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdGAsIHtcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICBib2R5OiBKU09OLnN0cmluZ2lmeShwYXlsb2FkKSxcbiAgfSlcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPHsgam9iSWQ6IHN0cmluZyB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRJbmdlc3Rpb25TdGF0dXMoam9iSWQ6IHN0cmluZyk6IFByb21pc2U8SW5nZXN0aW9uSm9iU3RhdHVzPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdC9zdGF0dXMvJHtlbmNvZGVVUklDb21wb25lbnQoam9iSWQpfWApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxJbmdlc3Rpb25Kb2JTdGF0dXM+KHJlcylcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHBvc3RHZW5lcmF0ZUFsbCh0aGVtZUlkOiBzdHJpbmcpOiBQcm9taXNlPHsgcXVldWVkOiBudW1iZXIgfT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtHRU5FUkFUSU9OX1VSTH0vZ2VuZXJhdGUvdGhlbWUvJHtlbmNvZGVVUklDb21wb25lbnQodGhlbWVJZCl9YCwge1xuICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgIGhlYWRlcnM6IHsgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyB9LFxuICB9KVxuICByZXR1cm4gaGFuZGxlUmVzcG9uc2U8eyBxdWV1ZWQ6IG51bWJlciB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0Q29tcGxldGUocGF5bG9hZDogQ29tcGxldGVQYXlsb2FkKTogUHJvbWlzZTxDb21wbGV0ZVJlc3BvbnNlPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vY29tcGxldGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkocGF5bG9hZCksXG4gIH0pXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxDb21wbGV0ZVJlc3BvbnNlPihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRMZWFkZXJib2FyZCgpOiBQcm9taXNlPExlYWRlcmJvYXJkRW50cnlbXT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtQUk9HUkVTU19VUkx9L2xlYWRlcmJvYXJkYClcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPExlYWRlcmJvYXJkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0RmVlZCgpOiBQcm9taXNlPEZlZWRFbnRyeVtdPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vZmVlZGApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxGZWVkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcG9zdEN1cnJpY3VsdW1Db25maXJtKHZlcnNpb25JZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3ZlcnNpb25zLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHZlcnNpb25JZCl9L2NvbmZpcm1gLFxuICAgIHtcbiAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyKHdlZWtJZDogc3RyaW5nLCBwb3NpdGlvbjogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3dlZWtzLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHdlZWtJZCl9L29yZGVyYCxcbiAgICB7XG4gICAgICBtZXRob2Q6ICdQQVRDSCcsXG4gICAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHsgcG9zaXRpb24gfSksXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuIl0sIm5hbWVzIjpbIklOR0VTVElPTl9VUkwiLCJwcm9jZXNzIiwiZW52IiwiTkVYVF9QVUJMSUNfSU5HRVNUSU9OX1VSTCIsIkdFTkVSQVRJT05fVVJMIiwiTkVYVF9QVUJMSUNfR0VORVJBVElPTl9VUkwiLCJDVVJSSUNVTFVNX1VSTCIsIk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMIiwiUFJPR1JFU1NfVVJMIiwiTkVYVF9QVUJMSUNfUFJPR1JFU1NfVVJMIiwiaGFuZGxlUmVzcG9uc2UiLCJyZXMiLCJvayIsInRleHQiLCJjYXRjaCIsInN0YXR1c1RleHQiLCJFcnJvciIsInN0YXR1cyIsImpzb24iLCJwb3N0SW5nZXN0IiwicGF5bG9hZCIsImZldGNoIiwibWV0aG9kIiwiaGVhZGVycyIsImJvZHkiLCJKU09OIiwic3RyaW5naWZ5IiwiZ2V0SW5nZXN0aW9uU3RhdHVzIiwiam9iSWQiLCJlbmNvZGVVUklDb21wb25lbnQiLCJwb3N0R2VuZXJhdGVBbGwiLCJ0aGVtZUlkIiwicG9zdENvbXBsZXRlIiwiZ2V0TGVhZGVyYm9hcmQiLCJnZXRGZWVkIiwicG9zdEN1cnJpY3VsdW1Db25maXJtIiwidmVyc2lvbklkIiwicGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyIiwid2Vla0lkIiwicG9zaXRpb24iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./src/lib/services.ts\n"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFeed: () => (/* binding */ getFeed),\n/* harmony export */ getIngestionStatus: () => (/* binding */ getIngestionStatus),\n/* harmony export */ getLeaderboard: () => (/* binding */ getLeaderboard),\n/* harmony export */ patchCurriculumWeekOrder: () => (/* binding */ patchCurriculumWeekOrder),\n/* harmony export */ postComplete: () => (/* binding */ postComplete),\n/* harmony export */ postCurriculumConfirm: () => (/* binding */ postCurriculumConfirm),\n/* harmony export */ postGenerateAll: () => (/* binding */ postGenerateAll),\n/* harmony export */ postIngest: () => (/* binding */ postIngest)\n/* harmony export */ });\nconst INGESTION_URL = \"http://localhost:3001\" ?? 0;\nconst GENERATION_URL = \"http://localhost:3002\" ?? 0;\nconst CURRICULUM_URL = \"http://localhost:3003\" ?? 0;\nconst PROGRESS_URL = \"http://localhost:3005\" ?? 0;\nasync function handleResponse(res) {\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(`HTTP ${res.status}: ${text}`);\n }\n return res.json();\n}\nasync function postIngest(payload) {\n const res = await fetch(`${INGESTION_URL}/ingest`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getIngestionStatus(jobId) {\n const res = await fetch(`${INGESTION_URL}/ingest/status/${encodeURIComponent(jobId)}`);\n return handleResponse(res);\n}\nasync function postGenerateAll(themeId) {\n const res = await fetch(`${GENERATION_URL}/generate`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n themeId\n })\n });\n const data = await handleResponse(res);\n return {\n queued: data.totalItems\n };\n}\nasync function postComplete(payload) {\n const res = await fetch(`${PROGRESS_URL}/complete`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getLeaderboard() {\n const res = await fetch(`${PROGRESS_URL}/leaderboard`);\n return handleResponse(res);\n}\nasync function getFeed() {\n const res = await fetch(`${PROGRESS_URL}/feed`);\n return handleResponse(res);\n}\nasync function postCurriculumConfirm(versionId) {\n const res = await fetch(`${CURRICULUM_URL}/curriculum/versions/${encodeURIComponent(versionId)}/confirm`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(`HTTP ${res.status}: ${text}`);\n }\n}\nasync function patchCurriculumWeekOrder(weekId, position) {\n const res = await fetch(`${CURRICULUM_URL}/curriculum/weeks/${encodeURIComponent(weekId)}/order`, {\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n position\n })\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(`HTTP ${res.status}: ${text}`);\n }\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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LG1CQUFtQlksUUFBUSxNQUFNLENBQUMsRUFDeEU7UUFDRW5CLFFBQVE7UUFDUkMsU0FBUztZQUFFLGdCQUFnQjtRQUFtQjtRQUM5Q0MsTUFBTUMsS0FBS0MsU0FBUyxDQUFDO1lBQUVnQjtRQUFTO0lBQ2xDO0lBRUYsSUFBSSxDQUFDL0IsSUFBSUMsRUFBRSxFQUFFO1FBQ1gsTUFBTUMsT0FBTyxNQUFNRixJQUFJRSxJQUFJLEdBQUdDLEtBQUssQ0FBQyxJQUFNSCxJQUFJSSxVQUFVO1FBQ3hELE1BQU0sSUFBSUMsTUFBTSxDQUFDLEtBQUssRUFBRUwsSUFBSU0sTUFBTSxDQUFDLEVBQUUsRUFBRUosS0FBSyxDQUFDO0lBQy9DO0FBQ0YiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9sZWFybmluZy1wbGF0Zm9ybS1mcm9udGVuZC8uL3NyYy9saWIvc2VydmljZXMudHM/MDcwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIEluZ2VzdGlvbkpvYlN0YXR1cyxcbiAgQ29tcGxldGVQYXlsb2FkLFxuICBDb21wbGV0ZVJlc3BvbnNlLFxuICBMZWFkZXJib2FyZEVudHJ5LFxuICBGZWVkRW50cnksXG59IGZyb20gJ0AvdHlwZXMnXG5cbmNvbnN0IElOR0VTVElPTl9VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19JTkdFU1RJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDEnXG5jb25zdCBHRU5FUkFUSU9OX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0dFTkVSQVRJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDInXG5jb25zdCBDVVJSSUNVTFVNX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDMnXG5jb25zdCBQUk9HUkVTU19VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19QUk9HUkVTU19VUkwgPz8gJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwNSdcblxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlUmVzcG9uc2U8VD4ocmVzOiBSZXNwb25zZSk6IFByb21pc2U8VD4ge1xuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxuICByZXR1cm4gcmVzLmpzb24oKSBhcyBQcm9taXNlPFQ+XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0SW5nZXN0KHBheWxvYWQ6IHtcbiAgZG9jdW1lbnRJZDogc3RyaW5nXG4gIGZpbGVuYW1lOiBzdHJpbmdcbiAgZm9ybWF0OiAncGRmJyB8ICdtZCcgfCAndHh0J1xuICBmaWxlVXJsOiBzdHJpbmdcbn0pOiBQcm9taXNlPHsgam9iSWQ6IHN0cmluZyB9PiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdGAsIHtcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICBib2R5OiBKU09OLnN0cmluZ2lmeShwYXlsb2FkKSxcbiAgfSlcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPHsgam9iSWQ6IHN0cmluZyB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRJbmdlc3Rpb25TdGF0dXMoam9iSWQ6IHN0cmluZyk6IFByb21pc2U8SW5nZXN0aW9uSm9iU3RhdHVzPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdC9zdGF0dXMvJHtlbmNvZGVVUklDb21wb25lbnQoam9iSWQpfWApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxJbmdlc3Rpb25Kb2JTdGF0dXM+KHJlcylcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHBvc3RHZW5lcmF0ZUFsbCh0aGVtZUlkOiBzdHJpbmcpOiBQcm9taXNlPHsgcXVldWVkOiBudW1iZXIgfT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtHRU5FUkFUSU9OX1VSTH0vZ2VuZXJhdGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkoeyB0aGVtZUlkIH0pLFxuICB9KVxuICBjb25zdCBkYXRhID0gYXdhaXQgaGFuZGxlUmVzcG9uc2U8eyBqb2JJZDogc3RyaW5nOyB0b3RhbEl0ZW1zOiBudW1iZXIgfT4ocmVzKVxuICByZXR1cm4geyBxdWV1ZWQ6IGRhdGEudG90YWxJdGVtcyB9XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0Q29tcGxldGUocGF5bG9hZDogQ29tcGxldGVQYXlsb2FkKTogUHJvbWlzZTxDb21wbGV0ZVJlc3BvbnNlPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vY29tcGxldGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkocGF5bG9hZCksXG4gIH0pXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxDb21wbGV0ZVJlc3BvbnNlPihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRMZWFkZXJib2FyZCgpOiBQcm9taXNlPExlYWRlcmJvYXJkRW50cnlbXT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtQUk9HUkVTU19VUkx9L2xlYWRlcmJvYXJkYClcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPExlYWRlcmJvYXJkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0RmVlZCgpOiBQcm9taXNlPEZlZWRFbnRyeVtdPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vZmVlZGApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxGZWVkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcG9zdEN1cnJpY3VsdW1Db25maXJtKHZlcnNpb25JZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3ZlcnNpb25zLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHZlcnNpb25JZCl9L2NvbmZpcm1gLFxuICAgIHtcbiAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyKHdlZWtJZDogc3RyaW5nLCBwb3NpdGlvbjogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3dlZWtzLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHdlZWtJZCl9L29yZGVyYCxcbiAgICB7XG4gICAgICBtZXRob2Q6ICdQQVRDSCcsXG4gICAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHsgcG9zaXRpb24gfSksXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuIl0sIm5hbWVzIjpbIklOR0VTVElPTl9VUkwiLCJwcm9jZXNzIiwiZW52IiwiTkVYVF9QVUJMSUNfSU5HRVNUSU9OX1VSTCIsIkdFTkVSQVRJT05fVVJMIiwiTkVYVF9QVUJMSUNfR0VORVJBVElPTl9VUkwiLCJDVVJSSUNVTFVNX1VSTCIsIk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMIiwiUFJPR1JFU1NfVVJMIiwiTkVYVF9QVUJMSUNfUFJPR1JFU1NfVVJMIiwiaGFuZGxlUmVzcG9uc2UiLCJyZXMiLCJvayIsInRleHQiLCJjYXRjaCIsInN0YXR1c1RleHQiLCJFcnJvciIsInN0YXR1cyIsImpzb24iLCJwb3N0SW5nZXN0IiwicGF5bG9hZCIsImZldGNoIiwibWV0aG9kIiwiaGVhZGVycyIsImJvZHkiLCJKU09OIiwic3RyaW5naWZ5IiwiZ2V0SW5nZXN0aW9uU3RhdHVzIiwiam9iSWQiLCJlbmNvZGVVUklDb21wb25lbnQiLCJwb3N0R2VuZXJhdGVBbGwiLCJ0aGVtZUlkIiwiZGF0YSIsInF1ZXVlZCIsInRvdGFsSXRlbXMiLCJwb3N0Q29tcGxldGUiLCJnZXRMZWFkZXJib2FyZCIsImdldEZlZWQiLCJwb3N0Q3VycmljdWx1bUNvbmZpcm0iLCJ2ZXJzaW9uSWQiLCJwYXRjaEN1cnJpY3VsdW1XZWVrT3JkZXIiLCJ3ZWVrSWQiLCJwb3NpdGlvbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./src/lib/services.ts\n"); /***/ }), @@ -326,7 +326,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac var __webpack_require__ = require("../../../webpack-runtime.js"); __webpack_require__.C(exports); var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId)) -var __webpack_exports__ = __webpack_require__.X(0, ["vendor-chunks/next","vendor-chunks/pocketbase","vendor-chunks/@swc"], () => (__webpack_exec__("(rsc)/./node_modules/next/dist/build/webpack/loaders/next-app-loader.js?name=app%2Fapp%2Fprofile%2Fpage&page=%2Fapp%2Fprofile%2Fpage&appPaths=%2Fapp%2Fprofile%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fprofile%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"))); +var __webpack_exports__ = __webpack_require__.X(0, ["vendor-chunks/next","vendor-chunks/@swc","vendor-chunks/pocketbase"], () => (__webpack_exec__("(rsc)/./node_modules/next/dist/build/webpack/loaders/next-app-loader.js?name=app%2Fapp%2Fprofile%2Fpage&page=%2Fapp%2Fprofile%2Fpage&appPaths=%2Fapp%2Fprofile%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fprofile%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"))); module.exports = __webpack_exports__; })(); \ No newline at end of file diff --git a/app/frontend/.next/server/app/app/session/page.js b/app/frontend/.next/server/app/app/session/page.js index 61b2bb6..6871924 100644 --- a/app/frontend/.next/server/app/app/session/page.js +++ b/app/frontend/.next/server/app/app/session/page.js @@ -367,7 +367,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFeed: () => (/* binding */ getFeed),\n/* harmony export */ getIngestionStatus: () => (/* binding */ getIngestionStatus),\n/* harmony export */ getLeaderboard: () => (/* binding */ getLeaderboard),\n/* harmony export */ patchCurriculumWeekOrder: () => (/* binding */ patchCurriculumWeekOrder),\n/* harmony export */ postComplete: () => (/* binding */ postComplete),\n/* harmony export */ postCurriculumConfirm: () => (/* binding */ postCurriculumConfirm),\n/* harmony export */ postGenerateAll: () => (/* binding */ postGenerateAll),\n/* harmony export */ postIngest: () => (/* binding */ postIngest)\n/* harmony export */ });\nconst INGESTION_URL = \"http://localhost:3001\" ?? 0;\nconst GENERATION_URL = \"http://localhost:3002\" ?? 0;\nconst CURRICULUM_URL = \"http://localhost:3003\" ?? 0;\nconst PROGRESS_URL = \"http://localhost:3005\" ?? 0;\nasync function handleResponse(res) {\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(`HTTP ${res.status}: ${text}`);\n }\n return res.json();\n}\nasync function postIngest(payload) {\n const res = await fetch(`${INGESTION_URL}/ingest`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getIngestionStatus(jobId) {\n const res = await fetch(`${INGESTION_URL}/ingest/status/${encodeURIComponent(jobId)}`);\n return handleResponse(res);\n}\nasync function postGenerateAll(themeId) {\n const res = await fetch(`${GENERATION_URL}/generate/theme/${encodeURIComponent(themeId)}`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n return handleResponse(res);\n}\nasync function postComplete(payload) {\n const res = await fetch(`${PROGRESS_URL}/complete`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getLeaderboard() {\n const res = await fetch(`${PROGRESS_URL}/leaderboard`);\n return handleResponse(res);\n}\nasync function getFeed() {\n const res = await fetch(`${PROGRESS_URL}/feed`);\n return handleResponse(res);\n}\nasync function postCurriculumConfirm(versionId) {\n const res = await fetch(`${CURRICULUM_URL}/curriculum/versions/${encodeURIComponent(versionId)}/confirm`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(`HTTP ${res.status}: ${text}`);\n }\n}\nasync function patchCurriculumWeekOrder(weekId, position) {\n const res = await fetch(`${CURRICULUM_URL}/curriculum/weeks/${encodeURIComponent(weekId)}/order`, {\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n position\n })\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(`HTTP ${res.status}: ${text}`);\n }\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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UUFDOUNDLE1BQU1DLEtBQUtDLFNBQVMsQ0FBQztZQUFFYTtRQUFTO0lBQ2xDO0lBRUYsSUFBSSxDQUFDNUIsSUFBSUMsRUFBRSxFQUFFO1FBQ1gsTUFBTUMsT0FBTyxNQUFNRixJQUFJRSxJQUFJLEdBQUdDLEtBQUssQ0FBQyxJQUFNSCxJQUFJSSxVQUFVO1FBQ3hELE1BQU0sSUFBSUMsTUFBTSxDQUFDLEtBQUssRUFBRUwsSUFBSU0sTUFBTSxDQUFDLEVBQUUsRUFBRUosS0FBSyxDQUFDO0lBQy9DO0FBQ0YiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9sZWFybmluZy1wbGF0Zm9ybS1mcm9udGVuZC8uL3NyYy9saWIvc2VydmljZXMudHM/MDcwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIEluZ2VzdGlvbkpvYlN0YXR1cyxcbiAgQ29tcGxldGVQYXlsb2FkLFxuICBDb21wbGV0ZVJlc3BvbnNlLFxuICBMZWFkZXJib2FyZEVudHJ5LFxuICBGZWVkRW50cnksXG59IGZyb20gJ0AvdHlwZXMnXG5cbmNvbnN0IElOR0VTVElPTl9VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19JTkdFU1RJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDEnXG5jb25zdCBHRU5FUkFUSU9OX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0dFTkVSQVRJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDInXG5jb25zdCBDVVJSSUNVTFVNX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDMnXG5jb25zdCBQUk9HUkVTU19VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19QUk9HUkVTU19VUkwgPz8gJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwNSdcblxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlUmVzcG9uc2U8VD4ocmVzOiBSZXNwb25zZSk6IFByb21pc2U8VD4ge1xuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxuICByZXR1cm4gcmVzLmpzb24oKSBhcyBQcm9taXNlPFQ+XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0SW5nZXN0KHBheWxvYWQ6IHtcbiAgZG9jdW1lbnRJZDogc3RyaW5nXG4gIGZpbGVuYW1lOiBzdHJpbmdcbiAgZm9ybWF0OiAncGRmJyB8ICdtZCcgfCAndHh0J1xuICBmaWxlVXJsOiBzdHJpbmdcbn0pOiBQcm9taXNlPHsgam9iSWQ6IHN0cmluZyB9PiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdGAsIHtcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICBib2R5OiBKU09OLnN0cmluZ2lmeShwYXlsb2FkKSxcbiAgfSlcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPHsgam9iSWQ6IHN0cmluZyB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRJbmdlc3Rpb25TdGF0dXMoam9iSWQ6IHN0cmluZyk6IFByb21pc2U8SW5nZXN0aW9uSm9iU3RhdHVzPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdC9zdGF0dXMvJHtlbmNvZGVVUklDb21wb25lbnQoam9iSWQpfWApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxJbmdlc3Rpb25Kb2JTdGF0dXM+KHJlcylcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHBvc3RHZW5lcmF0ZUFsbCh0aGVtZUlkOiBzdHJpbmcpOiBQcm9taXNlPHsgcXVldWVkOiBudW1iZXIgfT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtHRU5FUkFUSU9OX1VSTH0vZ2VuZXJhdGUvdGhlbWUvJHtlbmNvZGVVUklDb21wb25lbnQodGhlbWVJZCl9YCwge1xuICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgIGhlYWRlcnM6IHsgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyB9LFxuICB9KVxuICByZXR1cm4gaGFuZGxlUmVzcG9uc2U8eyBxdWV1ZWQ6IG51bWJlciB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0Q29tcGxldGUocGF5bG9hZDogQ29tcGxldGVQYXlsb2FkKTogUHJvbWlzZTxDb21wbGV0ZVJlc3BvbnNlPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vY29tcGxldGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkocGF5bG9hZCksXG4gIH0pXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxDb21wbGV0ZVJlc3BvbnNlPihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRMZWFkZXJib2FyZCgpOiBQcm9taXNlPExlYWRlcmJvYXJkRW50cnlbXT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtQUk9HUkVTU19VUkx9L2xlYWRlcmJvYXJkYClcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPExlYWRlcmJvYXJkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0RmVlZCgpOiBQcm9taXNlPEZlZWRFbnRyeVtdPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vZmVlZGApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxGZWVkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcG9zdEN1cnJpY3VsdW1Db25maXJtKHZlcnNpb25JZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3ZlcnNpb25zLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHZlcnNpb25JZCl9L2NvbmZpcm1gLFxuICAgIHtcbiAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyKHdlZWtJZDogc3RyaW5nLCBwb3NpdGlvbjogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3dlZWtzLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHdlZWtJZCl9L29yZGVyYCxcbiAgICB7XG4gICAgICBtZXRob2Q6ICdQQVRDSCcsXG4gICAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHsgcG9zaXRpb24gfSksXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuIl0sIm5hbWVzIjpbIklOR0VTVElPTl9VUkwiLCJwcm9jZXNzIiwiZW52IiwiTkVYVF9QVUJMSUNfSU5HRVNUSU9OX1VSTCIsIkdFTkVSQVRJT05fVVJMIiwiTkVYVF9QVUJMSUNfR0VORVJBVElPTl9VUkwiLCJDVVJSSUNVTFVNX1VSTCIsIk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMIiwiUFJPR1JFU1NfVVJMIiwiTkVYVF9QVUJMSUNfUFJPR1JFU1NfVVJMIiwiaGFuZGxlUmVzcG9uc2UiLCJyZXMiLCJvayIsInRleHQiLCJjYXRjaCIsInN0YXR1c1RleHQiLCJFcnJvciIsInN0YXR1cyIsImpzb24iLCJwb3N0SW5nZXN0IiwicGF5bG9hZCIsImZldGNoIiwibWV0aG9kIiwiaGVhZGVycyIsImJvZHkiLCJKU09OIiwic3RyaW5naWZ5IiwiZ2V0SW5nZXN0aW9uU3RhdHVzIiwiam9iSWQiLCJlbmNvZGVVUklDb21wb25lbnQiLCJwb3N0R2VuZXJhdGVBbGwiLCJ0aGVtZUlkIiwicG9zdENvbXBsZXRlIiwiZ2V0TGVhZGVyYm9hcmQiLCJnZXRGZWVkIiwicG9zdEN1cnJpY3VsdW1Db25maXJtIiwidmVyc2lvbklkIiwicGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyIiwid2Vla0lkIiwicG9zaXRpb24iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./src/lib/services.ts\n"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFeed: () => (/* binding */ getFeed),\n/* harmony export */ getIngestionStatus: () => (/* binding */ getIngestionStatus),\n/* harmony export */ getLeaderboard: () => (/* binding */ getLeaderboard),\n/* harmony export */ patchCurriculumWeekOrder: () => (/* binding */ patchCurriculumWeekOrder),\n/* harmony export */ postComplete: () => (/* binding */ postComplete),\n/* harmony export */ postCurriculumConfirm: () => (/* binding */ postCurriculumConfirm),\n/* harmony export */ postGenerateAll: () => (/* binding */ postGenerateAll),\n/* harmony export */ postIngest: () => (/* binding */ postIngest)\n/* harmony export */ });\nconst INGESTION_URL = \"http://localhost:3001\" ?? 0;\nconst GENERATION_URL = \"http://localhost:3002\" ?? 0;\nconst CURRICULUM_URL = \"http://localhost:3003\" ?? 0;\nconst PROGRESS_URL = \"http://localhost:3005\" ?? 0;\nasync function handleResponse(res) {\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(`HTTP ${res.status}: ${text}`);\n }\n return res.json();\n}\nasync function postIngest(payload) {\n const res = await fetch(`${INGESTION_URL}/ingest`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getIngestionStatus(jobId) {\n const res = await fetch(`${INGESTION_URL}/ingest/status/${encodeURIComponent(jobId)}`);\n return handleResponse(res);\n}\nasync function postGenerateAll(themeId) {\n const res = await fetch(`${GENERATION_URL}/generate`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n themeId\n })\n });\n const data = await handleResponse(res);\n return {\n queued: data.totalItems\n };\n}\nasync function postComplete(payload) {\n const res = await fetch(`${PROGRESS_URL}/complete`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getLeaderboard() {\n const res = await fetch(`${PROGRESS_URL}/leaderboard`);\n return handleResponse(res);\n}\nasync function getFeed() {\n const res = await fetch(`${PROGRESS_URL}/feed`);\n return handleResponse(res);\n}\nasync function postCurriculumConfirm(versionId) {\n const res = await fetch(`${CURRICULUM_URL}/curriculum/versions/${encodeURIComponent(versionId)}/confirm`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(`HTTP ${res.status}: ${text}`);\n }\n}\nasync function patchCurriculumWeekOrder(weekId, position) {\n const res = await fetch(`${CURRICULUM_URL}/curriculum/weeks/${encodeURIComponent(weekId)}/order`, {\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n position\n })\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(`HTTP ${res.status}: ${text}`);\n }\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9zcmMvbGliL3NlcnZpY2VzLnRzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBUUEsTUFBTUEsZ0JBQWdCQyx1QkFBcUMsSUFBSTtBQUMvRCxNQUFNRyxpQkFBaUJILHVCQUFzQyxJQUFJO0FBQ2pFLE1BQU1LLGlCQUFpQkwsdUJBQXNDLElBQUk7QUFDakUsTUFBTU8sZUFBZVAsdUJBQW9DLElBQUk7QUFFN0QsZUFBZVMsZUFBa0JDLEdBQWE7SUFDNUMsSUFBSSxDQUFDQSxJQUFJQyxFQUFFLEVBQUU7UUFDWCxNQUFNQyxPQUFPLE1BQU1GLElBQUlFLElBQUksR0FBR0MsS0FBSyxDQUFDLElBQU1ILElBQUlJLFVBQVU7UUFDeEQsTUFBTSxJQUFJQyxNQUFNLENBQUMsS0FBSyxFQUFFTCxJQUFJTSxNQUFNLENBQUMsRUFBRSxFQUFFSixLQUFLLENBQUM7SUFDL0M7SUFDQSxPQUFPRixJQUFJTyxJQUFJO0FBQ2pCO0FBRU8sZUFBZUMsV0FBV0MsT0FLaEM7SUFDQyxNQUFNVCxNQUFNLE1BQU1VLE1BQU0sQ0FBQyxFQUFFckIsY0FBYyxPQUFPLENBQUMsRUFBRTtRQUNqRHNCLFFBQVE7UUFDUkMsU0FBUztZQUFFLGdCQUFnQjtRQUFtQjtRQUM5Q0MsTUFBTUMsS0FBS0MsU0FBUyxDQUFDTjtJQUN2QjtJQUNBLE9BQU9WLGVBQWtDQztBQUMzQztBQUVPLGVBQWVnQixtQkFBbUJDLEtBQWE7SUFDcEQsTUFBTWpCLE1BQU0sTUFBTVUsTUFBTSxDQUFDLEVBQUVyQixjQUFjLGVBQWUsRUFBRTZCLG1CQUFtQkQsT0FBTyxDQUFDO0lBQ3JGLE9BQU9sQixlQUFtQ0M7QUFDNUM7QUFFTyxlQUFlbUIsZ0JBQWdCQyxPQUFlO0lBQ25ELE1BQU1wQixNQUFNLE1BQU1VLE1BQU0sQ0FBQyxFQUFFakIsZUFBZSxTQUFTLENBQUMsRUFBRTtRQUNwRGtCLFFBQVE7UUFDUkMsU0FBUztZQUFFLGdCQUFnQjtRQUFtQjtRQUM5Q0MsTUFBTUMsS0FBS0MsU0FBUyxDQUFDO1lBQUVLO1FBQVE7SUFDakM7SUFDQSxNQUFNQyxPQUFPLE1BQU10QixlQUFzREM7SUFDekUsT0FBTztRQUFFc0IsUUFBUUQsS0FBS0UsVUFBVTtJQUFDO0FBQ25DO0FBRU8sZUFBZUMsYUFBYWYsT0FBd0I7SUFDekQsTUFBTVQsTUFBTSxNQUFNVSxNQUFNLENBQUMsRUFBRWIsYUFBYSxTQUFTLENBQUMsRUFBRTtRQUNsRGMsUUFBUTtRQUNSQyxTQUFTO1lBQUUsZ0JBQWdCO1FBQW1CO1FBQzlDQyxNQUFNQyxLQUFLQyxTQUFTLENBQUNOO0lBQ3ZCO0lBQ0EsT0FBT1YsZUFBaUNDO0FBQzFDO0FBRU8sZUFBZXlCO0lBQ3BCLE1BQU16QixNQUFNLE1BQU1VLE1BQU0sQ0FBQyxFQUFFYixhQUFhLFlBQVksQ0FBQztJQUNyRCxPQUFPRSxlQUFtQ0M7QUFDNUM7QUFFTyxlQUFlMEI7SUFDcEIsTUFBTTFCLE1BQU0sTUFBTVUsTUFBTSxDQUFDLEVBQUViLGFBQWEsS0FBSyxDQUFDO0lBQzlDLE9BQU9FLGVBQTRCQztBQUNyQztBQUVPLGVBQWUyQixzQkFBc0JDLFNBQWlCO0lBQzNELE1BQU01QixNQUFNLE1BQU1VLE1BQ2hCLENBQUMsRUFBRWYsZUFBZSxxQkFBcUIsRUFBRXVCLG1CQUFtQlUsV0FBVyxRQUFRLENBQUMsRUFDaEY7UUFDRWpCLFFBQVE7UUFDUkMsU0FBUztZQUFFLGdCQUFnQjtRQUFtQjtJQUNoRDtJQUVGLElBQUksQ0FBQ1osSUFBSUMsRUFBRSxFQUFFO1FBQ1gsTUFBTUMsT0FBTyxNQUFNRixJQUFJRSxJQUFJLEdBQUdDLEtBQUssQ0FBQyxJQUFNSCxJQUFJSSxVQUFVO1FBQ3hELE1BQU0sSUFBSUMsTUFBTSxDQUFDLEtBQUssRUFBRUwsSUFBSU0sTUFBTSxDQUFDLEVBQUUsRUFBRUosS0FBSyxDQUFDO0lBQy9DO0FBQ0Y7QUFFTyxlQUFlMkIseUJBQXlCQyxNQUFjLEVBQUVDLFFBQWdCO0lBQzdFLE1BQU0vQixNQUFNLE1BQU1VLE1BQ2hCLENBQUMsRUFBRWYsZUFBZSxrQkFBa0IsRUFBRXVCLG1CQUFtQlksUUFBUSxNQUFNLENBQUMsRUFDeEU7UUFDRW5CLFFBQVE7UUFDUkMsU0FBUztZQUFFLGdCQUFnQjtRQUFtQjtRQUM5Q0MsTUFBTUMsS0FBS0MsU0FBUyxDQUFDO1lBQUVnQjtRQUFTO0lBQ2xDO0lBRUYsSUFBSSxDQUFDL0IsSUFBSUMsRUFBRSxFQUFFO1FBQ1gsTUFBTUMsT0FBTyxNQUFNRixJQUFJRSxJQUFJLEdBQUdDLEtBQUssQ0FBQyxJQUFNSCxJQUFJSSxVQUFVO1FBQ3hELE1BQU0sSUFBSUMsTUFBTSxDQUFDLEtBQUssRUFBRUwsSUFBSU0sTUFBTSxDQUFDLEVBQUUsRUFBRUosS0FBSyxDQUFDO0lBQy9DO0FBQ0YiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9sZWFybmluZy1wbGF0Zm9ybS1mcm9udGVuZC8uL3NyYy9saWIvc2VydmljZXMudHM/MDcwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIEluZ2VzdGlvbkpvYlN0YXR1cyxcbiAgQ29tcGxldGVQYXlsb2FkLFxuICBDb21wbGV0ZVJlc3BvbnNlLFxuICBMZWFkZXJib2FyZEVudHJ5LFxuICBGZWVkRW50cnksXG59IGZyb20gJ0AvdHlwZXMnXG5cbmNvbnN0IElOR0VTVElPTl9VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19JTkdFU1RJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDEnXG5jb25zdCBHRU5FUkFUSU9OX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0dFTkVSQVRJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDInXG5jb25zdCBDVVJSSUNVTFVNX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDMnXG5jb25zdCBQUk9HUkVTU19VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19QUk9HUkVTU19VUkwgPz8gJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwNSdcblxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlUmVzcG9uc2U8VD4ocmVzOiBSZXNwb25zZSk6IFByb21pc2U8VD4ge1xuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxuICByZXR1cm4gcmVzLmpzb24oKSBhcyBQcm9taXNlPFQ+XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0SW5nZXN0KHBheWxvYWQ6IHtcbiAgZG9jdW1lbnRJZDogc3RyaW5nXG4gIGZpbGVuYW1lOiBzdHJpbmdcbiAgZm9ybWF0OiAncGRmJyB8ICdtZCcgfCAndHh0J1xuICBmaWxlVXJsOiBzdHJpbmdcbn0pOiBQcm9taXNlPHsgam9iSWQ6IHN0cmluZyB9PiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdGAsIHtcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICBib2R5OiBKU09OLnN0cmluZ2lmeShwYXlsb2FkKSxcbiAgfSlcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPHsgam9iSWQ6IHN0cmluZyB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRJbmdlc3Rpb25TdGF0dXMoam9iSWQ6IHN0cmluZyk6IFByb21pc2U8SW5nZXN0aW9uSm9iU3RhdHVzPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdC9zdGF0dXMvJHtlbmNvZGVVUklDb21wb25lbnQoam9iSWQpfWApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxJbmdlc3Rpb25Kb2JTdGF0dXM+KHJlcylcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHBvc3RHZW5lcmF0ZUFsbCh0aGVtZUlkOiBzdHJpbmcpOiBQcm9taXNlPHsgcXVldWVkOiBudW1iZXIgfT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtHRU5FUkFUSU9OX1VSTH0vZ2VuZXJhdGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkoeyB0aGVtZUlkIH0pLFxuICB9KVxuICBjb25zdCBkYXRhID0gYXdhaXQgaGFuZGxlUmVzcG9uc2U8eyBqb2JJZDogc3RyaW5nOyB0b3RhbEl0ZW1zOiBudW1iZXIgfT4ocmVzKVxuICByZXR1cm4geyBxdWV1ZWQ6IGRhdGEudG90YWxJdGVtcyB9XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0Q29tcGxldGUocGF5bG9hZDogQ29tcGxldGVQYXlsb2FkKTogUHJvbWlzZTxDb21wbGV0ZVJlc3BvbnNlPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vY29tcGxldGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkocGF5bG9hZCksXG4gIH0pXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxDb21wbGV0ZVJlc3BvbnNlPihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRMZWFkZXJib2FyZCgpOiBQcm9taXNlPExlYWRlcmJvYXJkRW50cnlbXT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtQUk9HUkVTU19VUkx9L2xlYWRlcmJvYXJkYClcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPExlYWRlcmJvYXJkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0RmVlZCgpOiBQcm9taXNlPEZlZWRFbnRyeVtdPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vZmVlZGApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxGZWVkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcG9zdEN1cnJpY3VsdW1Db25maXJtKHZlcnNpb25JZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3ZlcnNpb25zLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHZlcnNpb25JZCl9L2NvbmZpcm1gLFxuICAgIHtcbiAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyKHdlZWtJZDogc3RyaW5nLCBwb3NpdGlvbjogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3dlZWtzLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHdlZWtJZCl9L29yZGVyYCxcbiAgICB7XG4gICAgICBtZXRob2Q6ICdQQVRDSCcsXG4gICAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHsgcG9zaXRpb24gfSksXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuIl0sIm5hbWVzIjpbIklOR0VTVElPTl9VUkwiLCJwcm9jZXNzIiwiZW52IiwiTkVYVF9QVUJMSUNfSU5HRVNUSU9OX1VSTCIsIkdFTkVSQVRJT05fVVJMIiwiTkVYVF9QVUJMSUNfR0VORVJBVElPTl9VUkwiLCJDVVJSSUNVTFVNX1VSTCIsIk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMIiwiUFJPR1JFU1NfVVJMIiwiTkVYVF9QVUJMSUNfUFJPR1JFU1NfVVJMIiwiaGFuZGxlUmVzcG9uc2UiLCJyZXMiLCJvayIsInRleHQiLCJjYXRjaCIsInN0YXR1c1RleHQiLCJFcnJvciIsInN0YXR1cyIsImpzb24iLCJwb3N0SW5nZXN0IiwicGF5bG9hZCIsImZldGNoIiwibWV0aG9kIiwiaGVhZGVycyIsImJvZHkiLCJKU09OIiwic3RyaW5naWZ5IiwiZ2V0SW5nZXN0aW9uU3RhdHVzIiwiam9iSWQiLCJlbmNvZGVVUklDb21wb25lbnQiLCJwb3N0R2VuZXJhdGVBbGwiLCJ0aGVtZUlkIiwiZGF0YSIsInF1ZXVlZCIsInRvdGFsSXRlbXMiLCJwb3N0Q29tcGxldGUiLCJnZXRMZWFkZXJib2FyZCIsImdldEZlZWQiLCJwb3N0Q3VycmljdWx1bUNvbmZpcm0iLCJ2ZXJzaW9uSWQiLCJwYXRjaEN1cnJpY3VsdW1XZWVrT3JkZXIiLCJ3ZWVrSWQiLCJwb3NpdGlvbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./src/lib/services.ts\n"); /***/ }), @@ -436,7 +436,7 @@ __webpack_require__.r(__webpack_exports__); /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (/* binding */ RootLayout),\n/* harmony export */ metadata: () => (/* binding */ metadata),\n/* harmony export */ viewport: () => (/* binding */ viewport)\n/* harmony export */ });\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-dev-runtime */ \"(rsc)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/rsc/react-jsx-dev-runtime.js\");\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _stylesheet_css__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../stylesheet.css */ \"(rsc)/../../stylesheet.css\");\n/* harmony import */ var _globals_css__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./globals.css */ \"(rsc)/./src/app/globals.css\");\n\n\n\nconst metadata = {\n title: \"Learning Platform\",\n description: \"Employee knowledge and learning\",\n manifest: \"/manifest.json\",\n appleWebApp: {\n capable: true,\n statusBarStyle: \"default\",\n title: \"Learning Platform\"\n }\n};\nconst viewport = {\n themeColor: \"#1F5560\",\n width: \"device-width\",\n initialScale: 1,\n maximumScale: 1\n};\nfunction RootLayout({ children }) {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"html\", {\n lang: \"en\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"body\", {\n children: children\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\app\\\\layout.tsx\",\n lineNumber: 30,\n columnNumber: 7\n }, this)\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\app\\\\layout.tsx\",\n lineNumber: 29,\n columnNumber: 5\n }, this);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9zcmMvYXBwL2xheW91dC50c3giLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFDbUM7QUFDYjtBQUVmLE1BQU1BLFdBQXFCO0lBQ2hDQyxPQUFPO0lBQ1BDLGFBQWE7SUFDYkMsVUFBVTtJQUNWQyxhQUFhO1FBQ1hDLFNBQVM7UUFDVEMsZ0JBQWdCO1FBQ2hCTCxPQUFPO0lBQ1Q7QUFDRixFQUFDO0FBRU0sTUFBTU0sV0FBcUI7SUFDaENDLFlBQVk7SUFDWkMsT0FBTztJQUNQQyxjQUFjO0lBQ2RDLGNBQWM7QUFDaEIsRUFBQztBQUVjLFNBQVNDLFdBQVcsRUFDakNDLFFBQVEsRUFHVDtJQUNDLHFCQUNFLDhEQUFDQztRQUFLQyxNQUFLO2tCQUNULDRFQUFDQztzQkFBTUg7Ozs7Ozs7Ozs7O0FBR2IiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9sZWFybmluZy1wbGF0Zm9ybS1mcm9udGVuZC8uL3NyYy9hcHAvbGF5b3V0LnRzeD81N2E5Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgTWV0YWRhdGEsIFZpZXdwb3J0IH0gZnJvbSAnbmV4dCdcbmltcG9ydCAnLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MnXG5pbXBvcnQgJy4vZ2xvYmFscy5jc3MnXG5cbmV4cG9ydCBjb25zdCBtZXRhZGF0YTogTWV0YWRhdGEgPSB7XG4gIHRpdGxlOiAnTGVhcm5pbmcgUGxhdGZvcm0nLFxuICBkZXNjcmlwdGlvbjogJ0VtcGxveWVlIGtub3dsZWRnZSBhbmQgbGVhcm5pbmcnLFxuICBtYW5pZmVzdDogJy9tYW5pZmVzdC5qc29uJyxcbiAgYXBwbGVXZWJBcHA6IHtcbiAgICBjYXBhYmxlOiB0cnVlLFxuICAgIHN0YXR1c0JhclN0eWxlOiAnZGVmYXVsdCcsXG4gICAgdGl0bGU6ICdMZWFybmluZyBQbGF0Zm9ybScsXG4gIH0sXG59XG5cbmV4cG9ydCBjb25zdCB2aWV3cG9ydDogVmlld3BvcnQgPSB7XG4gIHRoZW1lQ29sb3I6ICcjMUY1NTYwJyxcbiAgd2lkdGg6ICdkZXZpY2Utd2lkdGgnLFxuICBpbml0aWFsU2NhbGU6IDEsXG4gIG1heGltdW1TY2FsZTogMSxcbn1cblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gUm9vdExheW91dCh7XG4gIGNoaWxkcmVuLFxufToge1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlXG59KSB7XG4gIHJldHVybiAoXG4gICAgPGh0bWwgbGFuZz1cImVuXCI+XG4gICAgICA8Ym9keT57Y2hpbGRyZW59PC9ib2R5PlxuICAgIDwvaHRtbD5cbiAgKVxufVxuIl0sIm5hbWVzIjpbIm1ldGFkYXRhIiwidGl0bGUiLCJkZXNjcmlwdGlvbiIsIm1hbmlmZXN0IiwiYXBwbGVXZWJBcHAiLCJjYXBhYmxlIiwic3RhdHVzQmFyU3R5bGUiLCJ2aWV3cG9ydCIsInRoZW1lQ29sb3IiLCJ3aWR0aCIsImluaXRpYWxTY2FsZSIsIm1heGltdW1TY2FsZSIsIlJvb3RMYXlvdXQiLCJjaGlsZHJlbiIsImh0bWwiLCJsYW5nIiwiYm9keSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(rsc)/./src/app/layout.tsx\n"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (/* binding */ RootLayout),\n/* harmony export */ metadata: () => (/* binding */ metadata),\n/* harmony export */ viewport: () => (/* binding */ viewport)\n/* harmony export */ });\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-dev-runtime */ \"(rsc)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/rsc/react-jsx-dev-runtime.js\");\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _stylesheet_css__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../stylesheet.css */ \"(rsc)/../../stylesheet.css\");\n/* harmony import */ var _globals_css__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./globals.css */ \"(rsc)/./src/app/globals.css\");\n\n\n\nconst metadata = {\n title: \"Learning Platform\",\n description: \"Employee knowledge and learning\",\n manifest: \"/manifest.json\",\n icons: {\n icon: \"/favicon.svg\"\n },\n appleWebApp: {\n capable: true,\n statusBarStyle: \"default\",\n title: \"Learning Platform\"\n },\n other: {\n \"mobile-web-app-capable\": \"yes\"\n }\n};\nconst viewport = {\n themeColor: \"#1F5560\",\n width: \"device-width\",\n initialScale: 1,\n maximumScale: 1\n};\nfunction RootLayout({ children }) {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"html\", {\n lang: \"en\",\n suppressHydrationWarning: true,\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"body\", {\n children: children\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\app\\\\layout.tsx\",\n lineNumber: 34,\n columnNumber: 7\n }, this)\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\app\\\\layout.tsx\",\n lineNumber: 33,\n columnNumber: 5\n }, this);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9zcmMvYXBwL2xheW91dC50c3giLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFDbUM7QUFDYjtBQUVmLE1BQU1BLFdBQXFCO0lBQ2hDQyxPQUFPO0lBQ1BDLGFBQWE7SUFDYkMsVUFBVTtJQUNWQyxPQUFPO1FBQUVDLE1BQU07SUFBZTtJQUM5QkMsYUFBYTtRQUNYQyxTQUFTO1FBQ1RDLGdCQUFnQjtRQUNoQlAsT0FBTztJQUNUO0lBQ0FRLE9BQU87UUFDTCwwQkFBMEI7SUFDNUI7QUFDRixFQUFDO0FBRU0sTUFBTUMsV0FBcUI7SUFDaENDLFlBQVk7SUFDWkMsT0FBTztJQUNQQyxjQUFjO0lBQ2RDLGNBQWM7QUFDaEIsRUFBQztBQUVjLFNBQVNDLFdBQVcsRUFDakNDLFFBQVEsRUFHVDtJQUNDLHFCQUNFLDhEQUFDQztRQUFLQyxNQUFLO1FBQUtDLHdCQUF3QjtrQkFDdEMsNEVBQUNDO3NCQUFNSjs7Ozs7Ozs7Ozs7QUFHYiIsInNvdXJjZXMiOlsid2VicGFjazovL2xlYXJuaW5nLXBsYXRmb3JtLWZyb250ZW5kLy4vc3JjL2FwcC9sYXlvdXQudHN4PzU3YTkiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBNZXRhZGF0YSwgVmlld3BvcnQgfSBmcm9tICduZXh0J1xuaW1wb3J0ICcuLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcydcbmltcG9ydCAnLi9nbG9iYWxzLmNzcydcblxuZXhwb3J0IGNvbnN0IG1ldGFkYXRhOiBNZXRhZGF0YSA9IHtcbiAgdGl0bGU6ICdMZWFybmluZyBQbGF0Zm9ybScsXG4gIGRlc2NyaXB0aW9uOiAnRW1wbG95ZWUga25vd2xlZGdlIGFuZCBsZWFybmluZycsXG4gIG1hbmlmZXN0OiAnL21hbmlmZXN0Lmpzb24nLFxuICBpY29uczogeyBpY29uOiAnL2Zhdmljb24uc3ZnJyB9LFxuICBhcHBsZVdlYkFwcDoge1xuICAgIGNhcGFibGU6IHRydWUsXG4gICAgc3RhdHVzQmFyU3R5bGU6ICdkZWZhdWx0JyxcbiAgICB0aXRsZTogJ0xlYXJuaW5nIFBsYXRmb3JtJyxcbiAgfSxcbiAgb3RoZXI6IHtcbiAgICAnbW9iaWxlLXdlYi1hcHAtY2FwYWJsZSc6ICd5ZXMnLFxuICB9LFxufVxuXG5leHBvcnQgY29uc3Qgdmlld3BvcnQ6IFZpZXdwb3J0ID0ge1xuICB0aGVtZUNvbG9yOiAnIzFGNTU2MCcsXG4gIHdpZHRoOiAnZGV2aWNlLXdpZHRoJyxcbiAgaW5pdGlhbFNjYWxlOiAxLFxuICBtYXhpbXVtU2NhbGU6IDEsXG59XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIFJvb3RMYXlvdXQoe1xuICBjaGlsZHJlbixcbn06IHtcbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZVxufSkge1xuICByZXR1cm4gKFxuICAgIDxodG1sIGxhbmc9XCJlblwiIHN1cHByZXNzSHlkcmF0aW9uV2FybmluZz5cbiAgICAgIDxib2R5PntjaGlsZHJlbn08L2JvZHk+XG4gICAgPC9odG1sPlxuICApXG59XG4iXSwibmFtZXMiOlsibWV0YWRhdGEiLCJ0aXRsZSIsImRlc2NyaXB0aW9uIiwibWFuaWZlc3QiLCJpY29ucyIsImljb24iLCJhcHBsZVdlYkFwcCIsImNhcGFibGUiLCJzdGF0dXNCYXJTdHlsZSIsIm90aGVyIiwidmlld3BvcnQiLCJ0aGVtZUNvbG9yIiwid2lkdGgiLCJpbml0aWFsU2NhbGUiLCJtYXhpbXVtU2NhbGUiLCJSb290TGF5b3V0IiwiY2hpbGRyZW4iLCJodG1sIiwibGFuZyIsInN1cHByZXNzSHlkcmF0aW9uV2FybmluZyIsImJvZHkiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(rsc)/./src/app/layout.tsx\n"); /***/ }) diff --git a/app/frontend/.next/server/app/auth/page.js b/app/frontend/.next/server/app/auth/page.js index 7e58e5f..7c3ea83 100644 --- a/app/frontend/.next/server/app/auth/page.js +++ b/app/frontend/.next/server/app/auth/page.js @@ -188,7 +188,7 @@ __webpack_require__.r(__webpack_exports__); /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (/* binding */ RootLayout),\n/* harmony export */ metadata: () => (/* binding */ metadata),\n/* harmony export */ viewport: () => (/* binding */ viewport)\n/* harmony export */ });\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-dev-runtime */ \"(rsc)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/rsc/react-jsx-dev-runtime.js\");\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _stylesheet_css__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../stylesheet.css */ \"(rsc)/../../stylesheet.css\");\n/* harmony import */ var _globals_css__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./globals.css */ \"(rsc)/./src/app/globals.css\");\n\n\n\nconst metadata = {\n title: \"Learning Platform\",\n description: \"Employee knowledge and learning\",\n manifest: \"/manifest.json\",\n appleWebApp: {\n capable: true,\n statusBarStyle: \"default\",\n title: \"Learning Platform\"\n }\n};\nconst viewport = {\n themeColor: \"#1F5560\",\n width: \"device-width\",\n initialScale: 1,\n maximumScale: 1\n};\nfunction RootLayout({ children }) {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"html\", {\n lang: \"en\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"body\", {\n children: children\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\app\\\\layout.tsx\",\n lineNumber: 30,\n columnNumber: 7\n }, this)\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\app\\\\layout.tsx\",\n lineNumber: 29,\n columnNumber: 5\n }, this);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9zcmMvYXBwL2xheW91dC50c3giLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFDbUM7QUFDYjtBQUVmLE1BQU1BLFdBQXFCO0lBQ2hDQyxPQUFPO0lBQ1BDLGFBQWE7SUFDYkMsVUFBVTtJQUNWQyxhQUFhO1FBQ1hDLFNBQVM7UUFDVEMsZ0JBQWdCO1FBQ2hCTCxPQUFPO0lBQ1Q7QUFDRixFQUFDO0FBRU0sTUFBTU0sV0FBcUI7SUFDaENDLFlBQVk7SUFDWkMsT0FBTztJQUNQQyxjQUFjO0lBQ2RDLGNBQWM7QUFDaEIsRUFBQztBQUVjLFNBQVNDLFdBQVcsRUFDakNDLFFBQVEsRUFHVDtJQUNDLHFCQUNFLDhEQUFDQztRQUFLQyxNQUFLO2tCQUNULDRFQUFDQztzQkFBTUg7Ozs7Ozs7Ozs7O0FBR2IiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9sZWFybmluZy1wbGF0Zm9ybS1mcm9udGVuZC8uL3NyYy9hcHAvbGF5b3V0LnRzeD81N2E5Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgTWV0YWRhdGEsIFZpZXdwb3J0IH0gZnJvbSAnbmV4dCdcbmltcG9ydCAnLi4vLi4vLi4vLi4vc3R5bGVzaGVldC5jc3MnXG5pbXBvcnQgJy4vZ2xvYmFscy5jc3MnXG5cbmV4cG9ydCBjb25zdCBtZXRhZGF0YTogTWV0YWRhdGEgPSB7XG4gIHRpdGxlOiAnTGVhcm5pbmcgUGxhdGZvcm0nLFxuICBkZXNjcmlwdGlvbjogJ0VtcGxveWVlIGtub3dsZWRnZSBhbmQgbGVhcm5pbmcnLFxuICBtYW5pZmVzdDogJy9tYW5pZmVzdC5qc29uJyxcbiAgYXBwbGVXZWJBcHA6IHtcbiAgICBjYXBhYmxlOiB0cnVlLFxuICAgIHN0YXR1c0JhclN0eWxlOiAnZGVmYXVsdCcsXG4gICAgdGl0bGU6ICdMZWFybmluZyBQbGF0Zm9ybScsXG4gIH0sXG59XG5cbmV4cG9ydCBjb25zdCB2aWV3cG9ydDogVmlld3BvcnQgPSB7XG4gIHRoZW1lQ29sb3I6ICcjMUY1NTYwJyxcbiAgd2lkdGg6ICdkZXZpY2Utd2lkdGgnLFxuICBpbml0aWFsU2NhbGU6IDEsXG4gIG1heGltdW1TY2FsZTogMSxcbn1cblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gUm9vdExheW91dCh7XG4gIGNoaWxkcmVuLFxufToge1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlXG59KSB7XG4gIHJldHVybiAoXG4gICAgPGh0bWwgbGFuZz1cImVuXCI+XG4gICAgICA8Ym9keT57Y2hpbGRyZW59PC9ib2R5PlxuICAgIDwvaHRtbD5cbiAgKVxufVxuIl0sIm5hbWVzIjpbIm1ldGFkYXRhIiwidGl0bGUiLCJkZXNjcmlwdGlvbiIsIm1hbmlmZXN0IiwiYXBwbGVXZWJBcHAiLCJjYXBhYmxlIiwic3RhdHVzQmFyU3R5bGUiLCJ2aWV3cG9ydCIsInRoZW1lQ29sb3IiLCJ3aWR0aCIsImluaXRpYWxTY2FsZSIsIm1heGltdW1TY2FsZSIsIlJvb3RMYXlvdXQiLCJjaGlsZHJlbiIsImh0bWwiLCJsYW5nIiwiYm9keSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(rsc)/./src/app/layout.tsx\n"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (/* binding */ RootLayout),\n/* harmony export */ metadata: () => (/* binding */ metadata),\n/* harmony export */ viewport: () => (/* binding */ viewport)\n/* harmony export */ });\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-dev-runtime */ \"(rsc)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/rsc/react-jsx-dev-runtime.js\");\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _stylesheet_css__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../stylesheet.css */ \"(rsc)/../../stylesheet.css\");\n/* harmony import */ var _globals_css__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./globals.css */ \"(rsc)/./src/app/globals.css\");\n\n\n\nconst metadata = {\n title: \"Learning Platform\",\n description: \"Employee knowledge and learning\",\n manifest: \"/manifest.json\",\n icons: {\n icon: \"/favicon.svg\"\n },\n appleWebApp: {\n capable: true,\n statusBarStyle: \"default\",\n title: \"Learning Platform\"\n },\n other: {\n \"mobile-web-app-capable\": \"yes\"\n }\n};\nconst viewport = {\n themeColor: \"#1F5560\",\n width: \"device-width\",\n initialScale: 1,\n maximumScale: 1\n};\nfunction RootLayout({ children }) {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"html\", {\n lang: \"en\",\n suppressHydrationWarning: true,\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"body\", {\n children: children\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\app\\\\layout.tsx\",\n lineNumber: 34,\n columnNumber: 7\n }, this)\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\app\\\\layout.tsx\",\n lineNumber: 33,\n columnNumber: 5\n }, this);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9zcmMvYXBwL2xheW91dC50c3giLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFDbUM7QUFDYjtBQUVmLE1BQU1BLFdBQXFCO0lBQ2hDQyxPQUFPO0lBQ1BDLGFBQWE7SUFDYkMsVUFBVTtJQUNWQyxPQUFPO1FBQUVDLE1BQU07SUFBZTtJQUM5QkMsYUFBYTtRQUNYQyxTQUFTO1FBQ1RDLGdCQUFnQjtRQUNoQlAsT0FBTztJQUNUO0lBQ0FRLE9BQU87UUFDTCwwQkFBMEI7SUFDNUI7QUFDRixFQUFDO0FBRU0sTUFBTUMsV0FBcUI7SUFDaENDLFlBQVk7SUFDWkMsT0FBTztJQUNQQyxjQUFjO0lBQ2RDLGNBQWM7QUFDaEIsRUFBQztBQUVjLFNBQVNDLFdBQVcsRUFDakNDLFFBQVEsRUFHVDtJQUNDLHFCQUNFLDhEQUFDQztRQUFLQyxNQUFLO1FBQUtDLHdCQUF3QjtrQkFDdEMsNEVBQUNDO3NCQUFNSjs7Ozs7Ozs7Ozs7QUFHYiIsInNvdXJjZXMiOlsid2VicGFjazovL2xlYXJuaW5nLXBsYXRmb3JtLWZyb250ZW5kLy4vc3JjL2FwcC9sYXlvdXQudHN4PzU3YTkiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBNZXRhZGF0YSwgVmlld3BvcnQgfSBmcm9tICduZXh0J1xuaW1wb3J0ICcuLi8uLi8uLi8uLi9zdHlsZXNoZWV0LmNzcydcbmltcG9ydCAnLi9nbG9iYWxzLmNzcydcblxuZXhwb3J0IGNvbnN0IG1ldGFkYXRhOiBNZXRhZGF0YSA9IHtcbiAgdGl0bGU6ICdMZWFybmluZyBQbGF0Zm9ybScsXG4gIGRlc2NyaXB0aW9uOiAnRW1wbG95ZWUga25vd2xlZGdlIGFuZCBsZWFybmluZycsXG4gIG1hbmlmZXN0OiAnL21hbmlmZXN0Lmpzb24nLFxuICBpY29uczogeyBpY29uOiAnL2Zhdmljb24uc3ZnJyB9LFxuICBhcHBsZVdlYkFwcDoge1xuICAgIGNhcGFibGU6IHRydWUsXG4gICAgc3RhdHVzQmFyU3R5bGU6ICdkZWZhdWx0JyxcbiAgICB0aXRsZTogJ0xlYXJuaW5nIFBsYXRmb3JtJyxcbiAgfSxcbiAgb3RoZXI6IHtcbiAgICAnbW9iaWxlLXdlYi1hcHAtY2FwYWJsZSc6ICd5ZXMnLFxuICB9LFxufVxuXG5leHBvcnQgY29uc3Qgdmlld3BvcnQ6IFZpZXdwb3J0ID0ge1xuICB0aGVtZUNvbG9yOiAnIzFGNTU2MCcsXG4gIHdpZHRoOiAnZGV2aWNlLXdpZHRoJyxcbiAgaW5pdGlhbFNjYWxlOiAxLFxuICBtYXhpbXVtU2NhbGU6IDEsXG59XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIFJvb3RMYXlvdXQoe1xuICBjaGlsZHJlbixcbn06IHtcbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZVxufSkge1xuICByZXR1cm4gKFxuICAgIDxodG1sIGxhbmc9XCJlblwiIHN1cHByZXNzSHlkcmF0aW9uV2FybmluZz5cbiAgICAgIDxib2R5PntjaGlsZHJlbn08L2JvZHk+XG4gICAgPC9odG1sPlxuICApXG59XG4iXSwibmFtZXMiOlsibWV0YWRhdGEiLCJ0aXRsZSIsImRlc2NyaXB0aW9uIiwibWFuaWZlc3QiLCJpY29ucyIsImljb24iLCJhcHBsZVdlYkFwcCIsImNhcGFibGUiLCJzdGF0dXNCYXJTdHlsZSIsIm90aGVyIiwidmlld3BvcnQiLCJ0aGVtZUNvbG9yIiwid2lkdGgiLCJpbml0aWFsU2NhbGUiLCJtYXhpbXVtU2NhbGUiLCJSb290TGF5b3V0IiwiY2hpbGRyZW4iLCJodG1sIiwibGFuZyIsInN1cHByZXNzSHlkcmF0aW9uV2FybmluZyIsImJvZHkiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(rsc)/./src/app/layout.tsx\n"); /***/ }) diff --git a/app/frontend/.next/server/vendor-chunks/next.js b/app/frontend/.next/server/vendor-chunks/next.js index a6b8317..f12d8fe 100644 --- a/app/frontend/.next/server/vendor-chunks/next.js +++ b/app/frontend/.next/server/vendor-chunks/next.js @@ -1997,17 +1997,6 @@ eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n})); /***/ }), -/***/ "(rsc)/./node_modules/next/dist/api/navigation.react-server.js": -/*!***************************************************************!*\ - !*** ./node_modules/next/dist/api/navigation.react-server.js ***! - \***************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _client_components_navigation_react_server__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../client/components/navigation.react-server */ \"(rsc)/./node_modules/next/dist/client/components/navigation.react-server.js\");\n/* harmony import */ var _client_components_navigation_react_server__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_client_components_navigation_react_server__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony reexport (unknown) */ var __WEBPACK_REEXPORT_OBJECT__ = {};\n/* harmony reexport (unknown) */ for(const __WEBPACK_IMPORT_KEY__ in _client_components_navigation_react_server__WEBPACK_IMPORTED_MODULE_0__) if(__WEBPACK_IMPORT_KEY__ !== \"default\") __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = () => _client_components_navigation_react_server__WEBPACK_IMPORTED_MODULE_0__[__WEBPACK_IMPORT_KEY__]\n/* harmony reexport (unknown) */ __webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);\n\n\n//# sourceMappingURL=navigation.react-server.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2FwaS9uYXZpZ2F0aW9uLnJlYWN0LXNlcnZlci5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBNkQ7O0FBRTdEIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vbGVhcm5pbmctcGxhdGZvcm0tZnJvbnRlbmQvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2FwaS9uYXZpZ2F0aW9uLnJlYWN0LXNlcnZlci5qcz8xMDFjIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuLi9jbGllbnQvY29tcG9uZW50cy9uYXZpZ2F0aW9uLnJlYWN0LXNlcnZlclwiO1xuXG4vLyMgc291cmNlTWFwcGluZ1VSTD1uYXZpZ2F0aW9uLnJlYWN0LXNlcnZlci5qcy5tYXAiXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/next/dist/api/navigation.react-server.js\n"); - -/***/ }), - /***/ "(rsc)/./node_modules/next/dist/build/output/log.js": /*!****************************************************!*\ !*** ./node_modules/next/dist/build/output/log.js ***! @@ -2099,17 +2088,6 @@ module.exports = createProxy("C:\\Users\\RaymondVerhoef\\Gitea\\learning-platfor //# sourceMappingURL=layout-router.js.map -/***/ }), - -/***/ "(rsc)/./node_modules/next/dist/client/components/navigation.react-server.js": -/*!*****************************************************************************!*\ - !*** ./node_modules/next/dist/client/components/navigation.react-server.js ***! - \*****************************************************************************/ -/***/ ((module, exports, __webpack_require__) => { - -"use strict"; -eval("/** @internal */ \nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\n0 && (0);\nfunction _export(target, all) {\n for(var name in all)Object.defineProperty(target, name, {\n enumerable: true,\n get: all[name]\n });\n}\n_export(exports, {\n ReadonlyURLSearchParams: function() {\n return ReadonlyURLSearchParams;\n },\n RedirectType: function() {\n return _redirect.RedirectType;\n },\n notFound: function() {\n return _notfound.notFound;\n },\n permanentRedirect: function() {\n return _redirect.permanentRedirect;\n },\n redirect: function() {\n return _redirect.redirect;\n }\n});\nconst _redirect = __webpack_require__(/*! ./redirect */ \"(rsc)/./node_modules/next/dist/client/components/redirect.js\");\nconst _notfound = __webpack_require__(/*! ./not-found */ \"(rsc)/./node_modules/next/dist/client/components/not-found.js\");\nclass ReadonlyURLSearchParamsError extends Error {\n constructor(){\n super(\"Method unavailable on `ReadonlyURLSearchParams`. Read more: https://nextjs.org/docs/app/api-reference/functions/use-search-params#updating-searchparams\");\n }\n}\nclass ReadonlyURLSearchParams extends URLSearchParams {\n /** @deprecated Method unavailable on `ReadonlyURLSearchParams`. Read more: https://nextjs.org/docs/app/api-reference/functions/use-search-params#updating-searchparams */ append() {\n throw new ReadonlyURLSearchParamsError();\n }\n /** @deprecated Method unavailable on `ReadonlyURLSearchParams`. Read more: https://nextjs.org/docs/app/api-reference/functions/use-search-params#updating-searchparams */ delete() {\n throw new ReadonlyURLSearchParamsError();\n }\n /** @deprecated Method unavailable on `ReadonlyURLSearchParams`. Read more: https://nextjs.org/docs/app/api-reference/functions/use-search-params#updating-searchparams */ set() {\n throw new ReadonlyURLSearchParamsError();\n }\n /** @deprecated Method unavailable on `ReadonlyURLSearchParams`. Read more: https://nextjs.org/docs/app/api-reference/functions/use-search-params#updating-searchparams */ sort() {\n throw new ReadonlyURLSearchParamsError();\n }\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=navigation.react-server.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL25hdmlnYXRpb24ucmVhY3Qtc2VydmVyLmpzIiwibWFwcGluZ3MiOiJBQUFBLGNBQWM7Ozs7Ozs7Ozs7OztJQThCTEEseUJBQXVCO2VBQXZCQTs7SUFGNkJDLGNBQVk7ZUFBWkEsVUFBQUEsWUFBWTs7SUFDekNDLFVBQVE7ZUFBUkEsVUFBQUEsUUFBUTs7SUFERUMsbUJBQWlCO2VBQWpCQSxVQUFBQSxpQkFBaUI7O0lBQTNCQyxVQUFRO2VBQVJBLFVBQUFBLFFBQVE7OztzQ0FBeUM7c0NBQ2pDO0FBNUJ6QixNQUFNQyxxQ0FBcUNDO0lBQ3pDQyxhQUFjO1FBQ1osS0FBSyxDQUNIO0lBRUo7QUFDRjtBQUVBLE1BQU1QLGdDQUFnQ1E7SUFDcEMsd0tBQXdLLEdBQ3hLQyxTQUFTO1FBQ1AsTUFBTSxJQUFJSjtJQUNaO0lBQ0Esd0tBQXdLLEdBQ3hLSyxTQUFTO1FBQ1AsTUFBTSxJQUFJTDtJQUNaO0lBQ0Esd0tBQXdLLEdBQ3hLTSxNQUFNO1FBQ0osTUFBTSxJQUFJTjtJQUNaO0lBQ0Esd0tBQXdLLEdBQ3hLTyxPQUFPO1FBQ0wsTUFBTSxJQUFJUDtJQUNaO0FBQ0YiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9sZWFybmluZy1wbGF0Zm9ybS1mcm9udGVuZC8uLi8uLi8uLi9zcmMvY2xpZW50L2NvbXBvbmVudHMvbmF2aWdhdGlvbi5yZWFjdC1zZXJ2ZXIudHM/ZGJjMCJdLCJuYW1lcyI6WyJSZWFkb25seVVSTFNlYXJjaFBhcmFtcyIsIlJlZGlyZWN0VHlwZSIsIm5vdEZvdW5kIiwicGVybWFuZW50UmVkaXJlY3QiLCJyZWRpcmVjdCIsIlJlYWRvbmx5VVJMU2VhcmNoUGFyYW1zRXJyb3IiLCJFcnJvciIsImNvbnN0cnVjdG9yIiwiVVJMU2VhcmNoUGFyYW1zIiwiYXBwZW5kIiwiZGVsZXRlIiwic2V0Iiwic29ydCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/next/dist/client/components/navigation.react-server.js\n"); - /***/ }), /***/ "(rsc)/./node_modules/next/dist/client/components/not-found-boundary.js": @@ -2138,39 +2116,6 @@ eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n})); /***/ }), -/***/ "(rsc)/./node_modules/next/dist/client/components/not-found.js": -/*!***************************************************************!*\ - !*** ./node_modules/next/dist/client/components/not-found.js ***! - \***************************************************************/ -/***/ ((module, exports) => { - -"use strict"; -eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\n0 && (0);\nfunction _export(target, all) {\n for(var name in all)Object.defineProperty(target, name, {\n enumerable: true,\n get: all[name]\n });\n}\n_export(exports, {\n isNotFoundError: function() {\n return isNotFoundError;\n },\n notFound: function() {\n return notFound;\n }\n});\nconst NOT_FOUND_ERROR_CODE = \"NEXT_NOT_FOUND\";\nfunction notFound() {\n // eslint-disable-next-line no-throw-literal\n const error = new Error(NOT_FOUND_ERROR_CODE);\n error.digest = NOT_FOUND_ERROR_CODE;\n throw error;\n}\nfunction isNotFoundError(error) {\n if (typeof error !== \"object\" || error === null || !(\"digest\" in error)) {\n return false;\n }\n return error.digest === NOT_FOUND_ERROR_CODE;\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=not-found.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL25vdC1mb3VuZC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7SUFnQ2dCQSxpQkFBZTtlQUFmQTs7SUFkQUMsVUFBUTtlQUFSQTs7O0FBbEJoQixNQUFNQyx1QkFBdUI7QUFrQnRCLFNBQVNEO0lBQ2QsNENBQTRDO0lBQzVDLE1BQU1FLFFBQVEsSUFBSUMsTUFBTUY7SUFDdEJDLE1BQXdCRSxNQUFNLEdBQUdIO0lBQ25DLE1BQU1DO0FBQ1I7QUFTTyxTQUFTSCxnQkFBZ0JHLEtBQWM7SUFDNUMsSUFBSSxPQUFPQSxVQUFVLFlBQVlBLFVBQVUsUUFBUSxDQUFFLGFBQVlBLEtBQUFBLEdBQVE7UUFDdkUsT0FBTztJQUNUO0lBRUEsT0FBT0EsTUFBTUUsTUFBTSxLQUFLSDtBQUMxQiIsInNvdXJjZXMiOlsid2VicGFjazovL2xlYXJuaW5nLXBsYXRmb3JtLWZyb250ZW5kLy4uLy4uLy4uL3NyYy9jbGllbnQvY29tcG9uZW50cy9ub3QtZm91bmQudHM/MDdmYiJdLCJuYW1lcyI6WyJpc05vdEZvdW5kRXJyb3IiLCJub3RGb3VuZCIsIk5PVF9GT1VORF9FUlJPUl9DT0RFIiwiZXJyb3IiLCJFcnJvciIsImRpZ2VzdCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/next/dist/client/components/not-found.js\n"); - -/***/ }), - -/***/ "(rsc)/./node_modules/next/dist/client/components/redirect-status-code.js": -/*!**************************************************************************!*\ - !*** ./node_modules/next/dist/client/components/redirect-status-code.js ***! - \**************************************************************************/ -/***/ ((module, exports) => { - -"use strict"; -eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"RedirectStatusCode\", ({\n enumerable: true,\n get: function() {\n return RedirectStatusCode;\n }\n}));\nvar RedirectStatusCode;\n(function(RedirectStatusCode) {\n RedirectStatusCode[RedirectStatusCode[\"SeeOther\"] = 303] = \"SeeOther\";\n RedirectStatusCode[RedirectStatusCode[\"TemporaryRedirect\"] = 307] = \"TemporaryRedirect\";\n RedirectStatusCode[RedirectStatusCode[\"PermanentRedirect\"] = 308] = \"PermanentRedirect\";\n})(RedirectStatusCode || (RedirectStatusCode = {}));\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=redirect-status-code.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlZGlyZWN0LXN0YXR1cy1jb2RlLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O1VBQVlBLGtCQUFBQTs7OztHQUFBQSxzQkFBQUEsQ0FBQUEscUJBQUFBLENBQUFBLENBQUFBIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vbGVhcm5pbmctcGxhdGZvcm0tZnJvbnRlbmQvLi4vLi4vLi4vc3JjL2NsaWVudC9jb21wb25lbnRzL3JlZGlyZWN0LXN0YXR1cy1jb2RlLnRzPzQyODEiXSwibmFtZXMiOlsiUmVkaXJlY3RTdGF0dXNDb2RlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/next/dist/client/components/redirect-status-code.js\n"); - -/***/ }), - -/***/ "(rsc)/./node_modules/next/dist/client/components/redirect.js": -/*!**************************************************************!*\ - !*** ./node_modules/next/dist/client/components/redirect.js ***! - \**************************************************************/ -/***/ ((module, exports, __webpack_require__) => { - -"use strict"; -eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\n0 && (0);\nfunction _export(target, all) {\n for(var name in all)Object.defineProperty(target, name, {\n enumerable: true,\n get: all[name]\n });\n}\n_export(exports, {\n RedirectType: function() {\n return RedirectType;\n },\n getRedirectError: function() {\n return getRedirectError;\n },\n getRedirectStatusCodeFromError: function() {\n return getRedirectStatusCodeFromError;\n },\n getRedirectTypeFromError: function() {\n return getRedirectTypeFromError;\n },\n getURLFromRedirectError: function() {\n return getURLFromRedirectError;\n },\n isRedirectError: function() {\n return isRedirectError;\n },\n permanentRedirect: function() {\n return permanentRedirect;\n },\n redirect: function() {\n return redirect;\n }\n});\nconst _requestasyncstorageexternal = __webpack_require__(/*! ./request-async-storage.external */ \"../../client/components/request-async-storage.external\");\nconst _actionasyncstorageexternal = __webpack_require__(/*! ./action-async-storage.external */ \"../../client/components/action-async-storage.external\");\nconst _redirectstatuscode = __webpack_require__(/*! ./redirect-status-code */ \"(rsc)/./node_modules/next/dist/client/components/redirect-status-code.js\");\nconst REDIRECT_ERROR_CODE = \"NEXT_REDIRECT\";\nvar RedirectType;\n(function(RedirectType) {\n RedirectType[\"push\"] = \"push\";\n RedirectType[\"replace\"] = \"replace\";\n})(RedirectType || (RedirectType = {}));\nfunction getRedirectError(url, type, statusCode) {\n if (statusCode === void 0) statusCode = _redirectstatuscode.RedirectStatusCode.TemporaryRedirect;\n const error = new Error(REDIRECT_ERROR_CODE);\n error.digest = REDIRECT_ERROR_CODE + \";\" + type + \";\" + url + \";\" + statusCode + \";\";\n const requestStore = _requestasyncstorageexternal.requestAsyncStorage.getStore();\n if (requestStore) {\n error.mutableCookies = requestStore.mutableCookies;\n }\n return error;\n}\nfunction redirect(/** The URL to redirect to */ url, type) {\n if (type === void 0) type = \"replace\";\n const actionStore = _actionasyncstorageexternal.actionAsyncStorage.getStore();\n throw getRedirectError(url, type, // as we don't want the POST request to follow the redirect,\n // as it could result in erroneous re-submissions.\n (actionStore == null ? void 0 : actionStore.isAction) ? _redirectstatuscode.RedirectStatusCode.SeeOther : _redirectstatuscode.RedirectStatusCode.TemporaryRedirect);\n}\nfunction permanentRedirect(/** The URL to redirect to */ url, type) {\n if (type === void 0) type = \"replace\";\n const actionStore = _actionasyncstorageexternal.actionAsyncStorage.getStore();\n throw getRedirectError(url, type, // as we don't want the POST request to follow the redirect,\n // as it could result in erroneous re-submissions.\n (actionStore == null ? void 0 : actionStore.isAction) ? _redirectstatuscode.RedirectStatusCode.SeeOther : _redirectstatuscode.RedirectStatusCode.PermanentRedirect);\n}\nfunction isRedirectError(error) {\n if (typeof error !== \"object\" || error === null || !(\"digest\" in error) || typeof error.digest !== \"string\") {\n return false;\n }\n const [errorCode, type, destination, status] = error.digest.split(\";\", 4);\n const statusCode = Number(status);\n return errorCode === REDIRECT_ERROR_CODE && (type === \"replace\" || type === \"push\") && typeof destination === \"string\" && !isNaN(statusCode) && statusCode in _redirectstatuscode.RedirectStatusCode;\n}\nfunction getURLFromRedirectError(error) {\n if (!isRedirectError(error)) return null;\n // Slices off the beginning of the digest that contains the code and the\n // separating ';'.\n return error.digest.split(\";\", 3)[2];\n}\nfunction getRedirectTypeFromError(error) {\n if (!isRedirectError(error)) {\n throw new Error(\"Not a redirect error\");\n }\n return error.digest.split(\";\", 2)[1];\n}\nfunction getRedirectStatusCodeFromError(error) {\n if (!isRedirectError(error)) {\n throw new Error(\"Not a redirect error\");\n }\n return Number(error.digest.split(\";\", 4)[3]);\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=redirect.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlZGlyZWN0LmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7OztJQWlCZ0JBLGtCQUFnQjtlQUFoQkE7O0lBb0lBQyxnQ0FBOEI7ZUFBOUJBOztJQVZBQywwQkFBd0I7ZUFBeEJBOztJQVJBQyx5QkFBdUI7ZUFBdkJBOztJQW5DQUMsaUJBQWU7ZUFBZkE7O0lBekJBQyxtQkFBaUI7ZUFBakJBOztJQTdCQUMsVUFBUTtlQUFSQTs7O3lEQTFDb0I7d0RBRUQ7Z0RBQ0E7QUFFbkMsTUFBTUMsc0JBQXNCOztVQUVoQkMsWUFBQUE7OztHQUFBQSxnQkFBQUEsQ0FBQUEsZUFBQUEsQ0FBQUEsQ0FBQUE7QUFVTCxTQUFTUixpQkFDZFMsR0FBVyxFQUNYQyxJQUFrQixFQUNsQkMsVUFBcUU7SUFBckVBLElBQUFBLGVBQUFBLEtBQUFBLEdBQUFBLGFBQWlDQyxvQkFBQUEsa0JBQWtCLENBQUNDLGlCQUFpQjtJQUVyRSxNQUFNQyxRQUFRLElBQUlDLE1BQU1SO0lBQ3hCTyxNQUFNRSxNQUFNLEdBQUdULHNCQUF1QixNQUFHRyxPQUFLLE1BQUdELE1BQUksTUFBR0UsYUFBVztJQUNuRSxNQUFNTSxlQUFlQyw2QkFBQUEsbUJBQW1CLENBQUNDLFFBQVE7SUFDakQsSUFBSUYsY0FBYztRQUNoQkgsTUFBTU0sY0FBYyxHQUFHSCxhQUFhRyxjQUFjO0lBQ3BEO0lBQ0EsT0FBT047QUFDVDtBQWFPLFNBQVNSLFNBQ2QsMkJBQTJCLEdBQzNCRyxHQUFXLEVBQ1hDLElBQXlDO0lBQXpDQSxJQUFBQSxTQUFBQSxLQUFBQSxHQUFBQSxPQUFBQTtJQUVBLE1BQU1XLGNBQWNDLDRCQUFBQSxrQkFBa0IsQ0FBQ0gsUUFBUTtJQUMvQyxNQUFNbkIsaUJBQ0pTLEtBQ0FDLE1BSUFXLDREQUY0RDtJQUM1RCxrREFBa0Q7SUFDbERBLENBQUFBLGVBQUFBLE9BQUFBLEtBQUFBLElBQUFBLFlBQWFFLFFBQVEsSUFDakJYLG9CQUFBQSxrQkFBa0IsQ0FBQ1ksUUFBUSxHQUMzQlosb0JBQUFBLGtCQUFrQixDQUFDQyxpQkFBaUI7QUFFNUM7QUFhTyxTQUFTUixrQkFDZCwyQkFBMkIsR0FDM0JJLEdBQVcsRUFDWEMsSUFBeUM7SUFBekNBLElBQUFBLFNBQUFBLEtBQUFBLEdBQUFBLE9BQUFBO0lBRUEsTUFBTVcsY0FBY0MsNEJBQUFBLGtCQUFrQixDQUFDSCxRQUFRO0lBQy9DLE1BQU1uQixpQkFDSlMsS0FDQUMsTUFJQVcsNERBRjREO0lBQzVELGtEQUFrRDtJQUNsREEsQ0FBQUEsZUFBQUEsT0FBQUEsS0FBQUEsSUFBQUEsWUFBYUUsUUFBUSxJQUNqQlgsb0JBQUFBLGtCQUFrQixDQUFDWSxRQUFRLEdBQzNCWixvQkFBQUEsa0JBQWtCLENBQUNhLGlCQUFpQjtBQUU1QztBQVNPLFNBQVNyQixnQkFDZFUsS0FBYztJQUVkLElBQ0UsT0FBT0EsVUFBVSxZQUNqQkEsVUFBVSxRQUNWLENBQUUsYUFBWUEsS0FBQUEsS0FDZCxPQUFPQSxNQUFNRSxNQUFNLEtBQUssVUFDeEI7UUFDQSxPQUFPO0lBQ1Q7SUFFQSxNQUFNLENBQUNVLFdBQVdoQixNQUFNaUIsYUFBYUMsT0FBTyxHQUFHZCxNQUFNRSxNQUFNLENBQUNhLEtBQUssQ0FBQyxLQUFLO0lBRXZFLE1BQU1sQixhQUFhbUIsT0FBT0Y7SUFFMUIsT0FDRUYsY0FBY25CLHVCQUNiRyxDQUFBQSxTQUFTLGFBQWFBLFNBQVMsV0FDaEMsT0FBT2lCLGdCQUFnQixZQUN2QixDQUFDSSxNQUFNcEIsZUFDUEEsY0FBY0Msb0JBQUFBLGtCQUFrQjtBQUVwQztBQVlPLFNBQVNULHdCQUF3QlcsS0FBYztJQUNwRCxJQUFJLENBQUNWLGdCQUFnQlUsUUFBUSxPQUFPO0lBRXBDLHdFQUF3RTtJQUN4RSxrQkFBa0I7SUFDbEIsT0FBT0EsTUFBTUUsTUFBTSxDQUFDYSxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUMsRUFBRTtBQUN0QztBQUVPLFNBQVMzQix5QkFDZFksS0FBdUI7SUFFdkIsSUFBSSxDQUFDVixnQkFBZ0JVLFFBQVE7UUFDM0IsTUFBTSxJQUFJQyxNQUFNO0lBQ2xCO0lBRUEsT0FBT0QsTUFBTUUsTUFBTSxDQUFDYSxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUMsRUFBRTtBQUN0QztBQUVPLFNBQVM1QiwrQkFDZGEsS0FBdUI7SUFFdkIsSUFBSSxDQUFDVixnQkFBZ0JVLFFBQVE7UUFDM0IsTUFBTSxJQUFJQyxNQUFNO0lBQ2xCO0lBRUEsT0FBT2UsT0FBT2hCLE1BQU1FLE1BQU0sQ0FBQ2EsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDLEVBQUU7QUFDN0MiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9sZWFybmluZy1wbGF0Zm9ybS1mcm9udGVuZC8uLi8uLi8uLi9zcmMvY2xpZW50L2NvbXBvbmVudHMvcmVkaXJlY3QudHM/ZGMyNyJdLCJuYW1lcyI6WyJnZXRSZWRpcmVjdEVycm9yIiwiZ2V0UmVkaXJlY3RTdGF0dXNDb2RlRnJvbUVycm9yIiwiZ2V0UmVkaXJlY3RUeXBlRnJvbUVycm9yIiwiZ2V0VVJMRnJvbVJlZGlyZWN0RXJyb3IiLCJpc1JlZGlyZWN0RXJyb3IiLCJwZXJtYW5lbnRSZWRpcmVjdCIsInJlZGlyZWN0IiwiUkVESVJFQ1RfRVJST1JfQ09ERSIsIlJlZGlyZWN0VHlwZSIsInVybCIsInR5cGUiLCJzdGF0dXNDb2RlIiwiUmVkaXJlY3RTdGF0dXNDb2RlIiwiVGVtcG9yYXJ5UmVkaXJlY3QiLCJlcnJvciIsIkVycm9yIiwiZGlnZXN0IiwicmVxdWVzdFN0b3JlIiwicmVxdWVzdEFzeW5jU3RvcmFnZSIsImdldFN0b3JlIiwibXV0YWJsZUNvb2tpZXMiLCJhY3Rpb25TdG9yZSIsImFjdGlvbkFzeW5jU3RvcmFnZSIsImlzQWN0aW9uIiwiU2VlT3RoZXIiLCJQZXJtYW5lbnRSZWRpcmVjdCIsImVycm9yQ29kZSIsImRlc3RpbmF0aW9uIiwic3RhdHVzIiwic3BsaXQiLCJOdW1iZXIiLCJpc05hTiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/next/dist/client/components/redirect.js\n"); - -/***/ }), - /***/ "(rsc)/./node_modules/next/dist/client/components/render-from-template-context.js": /*!**********************************************************************************!*\ !*** ./node_modules/next/dist/client/components/render-from-template-context.js ***! diff --git a/app/frontend/.next/server/webpack-runtime.js b/app/frontend/.next/server/webpack-runtime.js index d9c45cc..5893072 100644 --- a/app/frontend/.next/server/webpack-runtime.js +++ b/app/frontend/.next/server/webpack-runtime.js @@ -125,7 +125,7 @@ /******/ /******/ /* webpack/runtime/getFullHash */ /******/ (() => { -/******/ __webpack_require__.h = () => ("5fc192207423a534") +/******/ __webpack_require__.h = () => ("09138af57edc3866") /******/ })(); /******/ /******/ /* webpack/runtime/hasOwnProperty shorthand */ diff --git a/app/frontend/.next/static/chunks/app/admin/curriculum/page.js b/app/frontend/.next/static/chunks/app/admin/curriculum/page.js index 57b9058..4e0722c 100644 --- a/app/frontend/.next/static/chunks/app/admin/curriculum/page.js +++ b/app/frontend/.next/static/chunks/app/admin/curriculum/page.js @@ -80,7 +80,7 @@ eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* har /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFeed: function() { return /* binding */ getFeed; },\n/* harmony export */ getIngestionStatus: function() { return /* binding */ getIngestionStatus; },\n/* harmony export */ getLeaderboard: function() { return /* binding */ getLeaderboard; },\n/* harmony export */ patchCurriculumWeekOrder: function() { return /* binding */ patchCurriculumWeekOrder; },\n/* harmony export */ postComplete: function() { return /* binding */ postComplete; },\n/* harmony export */ postCurriculumConfirm: function() { return /* binding */ postCurriculumConfirm; },\n/* harmony export */ postGenerateAll: function() { return /* binding */ postGenerateAll; },\n/* harmony export */ postIngest: function() { return /* binding */ postIngest; }\n/* harmony export */ });\nvar _process_env_NEXT_PUBLIC_INGESTION_URL;\nconst INGESTION_URL = (_process_env_NEXT_PUBLIC_INGESTION_URL = \"http://localhost:3001\") !== null && _process_env_NEXT_PUBLIC_INGESTION_URL !== void 0 ? _process_env_NEXT_PUBLIC_INGESTION_URL : \"http://localhost:3001\";\nvar _process_env_NEXT_PUBLIC_GENERATION_URL;\nconst GENERATION_URL = (_process_env_NEXT_PUBLIC_GENERATION_URL = \"http://localhost:3002\") !== null && _process_env_NEXT_PUBLIC_GENERATION_URL !== void 0 ? _process_env_NEXT_PUBLIC_GENERATION_URL : \"http://localhost:3002\";\nvar _process_env_NEXT_PUBLIC_CURRICULUM_URL;\nconst CURRICULUM_URL = (_process_env_NEXT_PUBLIC_CURRICULUM_URL = \"http://localhost:3003\") !== null && _process_env_NEXT_PUBLIC_CURRICULUM_URL !== void 0 ? _process_env_NEXT_PUBLIC_CURRICULUM_URL : \"http://localhost:3003\";\nvar _process_env_NEXT_PUBLIC_PROGRESS_URL;\nconst PROGRESS_URL = (_process_env_NEXT_PUBLIC_PROGRESS_URL = \"http://localhost:3005\") !== null && _process_env_NEXT_PUBLIC_PROGRESS_URL !== void 0 ? _process_env_NEXT_PUBLIC_PROGRESS_URL : \"http://localhost:3005\";\nasync function handleResponse(res) {\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n return res.json();\n}\nasync function postIngest(payload) {\n const res = await fetch(\"\".concat(INGESTION_URL, \"/ingest\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getIngestionStatus(jobId) {\n const res = await fetch(\"\".concat(INGESTION_URL, \"/ingest/status/\").concat(encodeURIComponent(jobId)));\n return handleResponse(res);\n}\nasync function postGenerateAll(themeId) {\n const res = await fetch(\"\".concat(GENERATION_URL, \"/generate/theme/\").concat(encodeURIComponent(themeId)), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n return handleResponse(res);\n}\nasync function postComplete(payload) {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/complete\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getLeaderboard() {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/leaderboard\"));\n return handleResponse(res);\n}\nasync function getFeed() {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/feed\"));\n return handleResponse(res);\n}\nasync function postCurriculumConfirm(versionId) {\n const res = await fetch(\"\".concat(CURRICULUM_URL, \"/curriculum/versions/\").concat(encodeURIComponent(versionId), \"/confirm\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n}\nasync function patchCurriculumWeekOrder(weekId, position) {\n const res = await fetch(\"\".concat(CURRICULUM_URL, \"/curriculum/weeks/\").concat(encodeURIComponent(weekId), \"/order\"), {\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n position\n })\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n}\n\n\n;\n // Wrapped in an IIFE to avoid polluting the global scope\n ;\n (function () {\n var _a, _b;\n // Legacy CSS implementations will `eval` browser code in a Node.js context\n // to extract CSS. For backwards compatibility, we need to check we're in a\n // browser context before continuing.\n if (typeof self !== 'undefined' &&\n // AMP / No-JS mode does not inject these helpers:\n '$RefreshHelpers$' in self) {\n // @ts-ignore __webpack_module__ is global\n var currentExports = module.exports;\n // @ts-ignore __webpack_module__ is global\n var prevSignature = (_b = (_a = module.hot.data) === null || _a === void 0 ? void 0 : _a.prevSignature) !== null && _b !== void 0 ? _b : null;\n // This cannot happen in MainTemplate because the exports mismatch between\n // templating and execution.\n self.$RefreshHelpers$.registerExportsForReactRefresh(currentExports, module.id);\n // A module can be accepted automatically based on its exports, e.g. when\n // it is a Refresh Boundary.\n if (self.$RefreshHelpers$.isReactRefreshBoundary(currentExports)) {\n // Save the previous exports signature on update so we can compare the boundary\n // signatures. We avoid saving exports themselves since it causes memory leaks (https://github.com/vercel/next.js/pull/53797)\n module.hot.dispose(function (data) {\n data.prevSignature =\n self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports);\n });\n // Unconditionally accept an update to this module, we'll check if it's\n // still a Refresh Boundary later.\n // @ts-ignore importMeta is replaced in the loader\n module.hot.accept();\n // This field is set when the previous version of this module was a\n // Refresh Boundary, letting us know we need to check for invalidation or\n // enqueue an update.\n if (prevSignature !== null) {\n // A boundary can become ineligible if its exports are incompatible\n // with the previous exports.\n //\n // For example, if you add/remove/change exports, we'll want to\n // re-execute the importing modules, and force those components to\n // re-render. Similarly, if you convert a class component to a\n // function, we want to invalidate the boundary.\n if (self.$RefreshHelpers$.shouldInvalidateReactRefreshBoundary(prevSignature, self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports))) {\n module.hot.invalidate();\n }\n else {\n self.$RefreshHelpers$.scheduleUpdate();\n }\n }\n }\n else {\n // Since we just executed the code for the module, it's possible that the\n // new exports made it ineligible for being a boundary.\n // We only care about the case when we were _previously_ a boundary,\n // because we already accepted this update (accidental side effect).\n var isNoLongerABoundary = prevSignature !== null;\n if (isNoLongerABoundary) {\n module.hot.invalidate();\n }\n }\n }\n })();\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL3NyYy9saWIvc2VydmljZXMudHMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7SUFRc0JBO0FBQXRCLE1BQU1DLGdCQUFnQkQsQ0FBQUEseUNBQUFBLHVCQUFxQyxjQUFyQ0Esb0RBQUFBLHlDQUF5QztJQUN4Q0E7QUFBdkIsTUFBTUksaUJBQWlCSixDQUFBQSwwQ0FBQUEsdUJBQXNDLGNBQXRDQSxxREFBQUEsMENBQTBDO0lBQzFDQTtBQUF2QixNQUFNTSxpQkFBaUJOLENBQUFBLDBDQUFBQSx1QkFBc0MsY0FBdENBLHFEQUFBQSwwQ0FBMEM7SUFDNUNBO0FBQXJCLE1BQU1RLGVBQWVSLENBQUFBLHdDQUFBQSx1QkFBb0MsY0FBcENBLG1EQUFBQSx3Q0FBd0M7QUFFN0QsZUFBZVUsZUFBa0JDLEdBQWE7SUFDNUMsSUFBSSxDQUFDQSxJQUFJQyxFQUFFLEVBQUU7UUFDWCxNQUFNQyxPQUFPLE1BQU1GLElBQUlFLElBQUksR0FBR0MsS0FBSyxDQUFDLElBQU1ILElBQUlJLFVBQVU7UUFDeEQsTUFBTSxJQUFJQyxNQUFNLFFBQXVCSCxPQUFmRixJQUFJTSxNQUFNLEVBQUMsTUFBUyxPQUFMSjtJQUN6QztJQUNBLE9BQU9GLElBQUlPLElBQUk7QUFDakI7QUFFTyxlQUFlQyxXQUFXQyxPQUtoQztJQUNDLE1BQU1ULE1BQU0sTUFBTVUsTUFBTSxHQUFpQixPQUFkcEIsZUFBYyxZQUFVO1FBQ2pEcUIsUUFBUTtRQUNSQyxTQUFTO1lBQUUsZ0JBQWdCO1FBQW1CO1FBQzlDQyxNQUFNQyxLQUFLQyxTQUFTLENBQUNOO0lBQ3ZCO0lBQ0EsT0FBT1YsZUFBa0NDO0FBQzNDO0FBRU8sZUFBZWdCLG1CQUFtQkMsS0FBYTtJQUNwRCxNQUFNakIsTUFBTSxNQUFNVSxNQUFNLEdBQWtDUSxPQUEvQjVCLGVBQWMsbUJBQTJDLE9BQTFCNEIsbUJBQW1CRDtJQUM3RSxPQUFPbEIsZUFBbUNDO0FBQzVDO0FBRU8sZUFBZW1CLGdCQUFnQkMsT0FBZTtJQUNuRCxNQUFNcEIsTUFBTSxNQUFNVSxNQUFNLEdBQW9DUSxPQUFqQ3pCLGdCQUFlLG9CQUE4QyxPQUE1QnlCLG1CQUFtQkUsV0FBWTtRQUN6RlQsUUFBUTtRQUNSQyxTQUFTO1lBQUUsZ0JBQWdCO1FBQW1CO0lBQ2hEO0lBQ0EsT0FBT2IsZUFBbUNDO0FBQzVDO0FBRU8sZUFBZXFCLGFBQWFaLE9BQXdCO0lBQ3pELE1BQU1ULE1BQU0sTUFBTVUsTUFBTSxHQUFnQixPQUFiYixjQUFhLGNBQVk7UUFDbERjLFFBQVE7UUFDUkMsU0FBUztZQUFFLGdCQUFnQjtRQUFtQjtRQUM5Q0MsTUFBTUMsS0FBS0MsU0FBUyxDQUFDTjtJQUN2QjtJQUNBLE9BQU9WLGVBQWlDQztBQUMxQztBQUVPLGVBQWVzQjtJQUNwQixNQUFNdEIsTUFBTSxNQUFNVSxNQUFNLEdBQWdCLE9BQWJiLGNBQWE7SUFDeEMsT0FBT0UsZUFBbUNDO0FBQzVDO0FBRU8sZUFBZXVCO0lBQ3BCLE1BQU12QixNQUFNLE1BQU1VLE1BQU0sR0FBZ0IsT0FBYmIsY0FBYTtJQUN4QyxPQUFPRSxlQUE0QkM7QUFDckM7QUFFTyxlQUFld0Isc0JBQXNCQyxTQUFpQjtJQUMzRCxNQUFNekIsTUFBTSxNQUFNVSxNQUNoQixHQUF5Q1EsT0FBdEN2QixnQkFBZSx5QkFBcUQsT0FBOUJ1QixtQkFBbUJPLFlBQVcsYUFDdkU7UUFDRWQsUUFBUTtRQUNSQyxTQUFTO1lBQUUsZ0JBQWdCO1FBQW1CO0lBQ2hEO0lBRUYsSUFBSSxDQUFDWixJQUFJQyxFQUFFLEVBQUU7UUFDWCxNQUFNQyxPQUFPLE1BQU1GLElBQUlFLElBQUksR0FBR0MsS0FBSyxDQUFDLElBQU1ILElBQUlJLFVBQVU7UUFDeEQsTUFBTSxJQUFJQyxNQUFNLFFBQXVCSCxPQUFmRixJQUFJTSxNQUFNLEVBQUMsTUFBUyxPQUFMSjtJQUN6QztBQUNGO0FBRU8sZUFBZXdCLHlCQUF5QkMsTUFBYyxFQUFFQyxRQUFnQjtJQUM3RSxNQUFNNUIsTUFBTSxNQUFNVSxNQUNoQixHQUFzQ1EsT0FBbkN2QixnQkFBZSxzQkFBK0MsT0FBM0J1QixtQkFBbUJTLFNBQVEsV0FDakU7UUFDRWhCLFFBQVE7UUFDUkMsU0FBUztZQUFFLGdCQUFnQjtRQUFtQjtRQUM5Q0MsTUFBTUMsS0FBS0MsU0FBUyxDQUFDO1lBQUVhO1FBQVM7SUFDbEM7SUFFRixJQUFJLENBQUM1QixJQUFJQyxFQUFFLEVBQUU7UUFDWCxNQUFNQyxPQUFPLE1BQU1GLElBQUlFLElBQUksR0FBR0MsS0FBSyxDQUFDLElBQU1ILElBQUlJLFVBQVU7UUFDeEQsTUFBTSxJQUFJQyxNQUFNLFFBQXVCSCxPQUFmRixJQUFJTSxNQUFNLEVBQUMsTUFBUyxPQUFMSjtJQUN6QztBQUNGIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL3NyYy9saWIvc2VydmljZXMudHM/MDcwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIEluZ2VzdGlvbkpvYlN0YXR1cyxcbiAgQ29tcGxldGVQYXlsb2FkLFxuICBDb21wbGV0ZVJlc3BvbnNlLFxuICBMZWFkZXJib2FyZEVudHJ5LFxuICBGZWVkRW50cnksXG59IGZyb20gJ0AvdHlwZXMnXG5cbmNvbnN0IElOR0VTVElPTl9VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19JTkdFU1RJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDEnXG5jb25zdCBHRU5FUkFUSU9OX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0dFTkVSQVRJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDInXG5jb25zdCBDVVJSSUNVTFVNX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDMnXG5jb25zdCBQUk9HUkVTU19VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19QUk9HUkVTU19VUkwgPz8gJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwNSdcblxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlUmVzcG9uc2U8VD4ocmVzOiBSZXNwb25zZSk6IFByb21pc2U8VD4ge1xuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxuICByZXR1cm4gcmVzLmpzb24oKSBhcyBQcm9taXNlPFQ+XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0SW5nZXN0KHBheWxvYWQ6IHtcbiAgZG9jdW1lbnRJZDogc3RyaW5nXG4gIGZpbGVuYW1lOiBzdHJpbmdcbiAgZm9ybWF0OiAncGRmJyB8ICdtZCcgfCAndHh0J1xuICBmaWxlVXJsOiBzdHJpbmdcbn0pOiBQcm9taXNlPHsgam9iSWQ6IHN0cmluZyB9PiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdGAsIHtcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICBib2R5OiBKU09OLnN0cmluZ2lmeShwYXlsb2FkKSxcbiAgfSlcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPHsgam9iSWQ6IHN0cmluZyB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRJbmdlc3Rpb25TdGF0dXMoam9iSWQ6IHN0cmluZyk6IFByb21pc2U8SW5nZXN0aW9uSm9iU3RhdHVzPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdC9zdGF0dXMvJHtlbmNvZGVVUklDb21wb25lbnQoam9iSWQpfWApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxJbmdlc3Rpb25Kb2JTdGF0dXM+KHJlcylcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHBvc3RHZW5lcmF0ZUFsbCh0aGVtZUlkOiBzdHJpbmcpOiBQcm9taXNlPHsgcXVldWVkOiBudW1iZXIgfT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtHRU5FUkFUSU9OX1VSTH0vZ2VuZXJhdGUvdGhlbWUvJHtlbmNvZGVVUklDb21wb25lbnQodGhlbWVJZCl9YCwge1xuICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgIGhlYWRlcnM6IHsgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyB9LFxuICB9KVxuICByZXR1cm4gaGFuZGxlUmVzcG9uc2U8eyBxdWV1ZWQ6IG51bWJlciB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0Q29tcGxldGUocGF5bG9hZDogQ29tcGxldGVQYXlsb2FkKTogUHJvbWlzZTxDb21wbGV0ZVJlc3BvbnNlPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vY29tcGxldGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkocGF5bG9hZCksXG4gIH0pXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxDb21wbGV0ZVJlc3BvbnNlPihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRMZWFkZXJib2FyZCgpOiBQcm9taXNlPExlYWRlcmJvYXJkRW50cnlbXT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtQUk9HUkVTU19VUkx9L2xlYWRlcmJvYXJkYClcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPExlYWRlcmJvYXJkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0RmVlZCgpOiBQcm9taXNlPEZlZWRFbnRyeVtdPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vZmVlZGApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxGZWVkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcG9zdEN1cnJpY3VsdW1Db25maXJtKHZlcnNpb25JZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3ZlcnNpb25zLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHZlcnNpb25JZCl9L2NvbmZpcm1gLFxuICAgIHtcbiAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyKHdlZWtJZDogc3RyaW5nLCBwb3NpdGlvbjogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3dlZWtzLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHdlZWtJZCl9L29yZGVyYCxcbiAgICB7XG4gICAgICBtZXRob2Q6ICdQQVRDSCcsXG4gICAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHsgcG9zaXRpb24gfSksXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuIl0sIm5hbWVzIjpbInByb2Nlc3MiLCJJTkdFU1RJT05fVVJMIiwiZW52IiwiTkVYVF9QVUJMSUNfSU5HRVNUSU9OX1VSTCIsIkdFTkVSQVRJT05fVVJMIiwiTkVYVF9QVUJMSUNfR0VORVJBVElPTl9VUkwiLCJDVVJSSUNVTFVNX1VSTCIsIk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMIiwiUFJPR1JFU1NfVVJMIiwiTkVYVF9QVUJMSUNfUFJPR1JFU1NfVVJMIiwiaGFuZGxlUmVzcG9uc2UiLCJyZXMiLCJvayIsInRleHQiLCJjYXRjaCIsInN0YXR1c1RleHQiLCJFcnJvciIsInN0YXR1cyIsImpzb24iLCJwb3N0SW5nZXN0IiwicGF5bG9hZCIsImZldGNoIiwibWV0aG9kIiwiaGVhZGVycyIsImJvZHkiLCJKU09OIiwic3RyaW5naWZ5IiwiZ2V0SW5nZXN0aW9uU3RhdHVzIiwiam9iSWQiLCJlbmNvZGVVUklDb21wb25lbnQiLCJwb3N0R2VuZXJhdGVBbGwiLCJ0aGVtZUlkIiwicG9zdENvbXBsZXRlIiwiZ2V0TGVhZGVyYm9hcmQiLCJnZXRGZWVkIiwicG9zdEN1cnJpY3VsdW1Db25maXJtIiwidmVyc2lvbklkIiwicGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyIiwid2Vla0lkIiwicG9zaXRpb24iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/lib/services.ts\n")); +eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFeed: function() { return /* binding */ getFeed; },\n/* harmony export */ getIngestionStatus: function() { return /* binding */ getIngestionStatus; },\n/* harmony export */ getLeaderboard: function() { return /* binding */ getLeaderboard; },\n/* harmony export */ patchCurriculumWeekOrder: function() { return /* binding */ patchCurriculumWeekOrder; },\n/* harmony export */ postComplete: function() { return /* binding */ postComplete; },\n/* harmony export */ postCurriculumConfirm: function() { return /* binding */ postCurriculumConfirm; },\n/* harmony export */ postGenerateAll: function() { return /* binding */ postGenerateAll; },\n/* harmony export */ postIngest: function() { return /* binding */ postIngest; }\n/* harmony export */ });\nvar _process_env_NEXT_PUBLIC_INGESTION_URL;\nconst INGESTION_URL = (_process_env_NEXT_PUBLIC_INGESTION_URL = \"http://localhost:3001\") !== null && _process_env_NEXT_PUBLIC_INGESTION_URL !== void 0 ? _process_env_NEXT_PUBLIC_INGESTION_URL : \"http://localhost:3001\";\nvar _process_env_NEXT_PUBLIC_GENERATION_URL;\nconst GENERATION_URL = (_process_env_NEXT_PUBLIC_GENERATION_URL = \"http://localhost:3002\") !== null && _process_env_NEXT_PUBLIC_GENERATION_URL !== void 0 ? _process_env_NEXT_PUBLIC_GENERATION_URL : \"http://localhost:3002\";\nvar _process_env_NEXT_PUBLIC_CURRICULUM_URL;\nconst CURRICULUM_URL = (_process_env_NEXT_PUBLIC_CURRICULUM_URL = \"http://localhost:3003\") !== null && _process_env_NEXT_PUBLIC_CURRICULUM_URL !== void 0 ? _process_env_NEXT_PUBLIC_CURRICULUM_URL : \"http://localhost:3003\";\nvar _process_env_NEXT_PUBLIC_PROGRESS_URL;\nconst PROGRESS_URL = (_process_env_NEXT_PUBLIC_PROGRESS_URL = \"http://localhost:3005\") !== null && _process_env_NEXT_PUBLIC_PROGRESS_URL !== void 0 ? _process_env_NEXT_PUBLIC_PROGRESS_URL : \"http://localhost:3005\";\nasync function handleResponse(res) {\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n return res.json();\n}\nasync function postIngest(payload) {\n const res = await fetch(\"\".concat(INGESTION_URL, \"/ingest\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getIngestionStatus(jobId) {\n const res = await fetch(\"\".concat(INGESTION_URL, \"/ingest/status/\").concat(encodeURIComponent(jobId)));\n return handleResponse(res);\n}\nasync function postGenerateAll(themeId) {\n const res = await fetch(\"\".concat(GENERATION_URL, \"/generate\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n themeId\n })\n });\n const data = await handleResponse(res);\n return {\n queued: data.totalItems\n };\n}\nasync function postComplete(payload) {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/complete\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getLeaderboard() {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/leaderboard\"));\n return handleResponse(res);\n}\nasync function getFeed() {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/feed\"));\n return handleResponse(res);\n}\nasync function postCurriculumConfirm(versionId) {\n const res = await fetch(\"\".concat(CURRICULUM_URL, \"/curriculum/versions/\").concat(encodeURIComponent(versionId), \"/confirm\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n}\nasync function patchCurriculumWeekOrder(weekId, position) {\n const res = await fetch(\"\".concat(CURRICULUM_URL, \"/curriculum/weeks/\").concat(encodeURIComponent(weekId), \"/order\"), {\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n position\n })\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n}\n\n\n;\n // Wrapped in an IIFE to avoid polluting the global scope\n ;\n (function () {\n var _a, _b;\n // Legacy CSS implementations will `eval` browser code in a Node.js context\n // to extract CSS. For backwards compatibility, we need to check we're in a\n // browser context before continuing.\n if (typeof self !== 'undefined' &&\n // AMP / No-JS mode does not inject these helpers:\n '$RefreshHelpers$' in self) {\n // @ts-ignore __webpack_module__ is global\n var currentExports = module.exports;\n // @ts-ignore __webpack_module__ is global\n var prevSignature = (_b = (_a = module.hot.data) === null || _a === void 0 ? void 0 : _a.prevSignature) !== null && _b !== void 0 ? _b : null;\n // This cannot happen in MainTemplate because the exports mismatch between\n // templating and execution.\n self.$RefreshHelpers$.registerExportsForReactRefresh(currentExports, module.id);\n // A module can be accepted automatically based on its exports, e.g. when\n // it is a Refresh Boundary.\n if (self.$RefreshHelpers$.isReactRefreshBoundary(currentExports)) {\n // Save the previous exports signature on update so we can compare the boundary\n // signatures. We avoid saving exports themselves since it causes memory leaks (https://github.com/vercel/next.js/pull/53797)\n module.hot.dispose(function (data) {\n data.prevSignature =\n self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports);\n });\n // Unconditionally accept an update to this module, we'll check if it's\n // still a Refresh Boundary later.\n // @ts-ignore importMeta is replaced in the loader\n module.hot.accept();\n // This field is set when the previous version of this module was a\n // Refresh Boundary, letting us know we need to check for invalidation or\n // enqueue an update.\n if (prevSignature !== null) {\n // A boundary can become ineligible if its exports are incompatible\n // with the previous exports.\n //\n // For example, if you add/remove/change exports, we'll want to\n // re-execute the importing modules, and force those components to\n // re-render. Similarly, if you convert a class component to a\n // function, we want to invalidate the boundary.\n if (self.$RefreshHelpers$.shouldInvalidateReactRefreshBoundary(prevSignature, self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports))) {\n module.hot.invalidate();\n }\n else {\n self.$RefreshHelpers$.scheduleUpdate();\n }\n }\n }\n else {\n // Since we just executed the code for the module, it's possible that the\n // new exports made it ineligible for being a boundary.\n // We only care about the case when we were _previously_ a boundary,\n // because we already accepted this update (accidental side effect).\n var isNoLongerABoundary = prevSignature !== null;\n if (isNoLongerABoundary) {\n module.hot.invalidate();\n }\n }\n }\n })();\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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QXlCQyxNQUFjLEVBQUVDLFFBQWdCO0lBQzdFLE1BQU0vQixNQUFNLE1BQU1VLE1BQ2hCLEdBQXNDUSxPQUFuQ3ZCLGdCQUFlLHNCQUErQyxPQUEzQnVCLG1CQUFtQlksU0FBUSxXQUNqRTtRQUNFbkIsUUFBUTtRQUNSQyxTQUFTO1lBQUUsZ0JBQWdCO1FBQW1CO1FBQzlDQyxNQUFNQyxLQUFLQyxTQUFTLENBQUM7WUFBRWdCO1FBQVM7SUFDbEM7SUFFRixJQUFJLENBQUMvQixJQUFJQyxFQUFFLEVBQUU7UUFDWCxNQUFNQyxPQUFPLE1BQU1GLElBQUlFLElBQUksR0FBR0MsS0FBSyxDQUFDLElBQU1ILElBQUlJLFVBQVU7UUFDeEQsTUFBTSxJQUFJQyxNQUFNLFFBQXVCSCxPQUFmRixJQUFJTSxNQUFNLEVBQUMsTUFBUyxPQUFMSjtJQUN6QztBQUNGIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL3NyYy9saWIvc2VydmljZXMudHM/MDcwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIEluZ2VzdGlvbkpvYlN0YXR1cyxcbiAgQ29tcGxldGVQYXlsb2FkLFxuICBDb21wbGV0ZVJlc3BvbnNlLFxuICBMZWFkZXJib2FyZEVudHJ5LFxuICBGZWVkRW50cnksXG59IGZyb20gJ0AvdHlwZXMnXG5cbmNvbnN0IElOR0VTVElPTl9VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19JTkdFU1RJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDEnXG5jb25zdCBHRU5FUkFUSU9OX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0dFTkVSQVRJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDInXG5jb25zdCBDVVJSSUNVTFVNX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDMnXG5jb25zdCBQUk9HUkVTU19VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19QUk9HUkVTU19VUkwgPz8gJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwNSdcblxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlUmVzcG9uc2U8VD4ocmVzOiBSZXNwb25zZSk6IFByb21pc2U8VD4ge1xuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxuICByZXR1cm4gcmVzLmpzb24oKSBhcyBQcm9taXNlPFQ+XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0SW5nZXN0KHBheWxvYWQ6IHtcbiAgZG9jdW1lbnRJZDogc3RyaW5nXG4gIGZpbGVuYW1lOiBzdHJpbmdcbiAgZm9ybWF0OiAncGRmJyB8ICdtZCcgfCAndHh0J1xuICBmaWxlVXJsOiBzdHJpbmdcbn0pOiBQcm9taXNlPHsgam9iSWQ6IHN0cmluZyB9PiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdGAsIHtcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICBib2R5OiBKU09OLnN0cmluZ2lmeShwYXlsb2FkKSxcbiAgfSlcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPHsgam9iSWQ6IHN0cmluZyB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRJbmdlc3Rpb25TdGF0dXMoam9iSWQ6IHN0cmluZyk6IFByb21pc2U8SW5nZXN0aW9uSm9iU3RhdHVzPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdC9zdGF0dXMvJHtlbmNvZGVVUklDb21wb25lbnQoam9iSWQpfWApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxJbmdlc3Rpb25Kb2JTdGF0dXM+KHJlcylcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHBvc3RHZW5lcmF0ZUFsbCh0aGVtZUlkOiBzdHJpbmcpOiBQcm9taXNlPHsgcXVldWVkOiBudW1iZXIgfT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtHRU5FUkFUSU9OX1VSTH0vZ2VuZXJhdGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkoeyB0aGVtZUlkIH0pLFxuICB9KVxuICBjb25zdCBkYXRhID0gYXdhaXQgaGFuZGxlUmVzcG9uc2U8eyBqb2JJZDogc3RyaW5nOyB0b3RhbEl0ZW1zOiBudW1iZXIgfT4ocmVzKVxuICByZXR1cm4geyBxdWV1ZWQ6IGRhdGEudG90YWxJdGVtcyB9XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0Q29tcGxldGUocGF5bG9hZDogQ29tcGxldGVQYXlsb2FkKTogUHJvbWlzZTxDb21wbGV0ZVJlc3BvbnNlPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vY29tcGxldGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkocGF5bG9hZCksXG4gIH0pXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxDb21wbGV0ZVJlc3BvbnNlPihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRMZWFkZXJib2FyZCgpOiBQcm9taXNlPExlYWRlcmJvYXJkRW50cnlbXT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtQUk9HUkVTU19VUkx9L2xlYWRlcmJvYXJkYClcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPExlYWRlcmJvYXJkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0RmVlZCgpOiBQcm9taXNlPEZlZWRFbnRyeVtdPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vZmVlZGApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxGZWVkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcG9zdEN1cnJpY3VsdW1Db25maXJtKHZlcnNpb25JZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3ZlcnNpb25zLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHZlcnNpb25JZCl9L2NvbmZpcm1gLFxuICAgIHtcbiAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyKHdlZWtJZDogc3RyaW5nLCBwb3NpdGlvbjogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3dlZWtzLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHdlZWtJZCl9L29yZGVyYCxcbiAgICB7XG4gICAgICBtZXRob2Q6ICdQQVRDSCcsXG4gICAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHsgcG9zaXRpb24gfSksXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuIl0sIm5hbWVzIjpbInByb2Nlc3MiLCJJTkdFU1RJT05fVVJMIiwiZW52IiwiTkVYVF9QVUJMSUNfSU5HRVNUSU9OX1VSTCIsIkdFTkVSQVRJT05fVVJMIiwiTkVYVF9QVUJMSUNfR0VORVJBVElPTl9VUkwiLCJDVVJSSUNVTFVNX1VSTCIsIk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMIiwiUFJPR1JFU1NfVVJMIiwiTkVYVF9QVUJMSUNfUFJPR1JFU1NfVVJMIiwiaGFuZGxlUmVzcG9uc2UiLCJyZXMiLCJvayIsInRleHQiLCJjYXRjaCIsInN0YXR1c1RleHQiLCJFcnJvciIsInN0YXR1cyIsImpzb24iLCJwb3N0SW5nZXN0IiwicGF5bG9hZCIsImZldGNoIiwibWV0aG9kIiwiaGVhZGVycyIsImJvZHkiLCJKU09OIiwic3RyaW5naWZ5IiwiZ2V0SW5nZXN0aW9uU3RhdHVzIiwiam9iSWQiLCJlbmNvZGVVUklDb21wb25lbnQiLCJwb3N0R2VuZXJhdGVBbGwiLCJ0aGVtZUlkIiwiZGF0YSIsInF1ZXVlZCIsInRvdGFsSXRlbXMiLCJwb3N0Q29tcGxldGUiLCJnZXRMZWFkZXJib2FyZCIsImdldEZlZWQiLCJwb3N0Q3VycmljdWx1bUNvbmZpcm0iLCJ2ZXJzaW9uSWQiLCJwYXRjaEN1cnJpY3VsdW1XZWVrT3JkZXIiLCJ3ZWVrSWQiLCJwb3NpdGlvbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/lib/services.ts\n")); /***/ }), diff --git a/app/frontend/.next/static/chunks/app/admin/documents/page.js b/app/frontend/.next/static/chunks/app/admin/documents/page.js index bc3c637..adb1252 100644 --- a/app/frontend/.next/static/chunks/app/admin/documents/page.js +++ b/app/frontend/.next/static/chunks/app/admin/documents/page.js @@ -36,7 +36,7 @@ eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* har /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DocumentUpload: function() { return /* binding */ DocumentUpload; }\n/* harmony export */ });\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-dev-runtime */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/jsx-dev-runtime.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _components_ui_Button__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/components/ui/Button */ \"(app-pages-browser)/./src/components/ui/Button.tsx\");\n/* harmony import */ var _components_ui_ProgressBar__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/components/ui/ProgressBar */ \"(app-pages-browser)/./src/components/ui/ProgressBar.tsx\");\n/* harmony import */ var _lib_hooks_useIngestionStatus__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @/lib/hooks/useIngestionStatus */ \"(app-pages-browser)/./src/lib/hooks/useIngestionStatus.ts\");\n/* harmony import */ var _lib_pocketbase__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/lib/pocketbase */ \"(app-pages-browser)/./src/lib/pocketbase.ts\");\n/* harmony import */ var _lib_services__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @/lib/services */ \"(app-pages-browser)/./src/lib/services.ts\");\n/* __next_internal_client_entry_do_not_use__ DocumentUpload auto */ \nvar _s = $RefreshSig$();\n\n\n\n\n\n\nfunction DocumentUpload(param) {\n let { onSuccess } = param;\n _s();\n const fileInputRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);\n const [uploading, setUploading] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n const [jobId, setJobId] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const [uploadError, setUploadError] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const [dragOver, setDragOver] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n const { status, progress } = (0,_lib_hooks_useIngestionStatus__WEBPACK_IMPORTED_MODULE_4__.useIngestionStatus)(jobId);\n const handleFiles = (0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)(async (files)=>{\n if (!files || files.length === 0) return;\n const file = files[0];\n if (!file) return;\n const allowed = [\n \".pdf\",\n \".md\",\n \".txt\"\n ];\n const ext = file.name.slice(file.name.lastIndexOf(\".\")).toLowerCase();\n if (!allowed.includes(ext)) {\n setUploadError(\"Unsupported file type: \".concat(ext, \". Use PDF, MD, or TXT.\"));\n return;\n }\n setUploadError(null);\n setUploading(true);\n setJobId(null);\n try {\n // Create record in PocketBase\n const format = ext.slice(1);\n const fd = new FormData();\n fd.append(\"file\", file);\n fd.append(\"filename\", file.name);\n fd.append(\"format\", format);\n fd.append(\"status\", \"processing\");\n const doc = await _lib_pocketbase__WEBPACK_IMPORTED_MODULE_5__.pb.collection(\"source_documents\").create(fd);\n var _process_env_NEXT_PUBLIC_POCKETBASE_URL;\n // Build PocketBase file download URL\n const pbUrl = (_process_env_NEXT_PUBLIC_POCKETBASE_URL = \"http://localhost:8090\") !== null && _process_env_NEXT_PUBLIC_POCKETBASE_URL !== void 0 ? _process_env_NEXT_PUBLIC_POCKETBASE_URL : \"http://localhost:8090\";\n const fileUrl = \"\".concat(pbUrl, \"/api/files/source_documents/\").concat(doc.id, \"/\").concat(doc.file);\n // Kick off ingestion\n const { jobId: jId } = await (0,_lib_services__WEBPACK_IMPORTED_MODULE_6__.postIngest)({\n documentId: doc.id,\n filename: file.name,\n format,\n fileUrl\n });\n setJobId(jId);\n } catch (err) {\n setUploadError(err instanceof Error ? err.message : \"Upload failed\");\n } finally{\n setUploading(false);\n }\n }, []);\n function handleChange(e) {\n void handleFiles(e.target.files);\n e.target.value = \"\";\n }\n function handleDrop(e) {\n e.preventDefault();\n setDragOver(false);\n void handleFiles(e.dataTransfer.files);\n }\n function handleDragOver(e) {\n e.preventDefault();\n setDragOver(true);\n }\n function handleDragLeave() {\n setDragOver(false);\n }\n const isDone = (status === null || status === void 0 ? void 0 : status.status) === \"done\";\n const isFailed = (status === null || status === void 0 ? void 0 : status.status) === \"failed\";\n if (isDone && jobId) {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n background: \"var(--success)\",\n borderRadius: \"var(--r-md)\",\n padding: \"var(--s-5)\",\n textAlign: \"center\",\n display: \"flex\",\n flexDirection: \"column\",\n gap: \"var(--s-3)\"\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n style: {\n margin: 0,\n fontWeight: 600,\n color: \"var(--teal-900)\"\n },\n children: [\n \"Ingestion complete! \",\n status.themesFound,\n \" themes, \",\n status.topicsFound,\n \" topics found.\"\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 107,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_Button__WEBPACK_IMPORTED_MODULE_2__.Button, {\n variant: \"secondary\",\n size: \"sm\",\n onClick: ()=>{\n setJobId(null);\n onSuccess();\n },\n children: \"Upload another\"\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 110,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 96,\n columnNumber: 7\n }, this);\n }\n var _status_reason;\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n display: \"flex\",\n flexDirection: \"column\",\n gap: \"var(--s-4)\"\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n onDrop: handleDrop,\n onDragOver: handleDragOver,\n onDragLeave: handleDragLeave,\n onClick: ()=>{\n var _fileInputRef_current;\n return (_fileInputRef_current = fileInputRef.current) === null || _fileInputRef_current === void 0 ? void 0 : _fileInputRef_current.click();\n },\n style: {\n border: \"2px dashed \".concat(dragOver ? \"var(--accent)\" : \"var(--cream)\"),\n borderRadius: \"var(--r-lg)\",\n padding: \"var(--s-8, 64px) var(--s-5)\",\n textAlign: \"center\",\n cursor: \"pointer\",\n background: dragOver ? \"var(--accent-soft)\" : \"var(--bg-warm)\",\n transition: \"background 150ms, border-color 150ms\"\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"input\", {\n ref: fileInputRef,\n type: \"file\",\n accept: \".pdf,.md,.txt\",\n style: {\n display: \"none\"\n },\n onChange: handleChange\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 141,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n style: {\n margin: \"0 0 var(--s-2)\",\n fontSize: \"var(--t-lead)\",\n fontWeight: 600,\n color: \"var(--fg)\"\n },\n children: \"Drop a document here\"\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 148,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n style: {\n margin: 0,\n fontSize: \"var(--t-small)\",\n color: \"var(--fg-muted)\"\n },\n children: \"or tap to browse — PDF, Markdown, TXT\"\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 158,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 126,\n columnNumber: 7\n }, this),\n uploadError && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n background: \"#f8d7da\",\n color: \"#c0392b\",\n borderRadius: \"var(--r-sm)\",\n padding: \"var(--s-3) var(--s-4)\",\n fontSize: \"var(--t-small)\"\n },\n children: uploadError\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 164,\n columnNumber: 9\n }, this),\n (uploading || jobId) && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n display: \"flex\",\n flexDirection: \"column\",\n gap: \"var(--s-2)\"\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_ProgressBar__WEBPACK_IMPORTED_MODULE_3__.ProgressBar, {\n value: uploading ? 5 : progress,\n label: uploading ? \"Uploading…\" : isFailed ? \"Failed: \".concat((_status_reason = status === null || status === void 0 ? void 0 : status.reason) !== null && _status_reason !== void 0 ? _status_reason : \"unknown error\") : (status === null || status === void 0 ? void 0 : status.status) ? \"\".concat(status.status.charAt(0).toUpperCase()).concat(status.status.slice(1), \"…\") : \"Processing…\",\n color: isFailed ? \"#c0392b\" : \"var(--accent)\"\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 179,\n columnNumber: 11\n }, this),\n status && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n fontSize: \"var(--t-small)\",\n color: \"var(--fg-muted)\",\n display: \"flex\",\n gap: \"var(--s-4)\",\n flexWrap: \"wrap\"\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n children: [\n \"Chunks: \",\n status.chunksEmbedded,\n \"/\",\n status.chunksTotal\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 202,\n columnNumber: 15\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n children: [\n \"Themes: \",\n status.themesFound\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 203,\n columnNumber: 15\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n children: [\n \"Topics: \",\n status.topicsFound\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 204,\n columnNumber: 15\n }, this)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 193,\n columnNumber: 13\n }, this)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 178,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 125,\n columnNumber: 5\n }, this);\n}\n_s(DocumentUpload, \"YWcKUF7Ga0zlCuEtKN+CCdia0aE=\", false, function() {\n return [\n _lib_hooks_useIngestionStatus__WEBPACK_IMPORTED_MODULE_4__.useIngestionStatus\n ];\n});\n_c = DocumentUpload;\nvar _c;\n$RefreshReg$(_c, \"DocumentUpload\");\n\n\n;\n // Wrapped in an IIFE to avoid polluting the global scope\n ;\n (function () {\n var _a, _b;\n // Legacy CSS implementations will `eval` browser code in a Node.js context\n // to extract CSS. For backwards compatibility, we need to check we're in a\n // browser context before continuing.\n if (typeof self !== 'undefined' &&\n // AMP / No-JS mode does not inject these helpers:\n '$RefreshHelpers$' in self) {\n // @ts-ignore __webpack_module__ is global\n var currentExports = module.exports;\n // @ts-ignore __webpack_module__ is global\n var prevSignature = (_b = (_a = module.hot.data) === null || _a === void 0 ? void 0 : _a.prevSignature) !== null && _b !== void 0 ? _b : null;\n // This cannot happen in MainTemplate because the exports mismatch between\n // templating and execution.\n self.$RefreshHelpers$.registerExportsForReactRefresh(currentExports, module.id);\n // A module can be accepted automatically based on its exports, e.g. when\n // it is a Refresh Boundary.\n if (self.$RefreshHelpers$.isReactRefreshBoundary(currentExports)) {\n // Save the previous exports signature on update so we can compare the boundary\n // signatures. We avoid saving exports themselves since it causes memory leaks (https://github.com/vercel/next.js/pull/53797)\n module.hot.dispose(function (data) {\n data.prevSignature =\n self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports);\n });\n // Unconditionally accept an update to this module, we'll check if it's\n // still a Refresh Boundary later.\n // @ts-ignore importMeta is replaced in the loader\n module.hot.accept();\n // This field is set when the previous version of this module was a\n // Refresh Boundary, letting us know we need to check for invalidation or\n // enqueue an update.\n if (prevSignature !== null) {\n // A boundary can become ineligible if its exports are incompatible\n // with the previous exports.\n //\n // For example, if you add/remove/change exports, we'll want to\n // re-execute the importing modules, and force those components to\n // re-render. Similarly, if you convert a class component to a\n // function, we want to invalidate the boundary.\n if (self.$RefreshHelpers$.shouldInvalidateReactRefreshBoundary(prevSignature, self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports))) {\n module.hot.invalidate();\n }\n else {\n self.$RefreshHelpers$.scheduleUpdate();\n }\n }\n }\n else {\n // Since we just executed the code for the module, it's possible that the\n // new exports made it ineligible for being a boundary.\n // We only care about the case when we were _previously_ a boundary,\n // because we already accepted this update (accidental side effect).\n var isNoLongerABoundary = prevSignature !== null;\n if (isNoLongerABoundary) {\n module.hot.invalidate();\n }\n }\n }\n })();\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL3NyYy9jb21wb25lbnRzL2FkbWluL0RvY3VtZW50VXBsb2FkLnRzeCIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztBQUM0RDtBQUNiO0FBQ1U7QUFDVTtBQUM5QjtBQUNNO0FBTXBDLFNBQVNTLGVBQWUsS0FBa0M7UUFBbEMsRUFBRUMsU0FBUyxFQUF1QixHQUFsQzs7SUFDN0IsTUFBTUMsZUFBZVYsNkNBQU1BLENBQW1CO0lBQzlDLE1BQU0sQ0FBQ1csV0FBV0MsYUFBYSxHQUFHWCwrQ0FBUUEsQ0FBQztJQUMzQyxNQUFNLENBQUNZLE9BQU9DLFNBQVMsR0FBR2IsK0NBQVFBLENBQWdCO0lBQ2xELE1BQU0sQ0FBQ2MsYUFBYUMsZUFBZSxHQUFHZiwrQ0FBUUEsQ0FBZ0I7SUFDOUQsTUFBTSxDQUFDZ0IsVUFBVUMsWUFBWSxHQUFHakIsK0NBQVFBLENBQUM7SUFFekMsTUFBTSxFQUFFa0IsTUFBTSxFQUFFQyxRQUFRLEVBQUUsR0FBR2YsaUZBQWtCQSxDQUFDUTtJQUVoRCxNQUFNUSxjQUFjbkIsa0RBQVdBLENBQzdCLE9BQU9vQjtRQUNMLElBQUksQ0FBQ0EsU0FBU0EsTUFBTUMsTUFBTSxLQUFLLEdBQUc7UUFDbEMsTUFBTUMsT0FBT0YsS0FBSyxDQUFDLEVBQUU7UUFDckIsSUFBSSxDQUFDRSxNQUFNO1FBRVgsTUFBTUMsVUFBVTtZQUFDO1lBQVE7WUFBTztTQUFPO1FBQ3ZDLE1BQU1DLE1BQU1GLEtBQUtHLElBQUksQ0FBQ0MsS0FBSyxDQUFDSixLQUFLRyxJQUFJLENBQUNFLFdBQVcsQ0FBQyxNQUFNQyxXQUFXO1FBQ25FLElBQUksQ0FBQ0wsUUFBUU0sUUFBUSxDQUFDTCxNQUFNO1lBQzFCVixlQUFlLDBCQUE4QixPQUFKVSxLQUFJO1lBQzdDO1FBQ0Y7UUFFQVYsZUFBZTtRQUNmSixhQUFhO1FBQ2JFLFNBQVM7UUFFVCxJQUFJO1lBQ0YsOEJBQThCO1lBQzlCLE1BQU1rQixTQUFTTixJQUFJRSxLQUFLLENBQUM7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TixTQUFTOzRCQUNURSxLQUFLOzRCQUNMNEIsVUFBVTt3QkFDWjs7MENBRUEsOERBQUNDOztvQ0FBSztvQ0FBU2hGLE9BQU9pRixjQUFjO29DQUFDO29DQUFFakYsT0FBT2tGLFdBQVc7Ozs7Ozs7MENBQ3pELDhEQUFDRjs7b0NBQUs7b0NBQVNoRixPQUFPd0QsV0FBVzs7Ozs7OzswQ0FDakMsOERBQUN3Qjs7b0NBQUs7b0NBQVNoRixPQUFPeUQsV0FBVzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQU8vQztHQXRNZ0JwRTs7UUFPZUgsNkVBQWtCQTs7O0tBUGpDRyIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9zcmMvY29tcG9uZW50cy9hZG1pbi9Eb2N1bWVudFVwbG9hZC50c3g/NzkzMCJdLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIGNsaWVudCdcbmltcG9ydCBSZWFjdCwgeyB1c2VSZWYsIHVzZVN0YXRlLCB1c2VDYWxsYmFjayB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgQnV0dG9uIH0gZnJvbSAnQC9jb21wb25lbnRzL3VpL0J1dHRvbidcbmltcG9ydCB7IFByb2dyZXNzQmFyIH0gZnJvbSAnQC9jb21wb25lbnRzL3VpL1Byb2dyZXNzQmFyJ1xuaW1wb3J0IHsgdXNlSW5nZXN0aW9uU3RhdHVzIH0gZnJvbSAnQC9saWIvaG9va3MvdXNlSW5nZXN0aW9uU3RhdHVzJ1xuaW1wb3J0IHsgcGIgfSBmcm9tICdAL2xpYi9wb2NrZXRiYXNlJ1xuaW1wb3J0IHsgcG9zdEluZ2VzdCB9IGZyb20gJ0AvbGliL3NlcnZpY2VzJ1xuXG5pbnRlcmZhY2UgRG9jdW1lbnRVcGxvYWRQcm9wcyB7XG4gIG9uU3VjY2VzczogKCkgPT4gdm9pZFxufVxuXG5leHBvcnQgZnVuY3Rpb24gRG9jdW1lbnRVcGxvYWQoeyBvblN1Y2Nlc3MgfTogRG9jdW1lbnRVcGxvYWRQcm9wcykge1xuICBjb25zdCBmaWxlSW5wdXRSZWYgPSB1c2VSZWY8SFRNTElucHV0RWxlbWVudD4obnVsbClcbiAgY29uc3QgW3VwbG9hZGluZywgc2V0VXBsb2FkaW5nXSA9IHVzZVN0YXRlKGZhbHNlKVxuICBjb25zdCBbam9iSWQsIHNldEpvYklkXSA9IHVzZVN0YXRlPHN0cmluZyB8IG51bGw+KG51bGwpXG4gIGNvbnN0IFt1cGxvYWRFcnJvciwgc2V0VXBsb2FkRXJyb3JdID0gdXNlU3RhdGU8c3RyaW5nIHwgbnVsbD4obnVsbClcbiAgY29uc3QgW2RyYWdPdmVyLCBzZXREcmFnT3Zlcl0gPSB1c2VTdGF0ZShmYWxzZSlcblxuICBjb25zdCB7IHN0YXR1cywgcHJvZ3Jlc3MgfSA9IHVzZUluZ2VzdGlvblN0YXR1cyhqb2JJZClcblxuICBjb25zdCBoYW5kbGVGaWxlcyA9IHVzZUNhbGxiYWNrKFxuICAgIGFzeW5jIChmaWxlczogRmlsZUxpc3QgfCBudWxsKSA9PiB7XG4gICAgICBpZiAoIWZpbGVzIHx8IGZpbGVzLmxlbmd0aCA9PT0gMCkgcmV0dXJuXG4gICAgICBjb25zdCBmaWxlID0gZmlsZXNbMF1cbiAgICAgIGlmICghZmlsZSkgcmV0dXJuXG5cbiAgICAgIGNvbnN0IGFsbG93ZWQgPSBbJy5wZGYnLCAnLm1kJywgJy50eHQnXVxuICAgICAgY29uc3QgZXh0ID0gZmlsZS5uYW1lLnNsaWNlKGZpbGUubmFtZS5sYXN0SW5kZXhPZignLicpKS50b0xvd2VyQ2FzZSgpXG4gICAgICBpZiAoIWFsbG93ZWQuaW5jbHVkZXMoZXh0KSkge1xuICAgICAgICBzZXRVcGxvYWRFcnJvcihgVW5zdXBwb3J0ZWQgZmlsZSB0eXBlOiAke2V4dH0uIFVzZSBQREYsIE1ELCBvciBUWFQuYClcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIHNldFVwbG9hZEVycm9yKG51bGwpXG4gICAgICBzZXRVcGxvYWRpbmcodHJ1ZSlcbiAgICAgIHNldEpvYklkKG51bGwpXG5cbiAgICAgIHRyeSB7XG4gICAgICAgIC8vIENyZWF0ZSByZWNvcmQgaW4gUG9ja2V0QmFzZVxuICAgICAgICBjb25zdCBmb3JtYXQgPSBleHQuc2xpY2UoMSkgYXMgJ3BkZicgfCAnbWQnIHwgJ3R4dCdcbiAgICAgICAgY29uc3QgZmQgPSBuZXcgRm9ybURhdGEoKVxuICAgICAgICBmZC5hcHBlbmQoJ2ZpbGUnLCBmaWxlKVxuICAgICAgICBmZC5hcHBlbmQoJ2ZpbGVuYW1lJywgZmlsZS5uYW1lKVxuICAgICAgICBmZC5hcHBlbmQoJ2Zvcm1hdCcsIGZvcm1hdClcbiAgICAgICAgZmQuYXBwZW5kKCdzdGF0dXMnLCAncHJvY2Vzc2luZycpXG5cbiAgICAgICAgY29uc3QgZG9jID0gYXdhaXQgcGIuY29sbGVjdGlvbignc291cmNlX2RvY3VtZW50cycpLmNyZWF0ZTx7IGlkOiBzdHJpbmc7IGZpbGU6IHN0cmluZyB9PihmZClcblxuICAgICAgICAvLyBCdWlsZCBQb2NrZXRCYXNlIGZpbGUgZG93bmxvYWQgVVJMXG4gICAgICAgIGNvbnN0IHBiVXJsID0gcHJvY2Vzcy5lbnYuTkVYVF9QVUJMSUNfUE9DS0VUQkFTRV9VUkwgPz8gJ2h0dHA6Ly9sb2NhbGhvc3Q6ODA5MCdcbiAgICAgICAgY29uc3QgZmlsZVVybCA9IGAke3BiVXJsfS9hcGkvZmlsZXMvc291cmNlX2RvY3VtZW50cy8ke2RvYy5pZH0vJHtkb2MuZmlsZX1gXG5cbiAgICAgICAgLy8gS2ljayBvZmYgaW5nZXN0aW9uXG4gICAgICAgIGNvbnN0IHsgam9iSWQ6IGpJZCB9ID0gYXdhaXQgcG9zdEluZ2VzdCh7XG4gICAgICAgICAgZG9jdW1lbnRJZDogZG9jLmlkLFxuICAgICAgICAgIGZpbGVuYW1lOiBmaWxlLm5hbWUsXG4gICAgICAgICAgZm9ybWF0LFxuICAgICAgICAgIGZpbGVVcmwsXG4gICAgICAgIH0pXG4gICAgICAgIHNldEpvYklkKGpJZClcbiAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICBzZXRVcGxvYWRFcnJvcihlcnIgaW5zdGFuY2VvZiBFcnJvciA/IGVyci5tZXNzYWdlIDogJ1VwbG9hZCBmYWlsZWQnKVxuICAgICAgfSBmaW5hbGx5IHtcbiAgICAgICAgc2V0VXBsb2FkaW5nKGZhbHNlKVxuICAgICAgfVxuICAgIH0sXG4gICAgW10sXG4gIClcblxuICBmdW5jdGlvbiBoYW5kbGVDaGFuZ2UoZTogUmVhY3QuQ2hhbmdlRXZlbnQ8SFRNTElucHV0RWxlbWVudD4pIHtcbiAgICB2b2lkIGhhbmRsZUZpbGVzKGUudGFyZ2V0LmZpbGVzKVxuICAgIGUudGFyZ2V0LnZhbHVlID0gJydcbiAgfVxuXG4gIGZ1bmN0aW9uIGhhbmRsZURyb3AoZTogUmVhY3QuRHJhZ0V2ZW50PEhUTUxEaXZFbGVtZW50Pikge1xuICAgIGUucHJldmVudERlZmF1bHQoKVxuICAgIHNldERyYWdPdmVyKGZhbHNlKVxuICAgIHZvaWQgaGFuZGxlRmlsZXMoZS5kYXRhVHJhbnNmZXIuZmlsZXMpXG4gIH1cblxuICBmdW5jdGlvbiBoYW5kbGVEcmFnT3ZlcihlOiBSZWFjdC5EcmFnRXZlbnQ8SFRNTERpdkVsZW1lbnQ+KSB7XG4gICAgZS5wcmV2ZW50RGVmYXVsdCgpXG4gICAgc2V0RHJhZ092ZXIodHJ1ZSlcbiAgfVxuXG4gIGZ1bmN0aW9uIGhhbmRsZURyYWdMZWF2ZSgpIHtcbiAgICBzZXREcmFnT3ZlcihmYWxzZSlcbiAgfVxuXG4gIGNvbnN0IGlzRG9uZSA9IHN0YXR1cz8uc3RhdHVzID09PSAnZG9uZSdcbiAgY29uc3QgaXNGYWlsZWQgPSBzdGF0dXM/LnN0YXR1cyA9PT0gJ2ZhaWxlZCdcblxuICBpZiAoaXNEb25lICYmIGpvYklkKSB7XG4gICAgcmV0dXJuIChcbiAgICAgIDxkaXZcbiAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAndmFyKC0tc3VjY2VzcyknLFxuICAgICAgICAgIGJvcmRlclJhZGl1czogJ3ZhcigtLXItbWQpJyxcbiAgICAgICAgICBwYWRkaW5nOiAndmFyKC0tcy01KScsXG4gICAgICAgICAgdGV4dEFsaWduOiAnY2VudGVyJyxcbiAgICAgICAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAgICAgICAgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsXG4gICAgICAgICAgZ2FwOiAndmFyKC0tcy0zKScsXG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIDxwIHN0eWxlPXt7IG1hcmdpbjogMCwgZm9udFdlaWdodDogNjAwLCBjb2xvcjogJ3ZhcigtLXRlYWwtOTAwKScgfX0+XG4gICAgICAgICAgSW5nZXN0aW9uIGNvbXBsZXRlISB7c3RhdHVzLnRoZW1lc0ZvdW5kfSB0aGVtZXMsIHtzdGF0dXMudG9waWNzRm91bmR9IHRvcGljcyBmb3VuZC5cbiAgICAgICAgPC9wPlxuICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgdmFyaWFudD1cInNlY29uZGFyeVwiXG4gICAgICAgICAgc2l6ZT1cInNtXCJcbiAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XG4gICAgICAgICAgICBzZXRKb2JJZChudWxsKVxuICAgICAgICAgICAgb25TdWNjZXNzKClcbiAgICAgICAgICB9fVxuICAgICAgICA+XG4gICAgICAgICAgVXBsb2FkIGFub3RoZXJcbiAgICAgICAgPC9CdXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICApXG4gIH1cblxuICByZXR1cm4gKFxuICAgIDxkaXYgc3R5bGU9e3sgZGlzcGxheTogJ2ZsZXgnLCBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJywgZ2FwOiAndmFyKC0tcy00KScgfX0+XG4gICAgICA8ZGl2XG4gICAgICAgIG9uRHJvcD17aGFuZGxlRHJvcH1cbiAgICAgICAgb25EcmFnT3Zlcj17aGFuZGxlRHJhZ092ZXJ9XG4gICAgICAgIG9uRHJhZ0xlYXZlPXtoYW5kbGVEcmFnTGVhdmV9XG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGZpbGVJbnB1dFJlZi5jdXJyZW50Py5jbGljaygpfVxuICAgICAgICBzdHlsZT17e1xuICAgICAgICAgIGJvcmRlcjogYDJweCBkYXNoZWQgJHtkcmFnT3ZlciA/ICd2YXIoLS1hY2NlbnQpJyA6ICd2YXIoLS1jcmVhbSknfWAsXG4gICAgICAgICAgYm9yZGVyUmFkaXVzOiAndmFyKC0tci1sZyknLFxuICAgICAgICAgIHBhZGRpbmc6ICd2YXIoLS1zLTgsIDY0cHgpIHZhcigtLXMtNSknLFxuICAgICAgICAgIHRleHRBbGlnbjogJ2NlbnRlcicsXG4gICAgICAgICAgY3Vyc29yOiAncG9pbnRlcicsXG4gICAgICAgICAgYmFja2dyb3VuZDogZHJhZ092ZXIgPyAndmFyKC0tYWNjZW50LXNvZnQpJyA6ICd2YXIoLS1iZy13YXJtKScsXG4gICAgICAgICAgdHJhbnNpdGlvbjogJ2JhY2tncm91bmQgMTUwbXMsIGJvcmRlci1jb2xvciAxNTBtcycsXG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgIHJlZj17ZmlsZUlucHV0UmVmfVxuICAgICAgICAgIHR5cGU9XCJmaWxlXCJcbiAgICAgICAgICBhY2NlcHQ9XCIucGRmLC5tZCwudHh0XCJcbiAgICAgICAgICBzdHlsZT17eyBkaXNwbGF5OiAnbm9uZScgfX1cbiAgICAgICAgICBvbkNoYW5nZT17aGFuZGxlQ2hhbmdlfVxuICAgICAgICAvPlxuICAgICAgICA8cFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBtYXJnaW46ICcwIDAgdmFyKC0tcy0yKScsXG4gICAgICAgICAgICBmb250U2l6ZTogJ3ZhcigtLXQtbGVhZCknLFxuICAgICAgICAgICAgZm9udFdlaWdodDogNjAwLFxuICAgICAgICAgICAgY29sb3I6ICd2YXIoLS1mZyknLFxuICAgICAgICAgIH19XG4gICAgICAgID5cbiAgICAgICAgICBEcm9wIGEgZG9jdW1lbnQgaGVyZVxuICAgICAgICA8L3A+XG4gICAgICAgIDxwIHN0eWxlPXt7IG1hcmdpbjogMCwgZm9udFNpemU6ICd2YXIoLS10LXNtYWxsKScsIGNvbG9yOiAndmFyKC0tZmctbXV0ZWQpJyB9fT5cbiAgICAgICAgICBvciB0YXAgdG8gYnJvd3NlIOKAlCBQREYsIE1hcmtkb3duLCBUWFRcbiAgICAgICAgPC9wPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIHt1cGxvYWRFcnJvciAmJiAoXG4gICAgICAgIDxkaXZcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJyNmOGQ3ZGEnLFxuICAgICAgICAgICAgY29sb3I6ICcjYzAzOTJiJyxcbiAgICAgICAgICAgIGJvcmRlclJhZGl1czogJ3ZhcigtLXItc20pJyxcbiAgICAgICAgICAgIHBhZGRpbmc6ICd2YXIoLS1zLTMpIHZhcigtLXMtNCknLFxuICAgICAgICAgICAgZm9udFNpemU6ICd2YXIoLS10LXNtYWxsKScsXG4gICAgICAgICAgfX1cbiAgICAgICAgPlxuICAgICAgICAgIHt1cGxvYWRFcnJvcn1cbiAgICAgICAgPC9kaXY+XG4gICAgICApfVxuXG4gICAgICB7KHVwbG9hZGluZyB8fCBqb2JJZCkgJiYgKFxuICAgICAgICA8ZGl2IHN0eWxlPXt7IGRpc3BsYXk6ICdmbGV4JywgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsIGdhcDogJ3ZhcigtLXMtMiknIH19PlxuICAgICAgICAgIDxQcm9ncmVzc0JhclxuICAgICAgICAgICAgdmFsdWU9e3VwbG9hZGluZyA/IDUgOiBwcm9ncmVzc31cbiAgICAgICAgICAgIGxhYmVsPXtcbiAgICAgICAgICAgICAgdXBsb2FkaW5nXG4gICAgICAgICAgICAgICAgPyAnVXBsb2FkaW5n4oCmJ1xuICAgICAgICAgICAgICAgIDogaXNGYWlsZWRcbiAgICAgICAgICAgICAgICA/IGBGYWlsZWQ6ICR7c3RhdHVzPy5yZWFzb24gPz8gJ3Vua25vd24gZXJyb3InfWBcbiAgICAgICAgICAgICAgICA6IHN0YXR1cz8uc3RhdHVzXG4gICAgICAgICAgICAgICAgPyBgJHtzdGF0dXMuc3RhdHVzLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpfSR7c3RhdHVzLnN0YXR1cy5zbGljZSgxKX3igKZgXG4gICAgICAgICAgICAgICAgOiAnUHJvY2Vzc2luZ+KApidcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbG9yPXtpc0ZhaWxlZCA/ICcjYzAzOTJiJyA6ICd2YXIoLS1hY2NlbnQpJ31cbiAgICAgICAgICAvPlxuICAgICAgICAgIHtzdGF0dXMgJiYgKFxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgIGZvbnRTaXplOiAndmFyKC0tdC1zbWFsbCknLFxuICAgICAgICAgICAgICAgIGNvbG9yOiAndmFyKC0tZmctbXV0ZWQpJyxcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAgICAgICAgICAgICAgZ2FwOiAndmFyKC0tcy00KScsXG4gICAgICAgICAgICAgICAgZmxleFdyYXA6ICd3cmFwJyxcbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPHNwYW4+Q2h1bmtzOiB7c3RhdHVzLmNodW5rc0VtYmVkZGVkfS97c3RhdHVzLmNodW5rc1RvdGFsfTwvc3Bhbj5cbiAgICAgICAgICAgICAgPHNwYW4+VGhlbWVzOiB7c3RhdHVzLnRoZW1lc0ZvdW5kfTwvc3Bhbj5cbiAgICAgICAgICAgICAgPHNwYW4+VG9waWNzOiB7c3RhdHVzLnRvcGljc0ZvdW5kfTwvc3Bhbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICl9XG4gICAgICAgIDwvZGl2PlxuICAgICAgKX1cbiAgICA8L2Rpdj5cbiAgKVxufVxuIl0sIm5hbWVzIjpbIlJlYWN0IiwidXNlUmVmIiwidXNlU3RhdGUiLCJ1c2VDYWxsYmFjayIsIkJ1dHRvbiIsIlByb2dyZXNzQmFyIiwidXNlSW5nZXN0aW9uU3RhdHVzIiwicGIiLCJwb3N0SW5nZXN0IiwiRG9jdW1lbnRVcGxvYWQiLCJvblN1Y2Nlc3MiLCJmaWxlSW5wdXRSZWYiLCJ1cGxvYWRpbmciLCJzZXRVcGxvYWRpbmciLCJqb2JJZCIsInNldEpvYklkIiwidXBsb2FkRXJyb3IiLCJzZXRVcGxvYWRFcnJvciIsImRyYWdPdmVyIiwic2V0RHJhZ092ZXIiLCJzdGF0dXMiLCJwcm9ncmVzcyIsImhhbmRsZUZpbGVzIiwiZmlsZXMiLCJsZW5ndGgiLCJmaWxlIiwiYWxsb3dlZCIsImV4dCIsIm5hbWUiLCJzbGljZSIsImxhc3RJbmRleE9mIiwidG9Mb3dlckNhc2UiLCJpbmNsdWRlcyIsImZvcm1hdCIsImZkIiwiRm9ybURhdGEiLCJhcHBlbmQiLCJkb2MiLCJjb2xsZWN0aW9uIiwiY3JlYXRlIiwicHJvY2VzcyIsInBiVXJsIiwiZW52IiwiTkVYVF9QVUJMSUNfUE9DS0VUQkFTRV9VUkwiLCJmaWxlVXJsIiwiaWQiLCJqSWQiLCJkb2N1bWVudElkIiwiZmlsZW5hbWUiLCJlcnIiLCJFcnJvciIsIm1lc3NhZ2UiLCJoYW5kbGVDaGFuZ2UiLCJlIiwidGFyZ2V0IiwidmFsdWUiLCJoYW5kbGVEcm9wIiwicHJldmVudERlZmF1bHQiLCJkYXRhVHJhbnNmZXIiLCJoYW5kbGVEcmFnT3ZlciIsImhhbmRsZURyYWdMZWF2ZSIsImlzRG9uZSIsImlzRmFpbGVkIiwiZGl2Iiwic3R5bGUiLCJiYWNrZ3JvdW5kIiwiYm9yZGVyUmFkaXVzIiwicGFkZGluZyIsInRleHRBbGlnbiIsImRpc3BsYXkiLCJmbGV4RGlyZWN0aW9uIiwiZ2FwIiwicCIsIm1hcmdpbiIsImZvbnRXZWlnaHQiLCJjb2xvciIsInRoZW1lc0ZvdW5kIiwidG9waWNzRm91bmQiLCJ2YXJpYW50Iiwic2l6ZSIsIm9uQ2xpY2siLCJvbkRyb3AiLCJvbkRyYWdPdmVyIiwib25EcmFnTGVhdmUiLCJjdXJyZW50IiwiY2xpY2siLCJib3JkZXIiLCJjdXJzb3IiLCJ0cmFuc2l0aW9uIiwiaW5wdXQiLCJyZWYiLCJ0eXBlIiwiYWNjZXB0Iiwib25DaGFuZ2UiLCJmb250U2l6ZSIsImxhYmVsIiwicmVhc29uIiwiY2hhckF0IiwidG9VcHBlckNhc2UiLCJmbGV4V3JhcCIsInNwYW4iLCJjaHVua3NFbWJlZGRlZCIsImNodW5rc1RvdGFsIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/components/admin/DocumentUpload.tsx\n")); +eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DocumentUpload: function() { return /* binding */ DocumentUpload; }\n/* harmony export */ });\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-dev-runtime */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/jsx-dev-runtime.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _components_ui_Button__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/components/ui/Button */ \"(app-pages-browser)/./src/components/ui/Button.tsx\");\n/* harmony import */ var _components_ui_ProgressBar__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/components/ui/ProgressBar */ \"(app-pages-browser)/./src/components/ui/ProgressBar.tsx\");\n/* harmony import */ var _lib_hooks_useIngestionStatus__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @/lib/hooks/useIngestionStatus */ \"(app-pages-browser)/./src/lib/hooks/useIngestionStatus.ts\");\n/* harmony import */ var _lib_pocketbase__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/lib/pocketbase */ \"(app-pages-browser)/./src/lib/pocketbase.ts\");\n/* harmony import */ var _lib_services__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @/lib/services */ \"(app-pages-browser)/./src/lib/services.ts\");\n/* __next_internal_client_entry_do_not_use__ DocumentUpload auto */ \nvar _s = $RefreshSig$();\n\n\n\n\n\n\nfunction DocumentUpload(param) {\n let { onSuccess } = param;\n _s();\n const fileInputRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);\n const [uploading, setUploading] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n const [jobId, setJobId] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const [uploadError, setUploadError] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const [dragOver, setDragOver] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n const { status, progress } = (0,_lib_hooks_useIngestionStatus__WEBPACK_IMPORTED_MODULE_4__.useIngestionStatus)(jobId);\n const handleFiles = (0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)(async (files)=>{\n if (!files || files.length === 0) return;\n const file = files[0];\n if (!file) return;\n const allowed = [\n \".pdf\",\n \".md\",\n \".txt\"\n ];\n const ext = file.name.slice(file.name.lastIndexOf(\".\")).toLowerCase();\n if (!allowed.includes(ext)) {\n setUploadError(\"Unsupported file type: \".concat(ext, \". Use PDF, MD, or TXT.\"));\n return;\n }\n setUploadError(null);\n setUploading(true);\n setJobId(null);\n try {\n // Create record in PocketBase\n const format = ext.slice(1);\n // Force explicit MIME type — Windows doesn't register .md and sends\n // application/octet-stream which PocketBase rejects.\n const mimeMap = {\n pdf: \"application/pdf\",\n md: \"text/markdown\",\n txt: \"text/plain\"\n };\n var _mimeMap_format;\n const blob = new Blob([\n file\n ], {\n type: (_mimeMap_format = mimeMap[format]) !== null && _mimeMap_format !== void 0 ? _mimeMap_format : file.type\n });\n const fd = new FormData();\n fd.append(\"file\", blob, file.name);\n fd.append(\"filename\", file.name);\n fd.append(\"format\", format);\n fd.append(\"status\", \"processing\");\n const doc = await _lib_pocketbase__WEBPACK_IMPORTED_MODULE_5__.pb.collection(\"source_documents\").create(fd);\n var _process_env_NEXT_PUBLIC_POCKETBASE_URL;\n // Build PocketBase file download URL\n const pbUrl = (_process_env_NEXT_PUBLIC_POCKETBASE_URL = \"http://localhost:8090\") !== null && _process_env_NEXT_PUBLIC_POCKETBASE_URL !== void 0 ? _process_env_NEXT_PUBLIC_POCKETBASE_URL : \"http://localhost:8090\";\n const fileUrl = \"\".concat(pbUrl, \"/api/files/source_documents/\").concat(doc.id, \"/\").concat(doc.file);\n // Kick off ingestion\n const { jobId: jId } = await (0,_lib_services__WEBPACK_IMPORTED_MODULE_6__.postIngest)({\n documentId: doc.id,\n filename: file.name,\n format,\n fileUrl\n });\n setJobId(jId);\n } catch (err) {\n var _pbErr_response;\n // PocketBase ClientResponseError has a `response` with field details\n const pbErr = err;\n const detail = ((_pbErr_response = pbErr.response) === null || _pbErr_response === void 0 ? void 0 : _pbErr_response.data) ? Object.entries(pbErr.response.data).map((param)=>{\n let [f, v] = param;\n var _v_message;\n return \"\".concat(f, \": \").concat((_v_message = v === null || v === void 0 ? void 0 : v.message) !== null && _v_message !== void 0 ? _v_message : \"\");\n }).join(\", \") : null;\n setUploadError(detail !== null && detail !== void 0 ? detail : err instanceof Error ? err.message : \"Upload failed\");\n } finally{\n setUploading(false);\n }\n }, []);\n function handleChange(e) {\n void handleFiles(e.target.files);\n e.target.value = \"\";\n }\n function handleDrop(e) {\n e.preventDefault();\n setDragOver(false);\n void handleFiles(e.dataTransfer.files);\n }\n function handleDragOver(e) {\n e.preventDefault();\n setDragOver(true);\n }\n function handleDragLeave() {\n setDragOver(false);\n }\n const isDone = (status === null || status === void 0 ? void 0 : status.status) === \"done\";\n const isFailed = (status === null || status === void 0 ? void 0 : status.status) === \"failed\";\n if (isDone && jobId) {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n background: \"var(--success)\",\n borderRadius: \"var(--r-md)\",\n padding: \"var(--s-5)\",\n textAlign: \"center\",\n display: \"flex\",\n flexDirection: \"column\",\n gap: \"var(--s-3)\"\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n style: {\n margin: 0,\n fontWeight: 600,\n color: \"var(--teal-900)\"\n },\n children: [\n \"Ingestion complete! \",\n status.themesFound,\n \" themes, \",\n status.topicsFound,\n \" topics found.\"\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 124,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_Button__WEBPACK_IMPORTED_MODULE_2__.Button, {\n variant: \"secondary\",\n size: \"sm\",\n onClick: ()=>{\n setJobId(null);\n onSuccess();\n },\n children: \"Upload another\"\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 127,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 113,\n columnNumber: 7\n }, this);\n }\n var _status_reason;\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n display: \"flex\",\n flexDirection: \"column\",\n gap: \"var(--s-4)\"\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n onDrop: handleDrop,\n onDragOver: handleDragOver,\n onDragLeave: handleDragLeave,\n onClick: ()=>{\n var _fileInputRef_current;\n return (_fileInputRef_current = fileInputRef.current) === null || _fileInputRef_current === void 0 ? void 0 : _fileInputRef_current.click();\n },\n style: {\n border: \"2px dashed \".concat(dragOver ? \"var(--accent)\" : \"var(--cream)\"),\n borderRadius: \"var(--r-lg)\",\n padding: \"var(--s-8, 64px) var(--s-5)\",\n textAlign: \"center\",\n cursor: \"pointer\",\n background: dragOver ? \"var(--accent-soft)\" : \"var(--bg-warm)\",\n transition: \"background 150ms, border-color 150ms\"\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"input\", {\n ref: fileInputRef,\n type: \"file\",\n accept: \".pdf,.md,.txt\",\n style: {\n display: \"none\"\n },\n onChange: handleChange\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 158,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n style: {\n margin: \"0 0 var(--s-2)\",\n fontSize: \"var(--t-lead)\",\n fontWeight: 600,\n color: \"var(--fg)\"\n },\n children: \"Drop a document here\"\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 165,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n style: {\n margin: 0,\n fontSize: \"var(--t-small)\",\n color: \"var(--fg-muted)\"\n },\n children: \"or tap to browse — PDF, Markdown, TXT\"\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 175,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 143,\n columnNumber: 7\n }, this),\n uploadError && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n background: \"#f8d7da\",\n color: \"#c0392b\",\n borderRadius: \"var(--r-sm)\",\n padding: \"var(--s-3) var(--s-4)\",\n fontSize: \"var(--t-small)\"\n },\n children: uploadError\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 181,\n columnNumber: 9\n }, this),\n (uploading || jobId) && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n display: \"flex\",\n flexDirection: \"column\",\n gap: \"var(--s-2)\"\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_ProgressBar__WEBPACK_IMPORTED_MODULE_3__.ProgressBar, {\n value: uploading ? 5 : progress,\n label: uploading ? \"Uploading…\" : isFailed ? \"Failed: \".concat((_status_reason = status === null || status === void 0 ? void 0 : status.reason) !== null && _status_reason !== void 0 ? _status_reason : \"unknown error\") : (status === null || status === void 0 ? void 0 : status.status) ? \"\".concat(status.status.charAt(0).toUpperCase()).concat(status.status.slice(1), \"…\") : \"Processing…\",\n color: isFailed ? \"#c0392b\" : \"var(--accent)\"\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 196,\n columnNumber: 11\n }, this),\n status && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n fontSize: \"var(--t-small)\",\n color: \"var(--fg-muted)\",\n display: \"flex\",\n gap: \"var(--s-4)\",\n flexWrap: \"wrap\"\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n children: [\n \"Chunks: \",\n status.chunksEmbedded,\n \"/\",\n status.chunksTotal\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 219,\n columnNumber: 15\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n children: [\n \"Themes: \",\n status.themesFound\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 220,\n columnNumber: 15\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n children: [\n \"Topics: \",\n status.topicsFound\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 221,\n columnNumber: 15\n }, this)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 210,\n columnNumber: 13\n }, this)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 195,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 142,\n columnNumber: 5\n }, this);\n}\n_s(DocumentUpload, \"YWcKUF7Ga0zlCuEtKN+CCdia0aE=\", false, function() {\n return [\n _lib_hooks_useIngestionStatus__WEBPACK_IMPORTED_MODULE_4__.useIngestionStatus\n ];\n});\n_c = DocumentUpload;\nvar _c;\n$RefreshReg$(_c, \"DocumentUpload\");\n\n\n;\n // Wrapped in an IIFE to avoid polluting the global scope\n ;\n (function () {\n var _a, _b;\n // Legacy CSS implementations will `eval` browser code in a Node.js context\n // to extract CSS. For backwards compatibility, we need to check we're in a\n // browser context before continuing.\n if (typeof self !== 'undefined' &&\n // AMP / No-JS mode does not inject these helpers:\n '$RefreshHelpers$' in self) {\n // @ts-ignore __webpack_module__ is global\n var currentExports = module.exports;\n // @ts-ignore __webpack_module__ is global\n var prevSignature = (_b = (_a = module.hot.data) === null || _a === void 0 ? void 0 : _a.prevSignature) !== null && _b !== void 0 ? _b : null;\n // This cannot happen in MainTemplate because the exports mismatch between\n // templating and execution.\n self.$RefreshHelpers$.registerExportsForReactRefresh(currentExports, module.id);\n // A module can be accepted automatically based on its exports, e.g. when\n // it is a Refresh Boundary.\n if (self.$RefreshHelpers$.isReactRefreshBoundary(currentExports)) {\n // Save the previous exports signature on update so we can compare the boundary\n // signatures. We avoid saving exports themselves since it causes memory leaks (https://github.com/vercel/next.js/pull/53797)\n module.hot.dispose(function (data) {\n data.prevSignature =\n self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports);\n });\n // Unconditionally accept an update to this module, we'll check if it's\n // still a Refresh Boundary later.\n // @ts-ignore importMeta is replaced in the loader\n module.hot.accept();\n // This field is set when the previous version of this module was a\n // Refresh Boundary, letting us know we need to check for invalidation or\n // enqueue an update.\n if (prevSignature !== null) {\n // A boundary can become ineligible if its exports are incompatible\n // with the previous exports.\n //\n // For example, if you add/remove/change exports, we'll want to\n // re-execute the importing modules, and force those components to\n // re-render. Similarly, if you convert a class component to a\n // function, we want to invalidate the boundary.\n if (self.$RefreshHelpers$.shouldInvalidateReactRefreshBoundary(prevSignature, self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports))) {\n module.hot.invalidate();\n }\n else {\n self.$RefreshHelpers$.scheduleUpdate();\n }\n }\n }\n else {\n // Since we just executed the code for the module, it's possible that the\n // new exports made it ineligible for being a boundary.\n // We only care about the case when we were _previously_ a boundary,\n // because we already accepted this update (accidental side effect).\n var isNoLongerABoundary = prevSignature !== null;\n if (isNoLongerABoundary) {\n module.hot.invalidate();\n }\n }\n }\n })();\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL3NyYy9jb21wb25lbnRzL2FkbWluL0RvY3VtZW50VXBsb2FkLnRzeCIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztBQUM0RDtBQUNiO0FBQ1U7QUFDVTtBQUM5QjtBQUNNO0FBTXBDLFNBQVNTLGVBQWUsS0FBa0M7UUFBbEMsRUFBRUMsU0FBUyxFQUF1QixHQUFsQzs7SUFDN0IsTUFBTUMsZUFBZVYsNkNBQU1BLENBQW1CO0lBQzlDLE1BQU0sQ0FBQ1csV0FBV0MsYUFBYSxHQUFHWCwrQ0FBUUEsQ0FBQztJQUMzQyxNQUFNLENBQUNZLE9BQU9DLFNBQVMsR0FBR2IsK0NBQVFBLENBQWdCO0lBQ2xELE1BQU0sQ0FBQ2MsYUFBYUMsZUFBZSxHQUFHZiwrQ0FBUUEsQ0FBZ0I7SUFDOUQsTUFBTSxDQUFDZ0IsVUFBVUMsWUFBWSxHQUFHakIsK0NBQVFBLENBQUM7SUFFekMsTUFBTSxFQUFFa0IsTUFBTSxFQUFFQyxRQUFRLEVBQUUsR0FBR2YsaUZBQWtCQSxDQUFDUTtJQUVoRCxNQUFNUSxjQUFjbkIsa0RBQVdBLENBQzdCLE9BQU9vQjtRQUNMLElBQUksQ0FBQ0EsU0FBU0EsTUFBTUMsTUFBTSxLQUFLLEdBQUc7UUFDbEMsTUFBTUMsT0FBT0YsS0FBSyxDQUFDLEVBQUU7UUFDckIsSUFBSSxDQUFDRSxNQUFNO1FBRVgsTUFBTUMsVUFBVTtZQUFDO1lBQVE7WUFBTztTQUFPO1FBQ3ZDLE1BQU1DLE1BQU1GLEtBQUtHLElBQUksQ0FBQ0MsS0FBSyxDQUFDSixLQUFLRyxJQUFJLENBQUNFLFdBQVcsQ0FBQyxNQUFNQyxXQUFXO1FBQ25FLElBQUksQ0FBQ0wsUUFBUU0sUUFBUSxDQUFDTCxNQUFNO1lBQzFCVixlQUFlLDBCQUE4QixPQUFKVSxLQUFJO1lBQzdDO1FBQ0Y7UUFFQVYsZUFBZTtRQUNmSixhQUFhO1FBQ2JFLFNBQVM7UUFFVCxJQUFJO1lBQ0YsOEJBQThCO1lBQzlCLE1BQU1rQixTQUFTTixJQUFJRSxLQUFLLENBQUM7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ZC50c3g/NzkzMCJdLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIGNsaWVudCdcbmltcG9ydCBSZWFjdCwgeyB1c2VSZWYsIHVzZVN0YXRlLCB1c2VDYWxsYmFjayB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgQnV0dG9uIH0gZnJvbSAnQC9jb21wb25lbnRzL3VpL0J1dHRvbidcbmltcG9ydCB7IFByb2dyZXNzQmFyIH0gZnJvbSAnQC9jb21wb25lbnRzL3VpL1Byb2dyZXNzQmFyJ1xuaW1wb3J0IHsgdXNlSW5nZXN0aW9uU3RhdHVzIH0gZnJvbSAnQC9saWIvaG9va3MvdXNlSW5nZXN0aW9uU3RhdHVzJ1xuaW1wb3J0IHsgcGIgfSBmcm9tICdAL2xpYi9wb2NrZXRiYXNlJ1xuaW1wb3J0IHsgcG9zdEluZ2VzdCB9IGZyb20gJ0AvbGliL3NlcnZpY2VzJ1xuXG5pbnRlcmZhY2UgRG9jdW1lbnRVcGxvYWRQcm9wcyB7XG4gIG9uU3VjY2VzczogKCkgPT4gdm9pZFxufVxuXG5leHBvcnQgZnVuY3Rpb24gRG9jdW1lbnRVcGxvYWQoeyBvblN1Y2Nlc3MgfTogRG9jdW1lbnRVcGxvYWRQcm9wcykge1xuICBjb25zdCBmaWxlSW5wdXRSZWYgPSB1c2VSZWY8SFRNTElucHV0RWxlbWVudD4obnVsbClcbiAgY29uc3QgW3VwbG9hZGluZywgc2V0VXBsb2FkaW5nXSA9IHVzZVN0YXRlKGZhbHNlKVxuICBjb25zdCBbam9iSWQsIHNldEpvYklkXSA9IHVzZVN0YXRlPHN0cmluZyB8IG51bGw+KG51bGwpXG4gIGNvbnN0IFt1cGxvYWRFcnJvciwgc2V0VXBsb2FkRXJyb3JdID0gdXNlU3RhdGU8c3RyaW5nIHwgbnVsbD4obnVsbClcbiAgY29uc3QgW2RyYWdPdmVyLCBzZXREcmFnT3Zlcl0gPSB1c2VTdGF0ZShmYWxzZSlcblxuICBjb25zdCB7IHN0YXR1cywgcHJvZ3Jlc3MgfSA9IHVzZUluZ2VzdGlvblN0YXR1cyhqb2JJZClcblxuICBjb25zdCBoYW5kbGVGaWxlcyA9IHVzZUNhbGxiYWNrKFxuICAgIGFzeW5jIChmaWxlczogRmlsZUxpc3QgfCBudWxsKSA9PiB7XG4gICAgICBpZiAoIWZpbGVzIHx8IGZpbGVzLmxlbmd0aCA9PT0gMCkgcmV0dXJuXG4gICAgICBjb25zdCBmaWxlID0gZmlsZXNbMF1cbiAgICAgIGlmICghZmlsZSkgcmV0dXJuXG5cbiAgICAgIGNvbnN0IGFsbG93ZWQgPSBbJy5wZGYnLCAnLm1kJywgJy50eHQnXVxuICAgICAgY29uc3QgZXh0ID0gZmlsZS5uYW1lLnNsaWNlKGZpbGUubmFtZS5sYXN0SW5kZXhPZignLicpKS50b0xvd2VyQ2FzZSgpXG4gICAgICBpZiAoIWFsbG93ZWQuaW5jbHVkZXMoZXh0KSkge1xuICAgICAgICBzZXRVcGxvYWRFcnJvcihgVW5zdXBwb3J0ZWQgZmlsZSB0eXBlOiAke2V4dH0uIFVzZSBQREYsIE1ELCBvciBUWFQuYClcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIHNldFVwbG9hZEVycm9yKG51bGwpXG4gICAgICBzZXRVcGxvYWRpbmcodHJ1ZSlcbiAgICAgIHNldEpvYklkKG51bGwpXG5cbiAgICAgIHRyeSB7XG4gICAgICAgIC8vIENyZWF0ZSByZWNvcmQgaW4gUG9ja2V0QmFzZVxuICAgICAgICBjb25zdCBmb3JtYXQgPSBleHQuc2xpY2UoMSkgYXMgJ3BkZicgfCAnbWQnIHwgJ3R4dCdcblxuICAgICAgICAvLyBGb3JjZSBleHBsaWNpdCBNSU1FIHR5cGUg4oCUIFdpbmRvd3MgZG9lc24ndCByZWdpc3RlciAubWQgYW5kIHNlbmRzXG4gICAgICAgIC8vIGFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbSB3aGljaCBQb2NrZXRCYXNlIHJlamVjdHMuXG4gICAgICAgIGNvbnN0IG1pbWVNYXA6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gICAgICAgICAgcGRmOiAnYXBwbGljYXRpb24vcGRmJyxcbiAgICAgICAgICBtZDogJ3RleHQvbWFya2Rvd24nLFxuICAgICAgICAgIHR4dDogJ3RleHQvcGxhaW4nLFxuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGJsb2IgPSBuZXcgQmxvYihbZmlsZV0sIHsgdHlwZTogbWltZU1hcFtmb3JtYXRdID8/IGZpbGUudHlwZSB9KVxuXG4gICAgICAgIGNvbnN0IGZkID0gbmV3IEZvcm1EYXRhKClcbiAgICAgICAgZmQuYXBwZW5kKCdmaWxlJywgYmxvYiwgZmlsZS5uYW1lKVxuICAgICAgICBmZC5hcHBlbmQoJ2ZpbGVuYW1lJywgZmlsZS5uYW1lKVxuICAgICAgICBmZC5hcHBlbmQoJ2Zvcm1hdCcsIGZvcm1hdClcbiAgICAgICAgZmQuYXBwZW5kKCdzdGF0dXMnLCAncHJvY2Vzc2luZycpXG5cbiAgICAgICAgY29uc3QgZG9jID0gYXdhaXQgcGIuY29sbGVjdGlvbignc291cmNlX2RvY3VtZW50cycpLmNyZWF0ZTx7IGlkOiBzdHJpbmc7IGZpbGU6IHN0cmluZyB9PihmZClcblxuICAgICAgICAvLyBCdWlsZCBQb2NrZXRCYXNlIGZpbGUgZG93bmxvYWQgVVJMXG4gICAgICAgIGNvbnN0IHBiVXJsID0gcHJvY2Vzcy5lbnYuTkVYVF9QVUJMSUNfUE9DS0VUQkFTRV9VUkwgPz8gJ2h0dHA6Ly9sb2NhbGhvc3Q6ODA5MCdcbiAgICAgICAgY29uc3QgZmlsZVVybCA9IGAke3BiVXJsfS9hcGkvZmlsZXMvc291cmNlX2RvY3VtZW50cy8ke2RvYy5pZH0vJHtkb2MuZmlsZX1gXG5cbiAgICAgICAgLy8gS2ljayBvZmYgaW5nZXN0aW9uXG4gICAgICAgIGNvbnN0IHsgam9iSWQ6IGpJZCB9ID0gYXdhaXQgcG9zdEluZ2VzdCh7XG4gICAgICAgICAgZG9jdW1lbnRJZDogZG9jLmlkLFxuICAgICAgICAgIGZpbGVuYW1lOiBmaWxlLm5hbWUsXG4gICAgICAgICAgZm9ybWF0LFxuICAgICAgICAgIGZpbGVVcmwsXG4gICAgICAgIH0pXG4gICAgICAgIHNldEpvYklkKGpJZClcbiAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICAvLyBQb2NrZXRCYXNlIENsaWVudFJlc3BvbnNlRXJyb3IgaGFzIGEgYHJlc3BvbnNlYCB3aXRoIGZpZWxkIGRldGFpbHNcbiAgICAgICAgY29uc3QgcGJFcnIgPSBlcnIgYXMgeyByZXNwb25zZT86IHsgbWVzc2FnZT86IHN0cmluZzsgZGF0YT86IFJlY29yZDxzdHJpbmcsIHsgbWVzc2FnZT86IHN0cmluZyB9PiB9IH1cbiAgICAgICAgY29uc3QgZGV0YWlsID0gcGJFcnIucmVzcG9uc2U/LmRhdGFcbiAgICAgICAgICA/IE9iamVjdC5lbnRyaWVzKHBiRXJyLnJlc3BvbnNlLmRhdGEpXG4gICAgICAgICAgICAgIC5tYXAoKFtmLCB2XSkgPT4gYCR7Zn06ICR7dj8ubWVzc2FnZSA/PyAnJ31gKVxuICAgICAgICAgICAgICAuam9pbignLCAnKVxuICAgICAgICAgIDogbnVsbFxuICAgICAgICBzZXRVcGxvYWRFcnJvcihkZXRhaWwgPz8gKGVyciBpbnN0YW5jZW9mIEVycm9yID8gZXJyLm1lc3NhZ2UgOiAnVXBsb2FkIGZhaWxlZCcpKVxuICAgICAgfSBmaW5hbGx5IHtcbiAgICAgICAgc2V0VXBsb2FkaW5nKGZhbHNlKVxuICAgICAgfVxuICAgIH0sXG4gICAgW10sXG4gIClcblxuICBmdW5jdGlvbiBoYW5kbGVDaGFuZ2UoZTogUmVhY3QuQ2hhbmdlRXZlbnQ8SFRNTElucHV0RWxlbWVudD4pIHtcbiAgICB2b2lkIGhhbmRsZUZpbGVzKGUudGFyZ2V0LmZpbGVzKVxuICAgIGUudGFyZ2V0LnZhbHVlID0gJydcbiAgfVxuXG4gIGZ1bmN0aW9uIGhhbmRsZURyb3AoZTogUmVhY3QuRHJhZ0V2ZW50PEhUTUxEaXZFbGVtZW50Pikge1xuICAgIGUucHJldmVudERlZmF1bHQoKVxuICAgIHNldERyYWdPdmVyKGZhbHNlKVxuICAgIHZvaWQgaGFuZGxlRmlsZXMoZS5kYXRhVHJhbnNmZXIuZmlsZXMpXG4gIH1cblxuICBmdW5jdGlvbiBoYW5kbGVEcmFnT3ZlcihlOiBSZWFjdC5EcmFnRXZlbnQ8SFRNTERpdkVsZW1lbnQ+KSB7XG4gICAgZS5wcmV2ZW50RGVmYXVsdCgpXG4gICAgc2V0RHJhZ092ZXIodHJ1ZSlcbiAgfVxuXG4gIGZ1bmN0aW9uIGhhbmRsZURyYWdMZWF2ZSgpIHtcbiAgICBzZXREcmFnT3ZlcihmYWxzZSlcbiAgfVxuXG4gIGNvbnN0IGlzRG9uZSA9IHN0YXR1cz8uc3RhdHVzID09PSAnZG9uZSdcbiAgY29uc3QgaXNGYWlsZWQgPSBzdGF0dXM/LnN0YXR1cyA9PT0gJ2ZhaWxlZCdcblxuICBpZiAoaXNEb25lICYmIGpvYklkKSB7XG4gICAgcmV0dXJuIChcbiAgICAgIDxkaXZcbiAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAndmFyKC0tc3VjY2VzcyknLFxuICAgICAgICAgIGJvcmRlclJhZGl1czogJ3ZhcigtLXItbWQpJyxcbiAgICAgICAgICBwYWRkaW5nOiAndmFyKC0tcy01KScsXG4gICAgICAgICAgdGV4dEFsaWduOiAnY2VudGVyJyxcbiAgICAgICAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAgICAgICAgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsXG4gICAgICAgICAgZ2FwOiAndmFyKC0tcy0zKScsXG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIDxwIHN0eWxlPXt7IG1hcmdpbjogMCwgZm9udFdlaWdodDogNjAwLCBjb2xvcjogJ3ZhcigtLXRlYWwtOTAwKScgfX0+XG4gICAgICAgICAgSW5nZXN0aW9uIGNvbXBsZXRlISB7c3RhdHVzLnRoZW1lc0ZvdW5kfSB0aGVtZXMsIHtzdGF0dXMudG9waWNzRm91bmR9IHRvcGljcyBmb3VuZC5cbiAgICAgICAgPC9wPlxuICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgdmFyaWFudD1cInNlY29uZGFyeVwiXG4gICAgICAgICAgc2l6ZT1cInNtXCJcbiAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XG4gICAgICAgICAgICBzZXRKb2JJZChudWxsKVxuICAgICAgICAgICAgb25TdWNjZXNzKClcbiAgICAgICAgICB9fVxuICAgICAgICA+XG4gICAgICAgICAgVXBsb2FkIGFub3RoZXJcbiAgICAgICAgPC9CdXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICApXG4gIH1cblxuICByZXR1cm4gKFxuICAgIDxkaXYgc3R5bGU9e3sgZGlzcGxheTogJ2ZsZXgnLCBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJywgZ2FwOiAndmFyKC0tcy00KScgfX0+XG4gICAgICA8ZGl2XG4gICAgICAgIG9uRHJvcD17aGFuZGxlRHJvcH1cbiAgICAgICAgb25EcmFnT3Zlcj17aGFuZGxlRHJhZ092ZXJ9XG4gICAgICAgIG9uRHJhZ0xlYXZlPXtoYW5kbGVEcmFnTGVhdmV9XG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGZpbGVJbnB1dFJlZi5jdXJyZW50Py5jbGljaygpfVxuICAgICAgICBzdHlsZT17e1xuICAgICAgICAgIGJvcmRlcjogYDJweCBkYXNoZWQgJHtkcmFnT3ZlciA/ICd2YXIoLS1hY2NlbnQpJyA6ICd2YXIoLS1jcmVhbSknfWAsXG4gICAgICAgICAgYm9yZGVyUmFkaXVzOiAndmFyKC0tci1sZyknLFxuICAgICAgICAgIHBhZGRpbmc6ICd2YXIoLS1zLTgsIDY0cHgpIHZhcigtLXMtNSknLFxuICAgICAgICAgIHRleHRBbGlnbjogJ2NlbnRlcicsXG4gICAgICAgICAgY3Vyc29yOiAncG9pbnRlcicsXG4gICAgICAgICAgYmFja2dyb3VuZDogZHJhZ092ZXIgPyAndmFyKC0tYWNjZW50LXNvZnQpJyA6ICd2YXIoLS1iZy13YXJtKScsXG4gICAgICAgICAgdHJhbnNpdGlvbjogJ2JhY2tncm91bmQgMTUwbXMsIGJvcmRlci1jb2xvciAxNTBtcycsXG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgIHJlZj17ZmlsZUlucHV0UmVmfVxuICAgICAgICAgIHR5cGU9XCJmaWxlXCJcbiAgICAgICAgICBhY2NlcHQ9XCIucGRmLC5tZCwudHh0XCJcbiAgICAgICAgICBzdHlsZT17eyBkaXNwbGF5OiAnbm9uZScgfX1cbiAgICAgICAgICBvbkNoYW5nZT17aGFuZGxlQ2hhbmdlfVxuICAgICAgICAvPlxuICAgICAgICA8cFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBtYXJnaW46ICcwIDAgdmFyKC0tcy0yKScsXG4gICAgICAgICAgICBmb250U2l6ZTogJ3ZhcigtLXQtbGVhZCknLFxuICAgICAgICAgICAgZm9udFdlaWdodDogNjAwLFxuICAgICAgICAgICAgY29sb3I6ICd2YXIoLS1mZyknLFxuICAgICAgICAgIH19XG4gICAgICAgID5cbiAgICAgICAgICBEcm9wIGEgZG9jdW1lbnQgaGVyZVxuICAgICAgICA8L3A+XG4gICAgICAgIDxwIHN0eWxlPXt7IG1hcmdpbjogMCwgZm9udFNpemU6ICd2YXIoLS10LXNtYWxsKScsIGNvbG9yOiAndmFyKC0tZmctbXV0ZWQpJyB9fT5cbiAgICAgICAgICBvciB0YXAgdG8gYnJvd3NlIOKAlCBQREYsIE1hcmtkb3duLCBUWFRcbiAgICAgICAgPC9wPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIHt1cGxvYWRFcnJvciAmJiAoXG4gICAgICAgIDxkaXZcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJyNmOGQ3ZGEnLFxuICAgICAgICAgICAgY29sb3I6ICcjYzAzOTJiJyxcbiAgICAgICAgICAgIGJvcmRlclJhZGl1czogJ3ZhcigtLXItc20pJyxcbiAgICAgICAgICAgIHBhZGRpbmc6ICd2YXIoLS1zLTMpIHZhcigtLXMtNCknLFxuICAgICAgICAgICAgZm9udFNpemU6ICd2YXIoLS10LXNtYWxsKScsXG4gICAgICAgICAgfX1cbiAgICAgICAgPlxuICAgICAgICAgIHt1cGxvYWRFcnJvcn1cbiAgICAgICAgPC9kaXY+XG4gICAgICApfVxuXG4gICAgICB7KHVwbG9hZGluZyB8fCBqb2JJZCkgJiYgKFxuICAgICAgICA8ZGl2IHN0eWxlPXt7IGRpc3BsYXk6ICdmbGV4JywgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsIGdhcDogJ3ZhcigtLXMtMiknIH19PlxuICAgICAgICAgIDxQcm9ncmVzc0JhclxuICAgICAgICAgICAgdmFsdWU9e3VwbG9hZGluZyA/IDUgOiBwcm9ncmVzc31cbiAgICAgICAgICAgIGxhYmVsPXtcbiAgICAgICAgICAgICAgdXBsb2FkaW5nXG4gICAgICAgICAgICAgICAgPyAnVXBsb2FkaW5n4oCmJ1xuICAgICAgICAgICAgICAgIDogaXNGYWlsZWRcbiAgICAgICAgICAgICAgICA/IGBGYWlsZWQ6ICR7c3RhdHVzPy5yZWFzb24gPz8gJ3Vua25vd24gZXJyb3InfWBcbiAgICAgICAgICAgICAgICA6IHN0YXR1cz8uc3RhdHVzXG4gICAgICAgICAgICAgICAgPyBgJHtzdGF0dXMuc3RhdHVzLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpfSR7c3RhdHVzLnN0YXR1cy5zbGljZSgxKX3igKZgXG4gICAgICAgICAgICAgICAgOiAnUHJvY2Vzc2luZ+KApidcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbG9yPXtpc0ZhaWxlZCA/ICcjYzAzOTJiJyA6ICd2YXIoLS1hY2NlbnQpJ31cbiAgICAgICAgICAvPlxuICAgICAgICAgIHtzdGF0dXMgJiYgKFxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgIGZvbnRTaXplOiAndmFyKC0tdC1zbWFsbCknLFxuICAgICAgICAgICAgICAgIGNvbG9yOiAndmFyKC0tZmctbXV0ZWQpJyxcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAgICAgICAgICAgICAgZ2FwOiAndmFyKC0tcy00KScsXG4gICAgICAgICAgICAgICAgZmxleFdyYXA6ICd3cmFwJyxcbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPHNwYW4+Q2h1bmtzOiB7c3RhdHVzLmNodW5rc0VtYmVkZGVkfS97c3RhdHVzLmNodW5rc1RvdGFsfTwvc3Bhbj5cbiAgICAgICAgICAgICAgPHNwYW4+VGhlbWVzOiB7c3RhdHVzLnRoZW1lc0ZvdW5kfTwvc3Bhbj5cbiAgICAgICAgICAgICAgPHNwYW4+VG9waWNzOiB7c3RhdHVzLnRvcGljc0ZvdW5kfTwvc3Bhbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICl9XG4gICAgICAgIDwvZGl2PlxuICAgICAgKX1cbiAgICA8L2Rpdj5cbiAgKVxufVxuIl0sIm5hbWVzIjpbIlJlYWN0IiwidXNlUmVmIiwidXNlU3RhdGUiLCJ1c2VDYWxsYmFjayIsIkJ1dHRvbiIsIlByb2dyZXNzQmFyIiwidXNlSW5nZXN0aW9uU3RhdHVzIiwicGIiLCJwb3N0SW5nZXN0IiwiRG9jdW1lbnRVcGxvYWQiLCJvblN1Y2Nlc3MiLCJmaWxlSW5wdXRSZWYiLCJ1cGxvYWRpbmciLCJzZXRVcGxvYWRpbmciLCJqb2JJZCIsInNldEpvYklkIiwidXBsb2FkRXJyb3IiLCJzZXRVcGxvYWRFcnJvciIsImRyYWdPdmVyIiwic2V0RHJhZ092ZXIiLCJzdGF0dXMiLCJwcm9ncmVzcyIsImhhbmRsZUZpbGVzIiwiZmlsZXMiLCJsZW5ndGgiLCJmaWxlIiwiYWxsb3dlZCIsImV4dCIsIm5hbWUiLCJzbGljZSIsImxhc3RJbmRleE9mIiwidG9Mb3dlckNhc2UiLCJpbmNsdWRlcyIsImZvcm1hdCIsIm1pbWVNYXAiLCJwZGYiLCJtZCIsInR4dCIsImJsb2IiLCJCbG9iIiwidHlwZSIsImZkIiwiRm9ybURhdGEiLCJhcHBlbmQiLCJkb2MiLCJjb2xsZWN0aW9uIiwiY3JlYXRlIiwicHJvY2VzcyIsInBiVXJsIiwiZW52IiwiTkVYVF9QVUJMSUNfUE9DS0VUQkFTRV9VUkwiLCJmaWxlVXJsIiwiaWQiLCJqSWQiLCJkb2N1bWVudElkIiwiZmlsZW5hbWUiLCJlcnIiLCJwYkVyciIsImRldGFpbCIsInJlc3BvbnNlIiwiZGF0YSIsIk9iamVjdCIsImVudHJpZXMiLCJtYXAiLCJmIiwidiIsIm1lc3NhZ2UiLCJqb2luIiwiRXJyb3IiLCJoYW5kbGVDaGFuZ2UiLCJlIiwidGFyZ2V0IiwidmFsdWUiLCJoYW5kbGVEcm9wIiwicHJldmVudERlZmF1bHQiLCJkYXRhVHJhbnNmZXIiLCJoYW5kbGVEcmFnT3ZlciIsImhhbmRsZURyYWdMZWF2ZSIsImlzRG9uZSIsImlzRmFpbGVkIiwiZGl2Iiwic3R5bGUiLCJiYWNrZ3JvdW5kIiwiYm9yZGVyUmFkaXVzIiwicGFkZGluZyIsInRleHRBbGlnbiIsImRpc3BsYXkiLCJmbGV4RGlyZWN0aW9uIiwiZ2FwIiwicCIsIm1hcmdpbiIsImZvbnRXZWlnaHQiLCJjb2xvciIsInRoZW1lc0ZvdW5kIiwidG9waWNzRm91bmQiLCJ2YXJpYW50Iiwic2l6ZSIsIm9uQ2xpY2siLCJvbkRyb3AiLCJvbkRyYWdPdmVyIiwib25EcmFnTGVhdmUiLCJjdXJyZW50IiwiY2xpY2siLCJib3JkZXIiLCJjdXJzb3IiLCJ0cmFuc2l0aW9uIiwiaW5wdXQiLCJyZWYiLCJhY2NlcHQiLCJvbkNoYW5nZSIsImZvbnRTaXplIiwibGFiZWwiLCJyZWFzb24iLCJjaGFyQXQiLCJ0b1VwcGVyQ2FzZSIsImZsZXhXcmFwIiwic3BhbiIsImNodW5rc0VtYmVkZGVkIiwiY2h1bmtzVG90YWwiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/components/admin/DocumentUpload.tsx\n")); /***/ }), @@ -124,7 +124,7 @@ eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* har /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFeed: function() { return /* binding */ getFeed; },\n/* harmony export */ getIngestionStatus: function() { return /* binding */ getIngestionStatus; },\n/* harmony export */ getLeaderboard: function() { return /* binding */ getLeaderboard; },\n/* harmony export */ patchCurriculumWeekOrder: function() { return /* binding */ patchCurriculumWeekOrder; },\n/* harmony export */ postComplete: function() { return /* binding */ postComplete; },\n/* harmony export */ postCurriculumConfirm: function() { return /* binding */ postCurriculumConfirm; },\n/* harmony export */ postGenerateAll: function() { return /* binding */ postGenerateAll; },\n/* harmony export */ postIngest: function() { return /* binding */ postIngest; }\n/* harmony export */ });\nvar _process_env_NEXT_PUBLIC_INGESTION_URL;\nconst INGESTION_URL = (_process_env_NEXT_PUBLIC_INGESTION_URL = \"http://localhost:3001\") !== null && _process_env_NEXT_PUBLIC_INGESTION_URL !== void 0 ? _process_env_NEXT_PUBLIC_INGESTION_URL : \"http://localhost:3001\";\nvar _process_env_NEXT_PUBLIC_GENERATION_URL;\nconst GENERATION_URL = (_process_env_NEXT_PUBLIC_GENERATION_URL = \"http://localhost:3002\") !== null && _process_env_NEXT_PUBLIC_GENERATION_URL !== void 0 ? _process_env_NEXT_PUBLIC_GENERATION_URL : \"http://localhost:3002\";\nvar _process_env_NEXT_PUBLIC_CURRICULUM_URL;\nconst CURRICULUM_URL = (_process_env_NEXT_PUBLIC_CURRICULUM_URL = \"http://localhost:3003\") !== null && _process_env_NEXT_PUBLIC_CURRICULUM_URL !== void 0 ? _process_env_NEXT_PUBLIC_CURRICULUM_URL : \"http://localhost:3003\";\nvar _process_env_NEXT_PUBLIC_PROGRESS_URL;\nconst PROGRESS_URL = (_process_env_NEXT_PUBLIC_PROGRESS_URL = \"http://localhost:3005\") !== null && _process_env_NEXT_PUBLIC_PROGRESS_URL !== void 0 ? _process_env_NEXT_PUBLIC_PROGRESS_URL : \"http://localhost:3005\";\nasync function handleResponse(res) {\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n return res.json();\n}\nasync function postIngest(payload) {\n const res = await fetch(\"\".concat(INGESTION_URL, \"/ingest\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getIngestionStatus(jobId) {\n const res = await fetch(\"\".concat(INGESTION_URL, \"/ingest/status/\").concat(encodeURIComponent(jobId)));\n return handleResponse(res);\n}\nasync function postGenerateAll(themeId) {\n const res = await fetch(\"\".concat(GENERATION_URL, \"/generate/theme/\").concat(encodeURIComponent(themeId)), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n return handleResponse(res);\n}\nasync function postComplete(payload) {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/complete\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getLeaderboard() {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/leaderboard\"));\n return handleResponse(res);\n}\nasync function getFeed() {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/feed\"));\n return handleResponse(res);\n}\nasync function postCurriculumConfirm(versionId) {\n const res = await fetch(\"\".concat(CURRICULUM_URL, \"/curriculum/versions/\").concat(encodeURIComponent(versionId), \"/confirm\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n}\nasync function patchCurriculumWeekOrder(weekId, position) {\n const res = await fetch(\"\".concat(CURRICULUM_URL, \"/curriculum/weeks/\").concat(encodeURIComponent(weekId), \"/order\"), {\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n position\n })\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n}\n\n\n;\n // Wrapped in an IIFE to avoid polluting the global scope\n ;\n (function () {\n var _a, _b;\n // Legacy CSS implementations will `eval` browser code in a Node.js context\n // to extract CSS. For backwards compatibility, we need to check we're in a\n // browser context before continuing.\n if (typeof self !== 'undefined' &&\n // AMP / No-JS mode does not inject these helpers:\n '$RefreshHelpers$' in self) {\n // @ts-ignore __webpack_module__ is global\n var currentExports = module.exports;\n // @ts-ignore __webpack_module__ is global\n var prevSignature = (_b = (_a = module.hot.data) === null || _a === void 0 ? void 0 : _a.prevSignature) !== null && _b !== void 0 ? _b : null;\n // This cannot happen in MainTemplate because the exports mismatch between\n // templating and execution.\n self.$RefreshHelpers$.registerExportsForReactRefresh(currentExports, module.id);\n // A module can be accepted automatically based on its exports, e.g. when\n // it is a Refresh Boundary.\n if (self.$RefreshHelpers$.isReactRefreshBoundary(currentExports)) {\n // Save the previous exports signature on update so we can compare the boundary\n // signatures. We avoid saving exports themselves since it causes memory leaks (https://github.com/vercel/next.js/pull/53797)\n module.hot.dispose(function (data) {\n data.prevSignature =\n self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports);\n });\n // Unconditionally accept an update to this module, we'll check if it's\n // still a Refresh Boundary later.\n // @ts-ignore importMeta is replaced in the loader\n module.hot.accept();\n // This field is set when the previous version of this module was a\n // Refresh Boundary, letting us know we need to check for invalidation or\n // enqueue an update.\n if (prevSignature !== null) {\n // A boundary can become ineligible if its exports are incompatible\n // with the previous exports.\n //\n // For example, if you add/remove/change exports, we'll want to\n // re-execute the importing modules, and force those components to\n // re-render. Similarly, if you convert a class component to a\n // function, we want to invalidate the boundary.\n if (self.$RefreshHelpers$.shouldInvalidateReactRefreshBoundary(prevSignature, self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports))) {\n module.hot.invalidate();\n }\n else {\n self.$RefreshHelpers$.scheduleUpdate();\n }\n }\n }\n else {\n // Since we just executed the code for the module, it's possible that the\n // new exports made it ineligible for being a boundary.\n // We only care about the case when we were _previously_ a boundary,\n // because we already accepted this update (accidental side effect).\n var isNoLongerABoundary = prevSignature !== null;\n if (isNoLongerABoundary) {\n module.hot.invalidate();\n }\n }\n }\n })();\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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QkFBZSxzQkFBK0MsT0FBM0J1QixtQkFBbUJTLFNBQVEsV0FDakU7UUFDRWhCLFFBQVE7UUFDUkMsU0FBUztZQUFFLGdCQUFnQjtRQUFtQjtRQUM5Q0MsTUFBTUMsS0FBS0MsU0FBUyxDQUFDO1lBQUVhO1FBQVM7SUFDbEM7SUFFRixJQUFJLENBQUM1QixJQUFJQyxFQUFFLEVBQUU7UUFDWCxNQUFNQyxPQUFPLE1BQU1GLElBQUlFLElBQUksR0FBR0MsS0FBSyxDQUFDLElBQU1ILElBQUlJLFVBQVU7UUFDeEQsTUFBTSxJQUFJQyxNQUFNLFFBQXVCSCxPQUFmRixJQUFJTSxNQUFNLEVBQUMsTUFBUyxPQUFMSjtJQUN6QztBQUNGIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL3NyYy9saWIvc2VydmljZXMudHM/MDcwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIEluZ2VzdGlvbkpvYlN0YXR1cyxcbiAgQ29tcGxldGVQYXlsb2FkLFxuICBDb21wbGV0ZVJlc3BvbnNlLFxuICBMZWFkZXJib2FyZEVudHJ5LFxuICBGZWVkRW50cnksXG59IGZyb20gJ0AvdHlwZXMnXG5cbmNvbnN0IElOR0VTVElPTl9VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19JTkdFU1RJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDEnXG5jb25zdCBHRU5FUkFUSU9OX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0dFTkVSQVRJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDInXG5jb25zdCBDVVJSSUNVTFVNX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDMnXG5jb25zdCBQUk9HUkVTU19VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19QUk9HUkVTU19VUkwgPz8gJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwNSdcblxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlUmVzcG9uc2U8VD4ocmVzOiBSZXNwb25zZSk6IFByb21pc2U8VD4ge1xuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxuICByZXR1cm4gcmVzLmpzb24oKSBhcyBQcm9taXNlPFQ+XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0SW5nZXN0KHBheWxvYWQ6IHtcbiAgZG9jdW1lbnRJZDogc3RyaW5nXG4gIGZpbGVuYW1lOiBzdHJpbmdcbiAgZm9ybWF0OiAncGRmJyB8ICdtZCcgfCAndHh0J1xuICBmaWxlVXJsOiBzdHJpbmdcbn0pOiBQcm9taXNlPHsgam9iSWQ6IHN0cmluZyB9PiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdGAsIHtcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICBib2R5OiBKU09OLnN0cmluZ2lmeShwYXlsb2FkKSxcbiAgfSlcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPHsgam9iSWQ6IHN0cmluZyB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRJbmdlc3Rpb25TdGF0dXMoam9iSWQ6IHN0cmluZyk6IFByb21pc2U8SW5nZXN0aW9uSm9iU3RhdHVzPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdC9zdGF0dXMvJHtlbmNvZGVVUklDb21wb25lbnQoam9iSWQpfWApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxJbmdlc3Rpb25Kb2JTdGF0dXM+KHJlcylcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHBvc3RHZW5lcmF0ZUFsbCh0aGVtZUlkOiBzdHJpbmcpOiBQcm9taXNlPHsgcXVldWVkOiBudW1iZXIgfT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtHRU5FUkFUSU9OX1VSTH0vZ2VuZXJhdGUvdGhlbWUvJHtlbmNvZGVVUklDb21wb25lbnQodGhlbWVJZCl9YCwge1xuICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgIGhlYWRlcnM6IHsgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyB9LFxuICB9KVxuICByZXR1cm4gaGFuZGxlUmVzcG9uc2U8eyBxdWV1ZWQ6IG51bWJlciB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0Q29tcGxldGUocGF5bG9hZDogQ29tcGxldGVQYXlsb2FkKTogUHJvbWlzZTxDb21wbGV0ZVJlc3BvbnNlPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vY29tcGxldGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkocGF5bG9hZCksXG4gIH0pXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxDb21wbGV0ZVJlc3BvbnNlPihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRMZWFkZXJib2FyZCgpOiBQcm9taXNlPExlYWRlcmJvYXJkRW50cnlbXT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtQUk9HUkVTU19VUkx9L2xlYWRlcmJvYXJkYClcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPExlYWRlcmJvYXJkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0RmVlZCgpOiBQcm9taXNlPEZlZWRFbnRyeVtdPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vZmVlZGApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxGZWVkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcG9zdEN1cnJpY3VsdW1Db25maXJtKHZlcnNpb25JZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3ZlcnNpb25zLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHZlcnNpb25JZCl9L2NvbmZpcm1gLFxuICAgIHtcbiAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyKHdlZWtJZDogc3RyaW5nLCBwb3NpdGlvbjogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3dlZWtzLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHdlZWtJZCl9L29yZGVyYCxcbiAgICB7XG4gICAgICBtZXRob2Q6ICdQQVRDSCcsXG4gICAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHsgcG9zaXRpb24gfSksXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuIl0sIm5hbWVzIjpbInByb2Nlc3MiLCJJTkdFU1RJT05fVVJMIiwiZW52IiwiTkVYVF9QVUJMSUNfSU5HRVNUSU9OX1VSTCIsIkdFTkVSQVRJT05fVVJMIiwiTkVYVF9QVUJMSUNfR0VORVJBVElPTl9VUkwiLCJDVVJSSUNVTFVNX1VSTCIsIk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMIiwiUFJPR1JFU1NfVVJMIiwiTkVYVF9QVUJMSUNfUFJPR1JFU1NfVVJMIiwiaGFuZGxlUmVzcG9uc2UiLCJyZXMiLCJvayIsInRleHQiLCJjYXRjaCIsInN0YXR1c1RleHQiLCJFcnJvciIsInN0YXR1cyIsImpzb24iLCJwb3N0SW5nZXN0IiwicGF5bG9hZCIsImZldGNoIiwibWV0aG9kIiwiaGVhZGVycyIsImJvZHkiLCJKU09OIiwic3RyaW5naWZ5IiwiZ2V0SW5nZXN0aW9uU3RhdHVzIiwiam9iSWQiLCJlbmNvZGVVUklDb21wb25lbnQiLCJwb3N0R2VuZXJhdGVBbGwiLCJ0aGVtZUlkIiwicG9zdENvbXBsZXRlIiwiZ2V0TGVhZGVyYm9hcmQiLCJnZXRGZWVkIiwicG9zdEN1cnJpY3VsdW1Db25maXJtIiwidmVyc2lvbklkIiwicGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyIiwid2Vla0lkIiwicG9zaXRpb24iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/lib/services.ts\n")); +eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFeed: function() { return /* binding */ getFeed; },\n/* harmony export */ getIngestionStatus: function() { return /* binding */ getIngestionStatus; },\n/* harmony export */ getLeaderboard: function() { return /* binding */ getLeaderboard; },\n/* harmony export */ patchCurriculumWeekOrder: function() { return /* binding */ patchCurriculumWeekOrder; },\n/* harmony export */ postComplete: function() { return /* binding */ postComplete; },\n/* harmony export */ postCurriculumConfirm: function() { return /* binding */ postCurriculumConfirm; },\n/* harmony export */ postGenerateAll: function() { return /* binding */ postGenerateAll; },\n/* harmony export */ postIngest: function() { return /* binding */ postIngest; }\n/* harmony export */ });\nvar _process_env_NEXT_PUBLIC_INGESTION_URL;\nconst INGESTION_URL = (_process_env_NEXT_PUBLIC_INGESTION_URL = \"http://localhost:3001\") !== null && _process_env_NEXT_PUBLIC_INGESTION_URL !== void 0 ? _process_env_NEXT_PUBLIC_INGESTION_URL : \"http://localhost:3001\";\nvar _process_env_NEXT_PUBLIC_GENERATION_URL;\nconst GENERATION_URL = (_process_env_NEXT_PUBLIC_GENERATION_URL = \"http://localhost:3002\") !== null && _process_env_NEXT_PUBLIC_GENERATION_URL !== void 0 ? _process_env_NEXT_PUBLIC_GENERATION_URL : \"http://localhost:3002\";\nvar _process_env_NEXT_PUBLIC_CURRICULUM_URL;\nconst CURRICULUM_URL = (_process_env_NEXT_PUBLIC_CURRICULUM_URL = \"http://localhost:3003\") !== null && _process_env_NEXT_PUBLIC_CURRICULUM_URL !== void 0 ? _process_env_NEXT_PUBLIC_CURRICULUM_URL : \"http://localhost:3003\";\nvar _process_env_NEXT_PUBLIC_PROGRESS_URL;\nconst PROGRESS_URL = (_process_env_NEXT_PUBLIC_PROGRESS_URL = \"http://localhost:3005\") !== null && _process_env_NEXT_PUBLIC_PROGRESS_URL !== void 0 ? _process_env_NEXT_PUBLIC_PROGRESS_URL : \"http://localhost:3005\";\nasync function handleResponse(res) {\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n return res.json();\n}\nasync function postIngest(payload) {\n const res = await fetch(\"\".concat(INGESTION_URL, \"/ingest\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getIngestionStatus(jobId) {\n const res = await fetch(\"\".concat(INGESTION_URL, \"/ingest/status/\").concat(encodeURIComponent(jobId)));\n return handleResponse(res);\n}\nasync function postGenerateAll(themeId) {\n const res = await fetch(\"\".concat(GENERATION_URL, \"/generate\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n themeId\n })\n });\n const data = await handleResponse(res);\n return {\n queued: data.totalItems\n };\n}\nasync function postComplete(payload) {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/complete\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getLeaderboard() {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/leaderboard\"));\n return handleResponse(res);\n}\nasync function getFeed() {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/feed\"));\n return handleResponse(res);\n}\nasync function postCurriculumConfirm(versionId) {\n const res = await fetch(\"\".concat(CURRICULUM_URL, \"/curriculum/versions/\").concat(encodeURIComponent(versionId), \"/confirm\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n}\nasync function patchCurriculumWeekOrder(weekId, position) {\n const res = await fetch(\"\".concat(CURRICULUM_URL, \"/curriculum/weeks/\").concat(encodeURIComponent(weekId), \"/order\"), {\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n position\n })\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n}\n\n\n;\n // Wrapped in an IIFE to avoid polluting the global scope\n ;\n (function () {\n var _a, _b;\n // Legacy CSS implementations will `eval` browser code in a Node.js context\n // to extract CSS. For backwards compatibility, we need to check we're in a\n // browser context before continuing.\n if (typeof self !== 'undefined' &&\n // AMP / No-JS mode does not inject these helpers:\n '$RefreshHelpers$' in self) {\n // @ts-ignore __webpack_module__ is global\n var currentExports = module.exports;\n // @ts-ignore __webpack_module__ is global\n var prevSignature = (_b = (_a = module.hot.data) === null || _a === void 0 ? void 0 : _a.prevSignature) !== null && _b !== void 0 ? _b : null;\n // This cannot happen in MainTemplate because the exports mismatch between\n // templating and execution.\n self.$RefreshHelpers$.registerExportsForReactRefresh(currentExports, module.id);\n // A module can be accepted automatically based on its exports, e.g. when\n // it is a Refresh Boundary.\n if (self.$RefreshHelpers$.isReactRefreshBoundary(currentExports)) {\n // Save the previous exports signature on update so we can compare the boundary\n // signatures. We avoid saving exports themselves since it causes memory leaks (https://github.com/vercel/next.js/pull/53797)\n module.hot.dispose(function (data) {\n data.prevSignature =\n self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports);\n });\n // Unconditionally accept an update to this module, we'll check if it's\n // still a Refresh Boundary later.\n // @ts-ignore importMeta is replaced in the loader\n module.hot.accept();\n // This field is set when the previous version of this module was a\n // Refresh Boundary, letting us know we need to check for invalidation or\n // enqueue an update.\n if (prevSignature !== null) {\n // A boundary can become ineligible if its exports are incompatible\n // with the previous exports.\n //\n // For example, if you add/remove/change exports, we'll want to\n // re-execute the importing modules, and force those components to\n // re-render. Similarly, if you convert a class component to a\n // function, we want to invalidate the boundary.\n if (self.$RefreshHelpers$.shouldInvalidateReactRefreshBoundary(prevSignature, self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports))) {\n module.hot.invalidate();\n }\n else {\n self.$RefreshHelpers$.scheduleUpdate();\n }\n }\n }\n else {\n // Since we just executed the code for the module, it's possible that the\n // new exports made it ineligible for being a boundary.\n // We only care about the case when we were _previously_ a boundary,\n // because we already accepted this update (accidental side effect).\n var isNoLongerABoundary = prevSignature !== null;\n if (isNoLongerABoundary) {\n module.hot.invalidate();\n }\n }\n }\n })();\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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QXlCQyxNQUFjLEVBQUVDLFFBQWdCO0lBQzdFLE1BQU0vQixNQUFNLE1BQU1VLE1BQ2hCLEdBQXNDUSxPQUFuQ3ZCLGdCQUFlLHNCQUErQyxPQUEzQnVCLG1CQUFtQlksU0FBUSxXQUNqRTtRQUNFbkIsUUFBUTtRQUNSQyxTQUFTO1lBQUUsZ0JBQWdCO1FBQW1CO1FBQzlDQyxNQUFNQyxLQUFLQyxTQUFTLENBQUM7WUFBRWdCO1FBQVM7SUFDbEM7SUFFRixJQUFJLENBQUMvQixJQUFJQyxFQUFFLEVBQUU7UUFDWCxNQUFNQyxPQUFPLE1BQU1GLElBQUlFLElBQUksR0FBR0MsS0FBSyxDQUFDLElBQU1ILElBQUlJLFVBQVU7UUFDeEQsTUFBTSxJQUFJQyxNQUFNLFFBQXVCSCxPQUFmRixJQUFJTSxNQUFNLEVBQUMsTUFBUyxPQUFMSjtJQUN6QztBQUNGIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL3NyYy9saWIvc2VydmljZXMudHM/MDcwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIEluZ2VzdGlvbkpvYlN0YXR1cyxcbiAgQ29tcGxldGVQYXlsb2FkLFxuICBDb21wbGV0ZVJlc3BvbnNlLFxuICBMZWFkZXJib2FyZEVudHJ5LFxuICBGZWVkRW50cnksXG59IGZyb20gJ0AvdHlwZXMnXG5cbmNvbnN0IElOR0VTVElPTl9VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19JTkdFU1RJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDEnXG5jb25zdCBHRU5FUkFUSU9OX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0dFTkVSQVRJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDInXG5jb25zdCBDVVJSSUNVTFVNX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDMnXG5jb25zdCBQUk9HUkVTU19VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19QUk9HUkVTU19VUkwgPz8gJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwNSdcblxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlUmVzcG9uc2U8VD4ocmVzOiBSZXNwb25zZSk6IFByb21pc2U8VD4ge1xuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxuICByZXR1cm4gcmVzLmpzb24oKSBhcyBQcm9taXNlPFQ+XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0SW5nZXN0KHBheWxvYWQ6IHtcbiAgZG9jdW1lbnRJZDogc3RyaW5nXG4gIGZpbGVuYW1lOiBzdHJpbmdcbiAgZm9ybWF0OiAncGRmJyB8ICdtZCcgfCAndHh0J1xuICBmaWxlVXJsOiBzdHJpbmdcbn0pOiBQcm9taXNlPHsgam9iSWQ6IHN0cmluZyB9PiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdGAsIHtcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICBib2R5OiBKU09OLnN0cmluZ2lmeShwYXlsb2FkKSxcbiAgfSlcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPHsgam9iSWQ6IHN0cmluZyB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRJbmdlc3Rpb25TdGF0dXMoam9iSWQ6IHN0cmluZyk6IFByb21pc2U8SW5nZXN0aW9uSm9iU3RhdHVzPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdC9zdGF0dXMvJHtlbmNvZGVVUklDb21wb25lbnQoam9iSWQpfWApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxJbmdlc3Rpb25Kb2JTdGF0dXM+KHJlcylcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHBvc3RHZW5lcmF0ZUFsbCh0aGVtZUlkOiBzdHJpbmcpOiBQcm9taXNlPHsgcXVldWVkOiBudW1iZXIgfT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtHRU5FUkFUSU9OX1VSTH0vZ2VuZXJhdGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkoeyB0aGVtZUlkIH0pLFxuICB9KVxuICBjb25zdCBkYXRhID0gYXdhaXQgaGFuZGxlUmVzcG9uc2U8eyBqb2JJZDogc3RyaW5nOyB0b3RhbEl0ZW1zOiBudW1iZXIgfT4ocmVzKVxuICByZXR1cm4geyBxdWV1ZWQ6IGRhdGEudG90YWxJdGVtcyB9XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0Q29tcGxldGUocGF5bG9hZDogQ29tcGxldGVQYXlsb2FkKTogUHJvbWlzZTxDb21wbGV0ZVJlc3BvbnNlPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vY29tcGxldGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkocGF5bG9hZCksXG4gIH0pXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxDb21wbGV0ZVJlc3BvbnNlPihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRMZWFkZXJib2FyZCgpOiBQcm9taXNlPExlYWRlcmJvYXJkRW50cnlbXT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtQUk9HUkVTU19VUkx9L2xlYWRlcmJvYXJkYClcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPExlYWRlcmJvYXJkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0RmVlZCgpOiBQcm9taXNlPEZlZWRFbnRyeVtdPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vZmVlZGApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxGZWVkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcG9zdEN1cnJpY3VsdW1Db25maXJtKHZlcnNpb25JZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3ZlcnNpb25zLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHZlcnNpb25JZCl9L2NvbmZpcm1gLFxuICAgIHtcbiAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyKHdlZWtJZDogc3RyaW5nLCBwb3NpdGlvbjogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3dlZWtzLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHdlZWtJZCl9L29yZGVyYCxcbiAgICB7XG4gICAgICBtZXRob2Q6ICdQQVRDSCcsXG4gICAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHsgcG9zaXRpb24gfSksXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuIl0sIm5hbWVzIjpbInByb2Nlc3MiLCJJTkdFU1RJT05fVVJMIiwiZW52IiwiTkVYVF9QVUJMSUNfSU5HRVNUSU9OX1VSTCIsIkdFTkVSQVRJT05fVVJMIiwiTkVYVF9QVUJMSUNfR0VORVJBVElPTl9VUkwiLCJDVVJSSUNVTFVNX1VSTCIsIk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMIiwiUFJPR1JFU1NfVVJMIiwiTkVYVF9QVUJMSUNfUFJPR1JFU1NfVVJMIiwiaGFuZGxlUmVzcG9uc2UiLCJyZXMiLCJvayIsInRleHQiLCJjYXRjaCIsInN0YXR1c1RleHQiLCJFcnJvciIsInN0YXR1cyIsImpzb24iLCJwb3N0SW5nZXN0IiwicGF5bG9hZCIsImZldGNoIiwibWV0aG9kIiwiaGVhZGVycyIsImJvZHkiLCJKU09OIiwic3RyaW5naWZ5IiwiZ2V0SW5nZXN0aW9uU3RhdHVzIiwiam9iSWQiLCJlbmNvZGVVUklDb21wb25lbnQiLCJwb3N0R2VuZXJhdGVBbGwiLCJ0aGVtZUlkIiwiZGF0YSIsInF1ZXVlZCIsInRvdGFsSXRlbXMiLCJwb3N0Q29tcGxldGUiLCJnZXRMZWFkZXJib2FyZCIsImdldEZlZWQiLCJwb3N0Q3VycmljdWx1bUNvbmZpcm0iLCJ2ZXJzaW9uSWQiLCJwYXRjaEN1cnJpY3VsdW1XZWVrT3JkZXIiLCJ3ZWVrSWQiLCJwb3NpdGlvbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/lib/services.ts\n")); /***/ }), diff --git a/app/frontend/.next/static/chunks/app/admin/knowledge/page.js b/app/frontend/.next/static/chunks/app/admin/knowledge/page.js index 073a496..9796e7f 100644 --- a/app/frontend/.next/static/chunks/app/admin/knowledge/page.js +++ b/app/frontend/.next/static/chunks/app/admin/knowledge/page.js @@ -322,7 +322,7 @@ eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* har /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFeed: function() { return /* binding */ getFeed; },\n/* harmony export */ getIngestionStatus: function() { return /* binding */ getIngestionStatus; },\n/* harmony export */ getLeaderboard: function() { return /* binding */ getLeaderboard; },\n/* harmony export */ patchCurriculumWeekOrder: function() { return /* binding */ patchCurriculumWeekOrder; },\n/* harmony export */ postComplete: function() { return /* binding */ postComplete; },\n/* harmony export */ postCurriculumConfirm: function() { return /* binding */ postCurriculumConfirm; },\n/* harmony export */ postGenerateAll: function() { return /* binding */ postGenerateAll; },\n/* harmony export */ postIngest: function() { return /* binding */ postIngest; }\n/* harmony export */ });\nvar _process_env_NEXT_PUBLIC_INGESTION_URL;\nconst INGESTION_URL = (_process_env_NEXT_PUBLIC_INGESTION_URL = \"http://localhost:3001\") !== null && _process_env_NEXT_PUBLIC_INGESTION_URL !== void 0 ? _process_env_NEXT_PUBLIC_INGESTION_URL : \"http://localhost:3001\";\nvar _process_env_NEXT_PUBLIC_GENERATION_URL;\nconst GENERATION_URL = (_process_env_NEXT_PUBLIC_GENERATION_URL = \"http://localhost:3002\") !== null && _process_env_NEXT_PUBLIC_GENERATION_URL !== void 0 ? _process_env_NEXT_PUBLIC_GENERATION_URL : \"http://localhost:3002\";\nvar _process_env_NEXT_PUBLIC_CURRICULUM_URL;\nconst CURRICULUM_URL = (_process_env_NEXT_PUBLIC_CURRICULUM_URL = \"http://localhost:3003\") !== null && _process_env_NEXT_PUBLIC_CURRICULUM_URL !== void 0 ? _process_env_NEXT_PUBLIC_CURRICULUM_URL : \"http://localhost:3003\";\nvar _process_env_NEXT_PUBLIC_PROGRESS_URL;\nconst PROGRESS_URL = (_process_env_NEXT_PUBLIC_PROGRESS_URL = \"http://localhost:3005\") !== null && _process_env_NEXT_PUBLIC_PROGRESS_URL !== void 0 ? _process_env_NEXT_PUBLIC_PROGRESS_URL : \"http://localhost:3005\";\nasync function handleResponse(res) {\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n return res.json();\n}\nasync function postIngest(payload) {\n const res = await fetch(\"\".concat(INGESTION_URL, \"/ingest\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getIngestionStatus(jobId) {\n const res = await fetch(\"\".concat(INGESTION_URL, \"/ingest/status/\").concat(encodeURIComponent(jobId)));\n return handleResponse(res);\n}\nasync function postGenerateAll(themeId) {\n const res = await fetch(\"\".concat(GENERATION_URL, \"/generate/theme/\").concat(encodeURIComponent(themeId)), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n return handleResponse(res);\n}\nasync function postComplete(payload) {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/complete\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getLeaderboard() {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/leaderboard\"));\n return handleResponse(res);\n}\nasync function getFeed() {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/feed\"));\n return handleResponse(res);\n}\nasync function postCurriculumConfirm(versionId) {\n const res = await fetch(\"\".concat(CURRICULUM_URL, \"/curriculum/versions/\").concat(encodeURIComponent(versionId), \"/confirm\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n}\nasync function patchCurriculumWeekOrder(weekId, position) {\n const res = await fetch(\"\".concat(CURRICULUM_URL, \"/curriculum/weeks/\").concat(encodeURIComponent(weekId), \"/order\"), {\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n position\n })\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n}\n\n\n;\n // Wrapped in an IIFE to avoid polluting the global scope\n ;\n (function () {\n var _a, _b;\n // Legacy CSS implementations will `eval` browser code in a Node.js context\n // to extract CSS. For backwards compatibility, we need to check we're in a\n // browser context before continuing.\n if (typeof self !== 'undefined' &&\n // AMP / No-JS mode does not inject these helpers:\n '$RefreshHelpers$' in self) {\n // @ts-ignore __webpack_module__ is global\n var currentExports = module.exports;\n // @ts-ignore __webpack_module__ is global\n var prevSignature = (_b = (_a = module.hot.data) === null || _a === void 0 ? void 0 : _a.prevSignature) !== null && _b !== void 0 ? _b : null;\n // This cannot happen in MainTemplate because the exports mismatch between\n // templating and execution.\n self.$RefreshHelpers$.registerExportsForReactRefresh(currentExports, module.id);\n // A module can be accepted automatically based on its exports, e.g. when\n // it is a Refresh Boundary.\n if (self.$RefreshHelpers$.isReactRefreshBoundary(currentExports)) {\n // Save the previous exports signature on update so we can compare the boundary\n // signatures. We avoid saving exports themselves since it causes memory leaks (https://github.com/vercel/next.js/pull/53797)\n module.hot.dispose(function (data) {\n data.prevSignature =\n self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports);\n });\n // Unconditionally accept an update to this module, we'll check if it's\n // still a Refresh Boundary later.\n // @ts-ignore importMeta is replaced in the loader\n module.hot.accept();\n // This field is set when the previous version of this module was a\n // Refresh Boundary, letting us know we need to check for invalidation or\n // enqueue an update.\n if (prevSignature !== null) {\n // A boundary can become ineligible if its exports are incompatible\n // with the previous exports.\n //\n // For example, if you add/remove/change exports, we'll want to\n // re-execute the importing modules, and force those components to\n // re-render. Similarly, if you convert a class component to a\n // function, we want to invalidate the boundary.\n if (self.$RefreshHelpers$.shouldInvalidateReactRefreshBoundary(prevSignature, self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports))) {\n module.hot.invalidate();\n }\n else {\n self.$RefreshHelpers$.scheduleUpdate();\n }\n }\n }\n else {\n // Since we just executed the code for the module, it's possible that the\n // new exports made it ineligible for being a boundary.\n // We only care about the case when we were _previously_ a boundary,\n // because we already accepted this update (accidental side effect).\n var isNoLongerABoundary = prevSignature !== null;\n if (isNoLongerABoundary) {\n module.hot.invalidate();\n }\n }\n }\n })();\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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QkFBZSxzQkFBK0MsT0FBM0J1QixtQkFBbUJTLFNBQVEsV0FDakU7UUFDRWhCLFFBQVE7UUFDUkMsU0FBUztZQUFFLGdCQUFnQjtRQUFtQjtRQUM5Q0MsTUFBTUMsS0FBS0MsU0FBUyxDQUFDO1lBQUVhO1FBQVM7SUFDbEM7SUFFRixJQUFJLENBQUM1QixJQUFJQyxFQUFFLEVBQUU7UUFDWCxNQUFNQyxPQUFPLE1BQU1GLElBQUlFLElBQUksR0FBR0MsS0FBSyxDQUFDLElBQU1ILElBQUlJLFVBQVU7UUFDeEQsTUFBTSxJQUFJQyxNQUFNLFFBQXVCSCxPQUFmRixJQUFJTSxNQUFNLEVBQUMsTUFBUyxPQUFMSjtJQUN6QztBQUNGIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL3NyYy9saWIvc2VydmljZXMudHM/MDcwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIEluZ2VzdGlvbkpvYlN0YXR1cyxcbiAgQ29tcGxldGVQYXlsb2FkLFxuICBDb21wbGV0ZVJlc3BvbnNlLFxuICBMZWFkZXJib2FyZEVudHJ5LFxuICBGZWVkRW50cnksXG59IGZyb20gJ0AvdHlwZXMnXG5cbmNvbnN0IElOR0VTVElPTl9VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19JTkdFU1RJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDEnXG5jb25zdCBHRU5FUkFUSU9OX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0dFTkVSQVRJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDInXG5jb25zdCBDVVJSSUNVTFVNX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDMnXG5jb25zdCBQUk9HUkVTU19VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19QUk9HUkVTU19VUkwgPz8gJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwNSdcblxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlUmVzcG9uc2U8VD4ocmVzOiBSZXNwb25zZSk6IFByb21pc2U8VD4ge1xuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxuICByZXR1cm4gcmVzLmpzb24oKSBhcyBQcm9taXNlPFQ+XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0SW5nZXN0KHBheWxvYWQ6IHtcbiAgZG9jdW1lbnRJZDogc3RyaW5nXG4gIGZpbGVuYW1lOiBzdHJpbmdcbiAgZm9ybWF0OiAncGRmJyB8ICdtZCcgfCAndHh0J1xuICBmaWxlVXJsOiBzdHJpbmdcbn0pOiBQcm9taXNlPHsgam9iSWQ6IHN0cmluZyB9PiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdGAsIHtcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICBib2R5OiBKU09OLnN0cmluZ2lmeShwYXlsb2FkKSxcbiAgfSlcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPHsgam9iSWQ6IHN0cmluZyB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRJbmdlc3Rpb25TdGF0dXMoam9iSWQ6IHN0cmluZyk6IFByb21pc2U8SW5nZXN0aW9uSm9iU3RhdHVzPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdC9zdGF0dXMvJHtlbmNvZGVVUklDb21wb25lbnQoam9iSWQpfWApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxJbmdlc3Rpb25Kb2JTdGF0dXM+KHJlcylcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHBvc3RHZW5lcmF0ZUFsbCh0aGVtZUlkOiBzdHJpbmcpOiBQcm9taXNlPHsgcXVldWVkOiBudW1iZXIgfT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtHRU5FUkFUSU9OX1VSTH0vZ2VuZXJhdGUvdGhlbWUvJHtlbmNvZGVVUklDb21wb25lbnQodGhlbWVJZCl9YCwge1xuICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgIGhlYWRlcnM6IHsgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyB9LFxuICB9KVxuICByZXR1cm4gaGFuZGxlUmVzcG9uc2U8eyBxdWV1ZWQ6IG51bWJlciB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0Q29tcGxldGUocGF5bG9hZDogQ29tcGxldGVQYXlsb2FkKTogUHJvbWlzZTxDb21wbGV0ZVJlc3BvbnNlPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vY29tcGxldGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkocGF5bG9hZCksXG4gIH0pXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxDb21wbGV0ZVJlc3BvbnNlPihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRMZWFkZXJib2FyZCgpOiBQcm9taXNlPExlYWRlcmJvYXJkRW50cnlbXT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtQUk9HUkVTU19VUkx9L2xlYWRlcmJvYXJkYClcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPExlYWRlcmJvYXJkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0RmVlZCgpOiBQcm9taXNlPEZlZWRFbnRyeVtdPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vZmVlZGApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxGZWVkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcG9zdEN1cnJpY3VsdW1Db25maXJtKHZlcnNpb25JZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3ZlcnNpb25zLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHZlcnNpb25JZCl9L2NvbmZpcm1gLFxuICAgIHtcbiAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyKHdlZWtJZDogc3RyaW5nLCBwb3NpdGlvbjogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3dlZWtzLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHdlZWtJZCl9L29yZGVyYCxcbiAgICB7XG4gICAgICBtZXRob2Q6ICdQQVRDSCcsXG4gICAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHsgcG9zaXRpb24gfSksXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuIl0sIm5hbWVzIjpbInByb2Nlc3MiLCJJTkdFU1RJT05fVVJMIiwiZW52IiwiTkVYVF9QVUJMSUNfSU5HRVNUSU9OX1VSTCIsIkdFTkVSQVRJT05fVVJMIiwiTkVYVF9QVUJMSUNfR0VORVJBVElPTl9VUkwiLCJDVVJSSUNVTFVNX1VSTCIsIk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMIiwiUFJPR1JFU1NfVVJMIiwiTkVYVF9QVUJMSUNfUFJPR1JFU1NfVVJMIiwiaGFuZGxlUmVzcG9uc2UiLCJyZXMiLCJvayIsInRleHQiLCJjYXRjaCIsInN0YXR1c1RleHQiLCJFcnJvciIsInN0YXR1cyIsImpzb24iLCJwb3N0SW5nZXN0IiwicGF5bG9hZCIsImZldGNoIiwibWV0aG9kIiwiaGVhZGVycyIsImJvZHkiLCJKU09OIiwic3RyaW5naWZ5IiwiZ2V0SW5nZXN0aW9uU3RhdHVzIiwiam9iSWQiLCJlbmNvZGVVUklDb21wb25lbnQiLCJwb3N0R2VuZXJhdGVBbGwiLCJ0aGVtZUlkIiwicG9zdENvbXBsZXRlIiwiZ2V0TGVhZGVyYm9hcmQiLCJnZXRGZWVkIiwicG9zdEN1cnJpY3VsdW1Db25maXJtIiwidmVyc2lvbklkIiwicGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyIiwid2Vla0lkIiwicG9zaXRpb24iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/lib/services.ts\n")); +eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFeed: function() { return /* binding */ getFeed; },\n/* harmony export */ getIngestionStatus: function() { return /* binding */ getIngestionStatus; },\n/* harmony export */ getLeaderboard: function() { return /* binding */ getLeaderboard; },\n/* harmony export */ patchCurriculumWeekOrder: function() { return /* binding */ patchCurriculumWeekOrder; },\n/* harmony export */ postComplete: function() { return /* binding */ postComplete; },\n/* harmony export */ postCurriculumConfirm: function() { return /* binding */ postCurriculumConfirm; },\n/* harmony export */ postGenerateAll: function() { return /* binding */ postGenerateAll; },\n/* harmony export */ postIngest: function() { return /* binding */ postIngest; }\n/* harmony export */ });\nvar _process_env_NEXT_PUBLIC_INGESTION_URL;\nconst INGESTION_URL = (_process_env_NEXT_PUBLIC_INGESTION_URL = \"http://localhost:3001\") !== null && _process_env_NEXT_PUBLIC_INGESTION_URL !== void 0 ? _process_env_NEXT_PUBLIC_INGESTION_URL : \"http://localhost:3001\";\nvar _process_env_NEXT_PUBLIC_GENERATION_URL;\nconst GENERATION_URL = (_process_env_NEXT_PUBLIC_GENERATION_URL = \"http://localhost:3002\") !== null && _process_env_NEXT_PUBLIC_GENERATION_URL !== void 0 ? _process_env_NEXT_PUBLIC_GENERATION_URL : \"http://localhost:3002\";\nvar _process_env_NEXT_PUBLIC_CURRICULUM_URL;\nconst CURRICULUM_URL = (_process_env_NEXT_PUBLIC_CURRICULUM_URL = \"http://localhost:3003\") !== null && _process_env_NEXT_PUBLIC_CURRICULUM_URL !== void 0 ? _process_env_NEXT_PUBLIC_CURRICULUM_URL : \"http://localhost:3003\";\nvar _process_env_NEXT_PUBLIC_PROGRESS_URL;\nconst PROGRESS_URL = (_process_env_NEXT_PUBLIC_PROGRESS_URL = \"http://localhost:3005\") !== null && _process_env_NEXT_PUBLIC_PROGRESS_URL !== void 0 ? _process_env_NEXT_PUBLIC_PROGRESS_URL : \"http://localhost:3005\";\nasync function handleResponse(res) {\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n return res.json();\n}\nasync function postIngest(payload) {\n const res = await fetch(\"\".concat(INGESTION_URL, \"/ingest\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getIngestionStatus(jobId) {\n const res = await fetch(\"\".concat(INGESTION_URL, \"/ingest/status/\").concat(encodeURIComponent(jobId)));\n return handleResponse(res);\n}\nasync function postGenerateAll(themeId) {\n const res = await fetch(\"\".concat(GENERATION_URL, \"/generate\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n themeId\n })\n });\n const data = await handleResponse(res);\n return {\n queued: data.totalItems\n };\n}\nasync function postComplete(payload) {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/complete\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getLeaderboard() {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/leaderboard\"));\n return handleResponse(res);\n}\nasync function getFeed() {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/feed\"));\n return handleResponse(res);\n}\nasync function postCurriculumConfirm(versionId) {\n const res = await fetch(\"\".concat(CURRICULUM_URL, \"/curriculum/versions/\").concat(encodeURIComponent(versionId), \"/confirm\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n}\nasync function patchCurriculumWeekOrder(weekId, position) {\n const res = await fetch(\"\".concat(CURRICULUM_URL, \"/curriculum/weeks/\").concat(encodeURIComponent(weekId), \"/order\"), {\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n position\n })\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n}\n\n\n;\n // Wrapped in an IIFE to avoid polluting the global scope\n ;\n (function () {\n var _a, _b;\n // Legacy CSS implementations will `eval` browser code in a Node.js context\n // to extract CSS. For backwards compatibility, we need to check we're in a\n // browser context before continuing.\n if (typeof self !== 'undefined' &&\n // AMP / No-JS mode does not inject these helpers:\n '$RefreshHelpers$' in self) {\n // @ts-ignore __webpack_module__ is global\n var currentExports = module.exports;\n // @ts-ignore __webpack_module__ is global\n var prevSignature = (_b = (_a = module.hot.data) === null || _a === void 0 ? void 0 : _a.prevSignature) !== null && _b !== void 0 ? _b : null;\n // This cannot happen in MainTemplate because the exports mismatch between\n // templating and execution.\n self.$RefreshHelpers$.registerExportsForReactRefresh(currentExports, module.id);\n // A module can be accepted automatically based on its exports, e.g. when\n // it is a Refresh Boundary.\n if (self.$RefreshHelpers$.isReactRefreshBoundary(currentExports)) {\n // Save the previous exports signature on update so we can compare the boundary\n // signatures. We avoid saving exports themselves since it causes memory leaks (https://github.com/vercel/next.js/pull/53797)\n module.hot.dispose(function (data) {\n data.prevSignature =\n self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports);\n });\n // Unconditionally accept an update to this module, we'll check if it's\n // still a Refresh Boundary later.\n // @ts-ignore importMeta is replaced in the loader\n module.hot.accept();\n // This field is set when the previous version of this module was a\n // Refresh Boundary, letting us know we need to check for invalidation or\n // enqueue an update.\n if (prevSignature !== null) {\n // A boundary can become ineligible if its exports are incompatible\n // with the previous exports.\n //\n // For example, if you add/remove/change exports, we'll want to\n // re-execute the importing modules, and force those components to\n // re-render. Similarly, if you convert a class component to a\n // function, we want to invalidate the boundary.\n if (self.$RefreshHelpers$.shouldInvalidateReactRefreshBoundary(prevSignature, self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports))) {\n module.hot.invalidate();\n }\n else {\n self.$RefreshHelpers$.scheduleUpdate();\n }\n }\n }\n else {\n // Since we just executed the code for the module, it's possible that the\n // new exports made it ineligible for being a boundary.\n // We only care about the case when we were _previously_ a boundary,\n // because we already accepted this update (accidental side effect).\n var isNoLongerABoundary = prevSignature !== null;\n if (isNoLongerABoundary) {\n module.hot.invalidate();\n }\n }\n }\n })();\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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QXlCQyxNQUFjLEVBQUVDLFFBQWdCO0lBQzdFLE1BQU0vQixNQUFNLE1BQU1VLE1BQ2hCLEdBQXNDUSxPQUFuQ3ZCLGdCQUFlLHNCQUErQyxPQUEzQnVCLG1CQUFtQlksU0FBUSxXQUNqRTtRQUNFbkIsUUFBUTtRQUNSQyxTQUFTO1lBQUUsZ0JBQWdCO1FBQW1CO1FBQzlDQyxNQUFNQyxLQUFLQyxTQUFTLENBQUM7WUFBRWdCO1FBQVM7SUFDbEM7SUFFRixJQUFJLENBQUMvQixJQUFJQyxFQUFFLEVBQUU7UUFDWCxNQUFNQyxPQUFPLE1BQU1GLElBQUlFLElBQUksR0FBR0MsS0FBSyxDQUFDLElBQU1ILElBQUlJLFVBQVU7UUFDeEQsTUFBTSxJQUFJQyxNQUFNLFFBQXVCSCxPQUFmRixJQUFJTSxNQUFNLEVBQUMsTUFBUyxPQUFMSjtJQUN6QztBQUNGIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL3NyYy9saWIvc2VydmljZXMudHM/MDcwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIEluZ2VzdGlvbkpvYlN0YXR1cyxcbiAgQ29tcGxldGVQYXlsb2FkLFxuICBDb21wbGV0ZVJlc3BvbnNlLFxuICBMZWFkZXJib2FyZEVudHJ5LFxuICBGZWVkRW50cnksXG59IGZyb20gJ0AvdHlwZXMnXG5cbmNvbnN0IElOR0VTVElPTl9VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19JTkdFU1RJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDEnXG5jb25zdCBHRU5FUkFUSU9OX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0dFTkVSQVRJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDInXG5jb25zdCBDVVJSSUNVTFVNX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDMnXG5jb25zdCBQUk9HUkVTU19VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19QUk9HUkVTU19VUkwgPz8gJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwNSdcblxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlUmVzcG9uc2U8VD4ocmVzOiBSZXNwb25zZSk6IFByb21pc2U8VD4ge1xuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxuICByZXR1cm4gcmVzLmpzb24oKSBhcyBQcm9taXNlPFQ+XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0SW5nZXN0KHBheWxvYWQ6IHtcbiAgZG9jdW1lbnRJZDogc3RyaW5nXG4gIGZpbGVuYW1lOiBzdHJpbmdcbiAgZm9ybWF0OiAncGRmJyB8ICdtZCcgfCAndHh0J1xuICBmaWxlVXJsOiBzdHJpbmdcbn0pOiBQcm9taXNlPHsgam9iSWQ6IHN0cmluZyB9PiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdGAsIHtcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICBib2R5OiBKU09OLnN0cmluZ2lmeShwYXlsb2FkKSxcbiAgfSlcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPHsgam9iSWQ6IHN0cmluZyB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRJbmdlc3Rpb25TdGF0dXMoam9iSWQ6IHN0cmluZyk6IFByb21pc2U8SW5nZXN0aW9uSm9iU3RhdHVzPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdC9zdGF0dXMvJHtlbmNvZGVVUklDb21wb25lbnQoam9iSWQpfWApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxJbmdlc3Rpb25Kb2JTdGF0dXM+KHJlcylcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHBvc3RHZW5lcmF0ZUFsbCh0aGVtZUlkOiBzdHJpbmcpOiBQcm9taXNlPHsgcXVldWVkOiBudW1iZXIgfT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtHRU5FUkFUSU9OX1VSTH0vZ2VuZXJhdGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkoeyB0aGVtZUlkIH0pLFxuICB9KVxuICBjb25zdCBkYXRhID0gYXdhaXQgaGFuZGxlUmVzcG9uc2U8eyBqb2JJZDogc3RyaW5nOyB0b3RhbEl0ZW1zOiBudW1iZXIgfT4ocmVzKVxuICByZXR1cm4geyBxdWV1ZWQ6IGRhdGEudG90YWxJdGVtcyB9XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0Q29tcGxldGUocGF5bG9hZDogQ29tcGxldGVQYXlsb2FkKTogUHJvbWlzZTxDb21wbGV0ZVJlc3BvbnNlPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vY29tcGxldGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkocGF5bG9hZCksXG4gIH0pXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxDb21wbGV0ZVJlc3BvbnNlPihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRMZWFkZXJib2FyZCgpOiBQcm9taXNlPExlYWRlcmJvYXJkRW50cnlbXT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtQUk9HUkVTU19VUkx9L2xlYWRlcmJvYXJkYClcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPExlYWRlcmJvYXJkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0RmVlZCgpOiBQcm9taXNlPEZlZWRFbnRyeVtdPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vZmVlZGApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxGZWVkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcG9zdEN1cnJpY3VsdW1Db25maXJtKHZlcnNpb25JZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3ZlcnNpb25zLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHZlcnNpb25JZCl9L2NvbmZpcm1gLFxuICAgIHtcbiAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyKHdlZWtJZDogc3RyaW5nLCBwb3NpdGlvbjogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3dlZWtzLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHdlZWtJZCl9L29yZGVyYCxcbiAgICB7XG4gICAgICBtZXRob2Q6ICdQQVRDSCcsXG4gICAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHsgcG9zaXRpb24gfSksXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuIl0sIm5hbWVzIjpbInByb2Nlc3MiLCJJTkdFU1RJT05fVVJMIiwiZW52IiwiTkVYVF9QVUJMSUNfSU5HRVNUSU9OX1VSTCIsIkdFTkVSQVRJT05fVVJMIiwiTkVYVF9QVUJMSUNfR0VORVJBVElPTl9VUkwiLCJDVVJSSUNVTFVNX1VSTCIsIk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMIiwiUFJPR1JFU1NfVVJMIiwiTkVYVF9QVUJMSUNfUFJPR1JFU1NfVVJMIiwiaGFuZGxlUmVzcG9uc2UiLCJyZXMiLCJvayIsInRleHQiLCJjYXRjaCIsInN0YXR1c1RleHQiLCJFcnJvciIsInN0YXR1cyIsImpzb24iLCJwb3N0SW5nZXN0IiwicGF5bG9hZCIsImZldGNoIiwibWV0aG9kIiwiaGVhZGVycyIsImJvZHkiLCJKU09OIiwic3RyaW5naWZ5IiwiZ2V0SW5nZXN0aW9uU3RhdHVzIiwiam9iSWQiLCJlbmNvZGVVUklDb21wb25lbnQiLCJwb3N0R2VuZXJhdGVBbGwiLCJ0aGVtZUlkIiwiZGF0YSIsInF1ZXVlZCIsInRvdGFsSXRlbXMiLCJwb3N0Q29tcGxldGUiLCJnZXRMZWFkZXJib2FyZCIsImdldEZlZWQiLCJwb3N0Q3VycmljdWx1bUNvbmZpcm0iLCJ2ZXJzaW9uSWQiLCJwYXRjaEN1cnJpY3VsdW1XZWVrT3JkZXIiLCJ3ZWVrSWQiLCJwb3NpdGlvbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/lib/services.ts\n")); /***/ }), diff --git a/app/frontend/.next/static/chunks/app/app/library/[topicId]/page.js b/app/frontend/.next/static/chunks/app/app/library/[topicId]/page.js index 1479cd3..96b0db1 100644 --- a/app/frontend/.next/static/chunks/app/app/library/[topicId]/page.js +++ b/app/frontend/.next/static/chunks/app/app/library/[topicId]/page.js @@ -443,7 +443,7 @@ eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* har /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFeed: function() { return /* binding */ getFeed; },\n/* harmony export */ getIngestionStatus: function() { return /* binding */ getIngestionStatus; },\n/* harmony export */ getLeaderboard: function() { return /* binding */ getLeaderboard; },\n/* harmony export */ patchCurriculumWeekOrder: function() { return /* binding */ patchCurriculumWeekOrder; },\n/* harmony export */ postComplete: function() { return /* binding */ postComplete; },\n/* harmony export */ postCurriculumConfirm: function() { return /* binding */ postCurriculumConfirm; },\n/* harmony export */ postGenerateAll: function() { return /* binding */ postGenerateAll; },\n/* harmony export */ postIngest: function() { return /* binding */ postIngest; }\n/* harmony export */ });\nvar _process_env_NEXT_PUBLIC_INGESTION_URL;\nconst INGESTION_URL = (_process_env_NEXT_PUBLIC_INGESTION_URL = \"http://localhost:3001\") !== null && _process_env_NEXT_PUBLIC_INGESTION_URL !== void 0 ? _process_env_NEXT_PUBLIC_INGESTION_URL : \"http://localhost:3001\";\nvar _process_env_NEXT_PUBLIC_GENERATION_URL;\nconst GENERATION_URL = (_process_env_NEXT_PUBLIC_GENERATION_URL = \"http://localhost:3002\") !== null && _process_env_NEXT_PUBLIC_GENERATION_URL !== void 0 ? _process_env_NEXT_PUBLIC_GENERATION_URL : \"http://localhost:3002\";\nvar _process_env_NEXT_PUBLIC_CURRICULUM_URL;\nconst CURRICULUM_URL = (_process_env_NEXT_PUBLIC_CURRICULUM_URL = \"http://localhost:3003\") !== null && _process_env_NEXT_PUBLIC_CURRICULUM_URL !== void 0 ? _process_env_NEXT_PUBLIC_CURRICULUM_URL : \"http://localhost:3003\";\nvar _process_env_NEXT_PUBLIC_PROGRESS_URL;\nconst PROGRESS_URL = (_process_env_NEXT_PUBLIC_PROGRESS_URL = \"http://localhost:3005\") !== null && _process_env_NEXT_PUBLIC_PROGRESS_URL !== void 0 ? _process_env_NEXT_PUBLIC_PROGRESS_URL : \"http://localhost:3005\";\nasync function handleResponse(res) {\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n return res.json();\n}\nasync function postIngest(payload) {\n const res = await fetch(\"\".concat(INGESTION_URL, \"/ingest\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getIngestionStatus(jobId) {\n const res = await fetch(\"\".concat(INGESTION_URL, \"/ingest/status/\").concat(encodeURIComponent(jobId)));\n return handleResponse(res);\n}\nasync function postGenerateAll(themeId) {\n const res = await fetch(\"\".concat(GENERATION_URL, \"/generate/theme/\").concat(encodeURIComponent(themeId)), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n return handleResponse(res);\n}\nasync function postComplete(payload) {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/complete\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getLeaderboard() {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/leaderboard\"));\n return handleResponse(res);\n}\nasync function getFeed() {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/feed\"));\n return handleResponse(res);\n}\nasync function postCurriculumConfirm(versionId) {\n const res = await fetch(\"\".concat(CURRICULUM_URL, \"/curriculum/versions/\").concat(encodeURIComponent(versionId), \"/confirm\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n}\nasync function patchCurriculumWeekOrder(weekId, position) {\n const res = await fetch(\"\".concat(CURRICULUM_URL, \"/curriculum/weeks/\").concat(encodeURIComponent(weekId), \"/order\"), {\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n position\n })\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n}\n\n\n;\n // Wrapped in an IIFE to avoid polluting the global scope\n ;\n (function () {\n var _a, _b;\n // Legacy CSS implementations will `eval` browser code in a Node.js context\n // to extract CSS. For backwards compatibility, we need to check we're in a\n // browser context before continuing.\n if (typeof self !== 'undefined' &&\n // AMP / No-JS mode does not inject these helpers:\n '$RefreshHelpers$' in self) {\n // @ts-ignore __webpack_module__ is global\n var currentExports = module.exports;\n // @ts-ignore __webpack_module__ is global\n var prevSignature = (_b = (_a = module.hot.data) === null || _a === void 0 ? void 0 : _a.prevSignature) !== null && _b !== void 0 ? _b : null;\n // This cannot happen in MainTemplate because the exports mismatch between\n // templating and execution.\n self.$RefreshHelpers$.registerExportsForReactRefresh(currentExports, module.id);\n // A module can be accepted automatically based on its exports, e.g. when\n // it is a Refresh Boundary.\n if (self.$RefreshHelpers$.isReactRefreshBoundary(currentExports)) {\n // Save the previous exports signature on update so we can compare the boundary\n // signatures. We avoid saving exports themselves since it causes memory leaks (https://github.com/vercel/next.js/pull/53797)\n module.hot.dispose(function (data) {\n data.prevSignature =\n self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports);\n });\n // Unconditionally accept an update to this module, we'll check if it's\n // still a Refresh Boundary later.\n // @ts-ignore importMeta is replaced in the loader\n module.hot.accept();\n // This field is set when the previous version of this module was a\n // Refresh Boundary, letting us know we need to check for invalidation or\n // enqueue an update.\n if (prevSignature !== null) {\n // A boundary can become ineligible if its exports are incompatible\n // with the previous exports.\n //\n // For example, if you add/remove/change exports, we'll want to\n // re-execute the importing modules, and force those components to\n // re-render. Similarly, if you convert a class component to a\n // function, we want to invalidate the boundary.\n if (self.$RefreshHelpers$.shouldInvalidateReactRefreshBoundary(prevSignature, self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports))) {\n module.hot.invalidate();\n }\n else {\n self.$RefreshHelpers$.scheduleUpdate();\n }\n }\n }\n else {\n // Since we just executed the code for the module, it's possible that the\n // new exports made it ineligible for being a boundary.\n // We only care about the case when we were _previously_ a boundary,\n // because we already accepted this update (accidental side effect).\n var isNoLongerABoundary = prevSignature !== null;\n if (isNoLongerABoundary) {\n module.hot.invalidate();\n }\n }\n }\n })();\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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QkFBZSxzQkFBK0MsT0FBM0J1QixtQkFBbUJTLFNBQVEsV0FDakU7UUFDRWhCLFFBQVE7UUFDUkMsU0FBUztZQUFFLGdCQUFnQjtRQUFtQjtRQUM5Q0MsTUFBTUMsS0FBS0MsU0FBUyxDQUFDO1lBQUVhO1FBQVM7SUFDbEM7SUFFRixJQUFJLENBQUM1QixJQUFJQyxFQUFFLEVBQUU7UUFDWCxNQUFNQyxPQUFPLE1BQU1GLElBQUlFLElBQUksR0FBR0MsS0FBSyxDQUFDLElBQU1ILElBQUlJLFVBQVU7UUFDeEQsTUFBTSxJQUFJQyxNQUFNLFFBQXVCSCxPQUFmRixJQUFJTSxNQUFNLEVBQUMsTUFBUyxPQUFMSjtJQUN6QztBQUNGIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL3NyYy9saWIvc2VydmljZXMudHM/MDcwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIEluZ2VzdGlvbkpvYlN0YXR1cyxcbiAgQ29tcGxldGVQYXlsb2FkLFxuICBDb21wbGV0ZVJlc3BvbnNlLFxuICBMZWFkZXJib2FyZEVudHJ5LFxuICBGZWVkRW50cnksXG59IGZyb20gJ0AvdHlwZXMnXG5cbmNvbnN0IElOR0VTVElPTl9VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19JTkdFU1RJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDEnXG5jb25zdCBHRU5FUkFUSU9OX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0dFTkVSQVRJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDInXG5jb25zdCBDVVJSSUNVTFVNX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDMnXG5jb25zdCBQUk9HUkVTU19VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19QUk9HUkVTU19VUkwgPz8gJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwNSdcblxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlUmVzcG9uc2U8VD4ocmVzOiBSZXNwb25zZSk6IFByb21pc2U8VD4ge1xuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxuICByZXR1cm4gcmVzLmpzb24oKSBhcyBQcm9taXNlPFQ+XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0SW5nZXN0KHBheWxvYWQ6IHtcbiAgZG9jdW1lbnRJZDogc3RyaW5nXG4gIGZpbGVuYW1lOiBzdHJpbmdcbiAgZm9ybWF0OiAncGRmJyB8ICdtZCcgfCAndHh0J1xuICBmaWxlVXJsOiBzdHJpbmdcbn0pOiBQcm9taXNlPHsgam9iSWQ6IHN0cmluZyB9PiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdGAsIHtcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICBib2R5OiBKU09OLnN0cmluZ2lmeShwYXlsb2FkKSxcbiAgfSlcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPHsgam9iSWQ6IHN0cmluZyB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRJbmdlc3Rpb25TdGF0dXMoam9iSWQ6IHN0cmluZyk6IFByb21pc2U8SW5nZXN0aW9uSm9iU3RhdHVzPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdC9zdGF0dXMvJHtlbmNvZGVVUklDb21wb25lbnQoam9iSWQpfWApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxJbmdlc3Rpb25Kb2JTdGF0dXM+KHJlcylcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHBvc3RHZW5lcmF0ZUFsbCh0aGVtZUlkOiBzdHJpbmcpOiBQcm9taXNlPHsgcXVldWVkOiBudW1iZXIgfT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtHRU5FUkFUSU9OX1VSTH0vZ2VuZXJhdGUvdGhlbWUvJHtlbmNvZGVVUklDb21wb25lbnQodGhlbWVJZCl9YCwge1xuICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgIGhlYWRlcnM6IHsgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyB9LFxuICB9KVxuICByZXR1cm4gaGFuZGxlUmVzcG9uc2U8eyBxdWV1ZWQ6IG51bWJlciB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0Q29tcGxldGUocGF5bG9hZDogQ29tcGxldGVQYXlsb2FkKTogUHJvbWlzZTxDb21wbGV0ZVJlc3BvbnNlPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vY29tcGxldGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkocGF5bG9hZCksXG4gIH0pXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxDb21wbGV0ZVJlc3BvbnNlPihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRMZWFkZXJib2FyZCgpOiBQcm9taXNlPExlYWRlcmJvYXJkRW50cnlbXT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtQUk9HUkVTU19VUkx9L2xlYWRlcmJvYXJkYClcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPExlYWRlcmJvYXJkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0RmVlZCgpOiBQcm9taXNlPEZlZWRFbnRyeVtdPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vZmVlZGApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxGZWVkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcG9zdEN1cnJpY3VsdW1Db25maXJtKHZlcnNpb25JZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3ZlcnNpb25zLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHZlcnNpb25JZCl9L2NvbmZpcm1gLFxuICAgIHtcbiAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyKHdlZWtJZDogc3RyaW5nLCBwb3NpdGlvbjogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3dlZWtzLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHdlZWtJZCl9L29yZGVyYCxcbiAgICB7XG4gICAgICBtZXRob2Q6ICdQQVRDSCcsXG4gICAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHsgcG9zaXRpb24gfSksXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuIl0sIm5hbWVzIjpbInByb2Nlc3MiLCJJTkdFU1RJT05fVVJMIiwiZW52IiwiTkVYVF9QVUJMSUNfSU5HRVNUSU9OX1VSTCIsIkdFTkVSQVRJT05fVVJMIiwiTkVYVF9QVUJMSUNfR0VORVJBVElPTl9VUkwiLCJDVVJSSUNVTFVNX1VSTCIsIk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMIiwiUFJPR1JFU1NfVVJMIiwiTkVYVF9QVUJMSUNfUFJPR1JFU1NfVVJMIiwiaGFuZGxlUmVzcG9uc2UiLCJyZXMiLCJvayIsInRleHQiLCJjYXRjaCIsInN0YXR1c1RleHQiLCJFcnJvciIsInN0YXR1cyIsImpzb24iLCJwb3N0SW5nZXN0IiwicGF5bG9hZCIsImZldGNoIiwibWV0aG9kIiwiaGVhZGVycyIsImJvZHkiLCJKU09OIiwic3RyaW5naWZ5IiwiZ2V0SW5nZXN0aW9uU3RhdHVzIiwiam9iSWQiLCJlbmNvZGVVUklDb21wb25lbnQiLCJwb3N0R2VuZXJhdGVBbGwiLCJ0aGVtZUlkIiwicG9zdENvbXBsZXRlIiwiZ2V0TGVhZGVyYm9hcmQiLCJnZXRGZWVkIiwicG9zdEN1cnJpY3VsdW1Db25maXJtIiwidmVyc2lvbklkIiwicGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyIiwid2Vla0lkIiwicG9zaXRpb24iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/lib/services.ts\n")); +eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFeed: function() { return /* binding */ getFeed; },\n/* harmony export */ getIngestionStatus: function() { return /* binding */ getIngestionStatus; },\n/* harmony export */ getLeaderboard: function() { return /* binding */ getLeaderboard; },\n/* harmony export */ patchCurriculumWeekOrder: function() { return /* binding */ patchCurriculumWeekOrder; },\n/* harmony export */ postComplete: function() { return /* binding */ postComplete; },\n/* harmony export */ postCurriculumConfirm: function() { return /* binding */ postCurriculumConfirm; },\n/* harmony export */ postGenerateAll: function() { return /* binding */ postGenerateAll; },\n/* harmony export */ postIngest: function() { return /* binding */ postIngest; }\n/* harmony export */ });\nvar _process_env_NEXT_PUBLIC_INGESTION_URL;\nconst INGESTION_URL = (_process_env_NEXT_PUBLIC_INGESTION_URL = \"http://localhost:3001\") !== null && _process_env_NEXT_PUBLIC_INGESTION_URL !== void 0 ? _process_env_NEXT_PUBLIC_INGESTION_URL : \"http://localhost:3001\";\nvar _process_env_NEXT_PUBLIC_GENERATION_URL;\nconst GENERATION_URL = (_process_env_NEXT_PUBLIC_GENERATION_URL = \"http://localhost:3002\") !== null && _process_env_NEXT_PUBLIC_GENERATION_URL !== void 0 ? _process_env_NEXT_PUBLIC_GENERATION_URL : \"http://localhost:3002\";\nvar _process_env_NEXT_PUBLIC_CURRICULUM_URL;\nconst CURRICULUM_URL = (_process_env_NEXT_PUBLIC_CURRICULUM_URL = \"http://localhost:3003\") !== null && _process_env_NEXT_PUBLIC_CURRICULUM_URL !== void 0 ? _process_env_NEXT_PUBLIC_CURRICULUM_URL : \"http://localhost:3003\";\nvar _process_env_NEXT_PUBLIC_PROGRESS_URL;\nconst PROGRESS_URL = (_process_env_NEXT_PUBLIC_PROGRESS_URL = \"http://localhost:3005\") !== null && _process_env_NEXT_PUBLIC_PROGRESS_URL !== void 0 ? _process_env_NEXT_PUBLIC_PROGRESS_URL : \"http://localhost:3005\";\nasync function handleResponse(res) {\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n return res.json();\n}\nasync function postIngest(payload) {\n const res = await fetch(\"\".concat(INGESTION_URL, \"/ingest\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getIngestionStatus(jobId) {\n const res = await fetch(\"\".concat(INGESTION_URL, \"/ingest/status/\").concat(encodeURIComponent(jobId)));\n return handleResponse(res);\n}\nasync function postGenerateAll(themeId) {\n const res = await fetch(\"\".concat(GENERATION_URL, \"/generate\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n themeId\n })\n });\n const data = await handleResponse(res);\n return {\n queued: data.totalItems\n };\n}\nasync function postComplete(payload) {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/complete\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getLeaderboard() {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/leaderboard\"));\n return handleResponse(res);\n}\nasync function getFeed() {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/feed\"));\n return handleResponse(res);\n}\nasync function postCurriculumConfirm(versionId) {\n const res = await fetch(\"\".concat(CURRICULUM_URL, \"/curriculum/versions/\").concat(encodeURIComponent(versionId), \"/confirm\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n}\nasync function patchCurriculumWeekOrder(weekId, position) {\n const res = await fetch(\"\".concat(CURRICULUM_URL, \"/curriculum/weeks/\").concat(encodeURIComponent(weekId), \"/order\"), {\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n position\n })\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n}\n\n\n;\n // Wrapped in an IIFE to avoid polluting the global scope\n ;\n (function () {\n var _a, _b;\n // Legacy CSS implementations will `eval` browser code in a Node.js context\n // to extract CSS. For backwards compatibility, we need to check we're in a\n // browser context before continuing.\n if (typeof self !== 'undefined' &&\n // AMP / No-JS mode does not inject these helpers:\n '$RefreshHelpers$' in self) {\n // @ts-ignore __webpack_module__ is global\n var currentExports = module.exports;\n // @ts-ignore __webpack_module__ is global\n var prevSignature = (_b = (_a = module.hot.data) === null || _a === void 0 ? void 0 : _a.prevSignature) !== null && _b !== void 0 ? _b : null;\n // This cannot happen in MainTemplate because the exports mismatch between\n // templating and execution.\n self.$RefreshHelpers$.registerExportsForReactRefresh(currentExports, module.id);\n // A module can be accepted automatically based on its exports, e.g. when\n // it is a Refresh Boundary.\n if (self.$RefreshHelpers$.isReactRefreshBoundary(currentExports)) {\n // Save the previous exports signature on update so we can compare the boundary\n // signatures. We avoid saving exports themselves since it causes memory leaks (https://github.com/vercel/next.js/pull/53797)\n module.hot.dispose(function (data) {\n data.prevSignature =\n self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports);\n });\n // Unconditionally accept an update to this module, we'll check if it's\n // still a Refresh Boundary later.\n // @ts-ignore importMeta is replaced in the loader\n module.hot.accept();\n // This field is set when the previous version of this module was a\n // Refresh Boundary, letting us know we need to check for invalidation or\n // enqueue an update.\n if (prevSignature !== null) {\n // A boundary can become ineligible if its exports are incompatible\n // with the previous exports.\n //\n // For example, if you add/remove/change exports, we'll want to\n // re-execute the importing modules, and force those components to\n // re-render. Similarly, if you convert a class component to a\n // function, we want to invalidate the boundary.\n if (self.$RefreshHelpers$.shouldInvalidateReactRefreshBoundary(prevSignature, self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports))) {\n module.hot.invalidate();\n }\n else {\n self.$RefreshHelpers$.scheduleUpdate();\n }\n }\n }\n else {\n // Since we just executed the code for the module, it's possible that the\n // new exports made it ineligible for being a boundary.\n // We only care about the case when we were _previously_ a boundary,\n // because we already accepted this update (accidental side effect).\n var isNoLongerABoundary = prevSignature !== null;\n if (isNoLongerABoundary) {\n module.hot.invalidate();\n }\n }\n }\n })();\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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QXlCQyxNQUFjLEVBQUVDLFFBQWdCO0lBQzdFLE1BQU0vQixNQUFNLE1BQU1VLE1BQ2hCLEdBQXNDUSxPQUFuQ3ZCLGdCQUFlLHNCQUErQyxPQUEzQnVCLG1CQUFtQlksU0FBUSxXQUNqRTtRQUNFbkIsUUFBUTtRQUNSQyxTQUFTO1lBQUUsZ0JBQWdCO1FBQW1CO1FBQzlDQyxNQUFNQyxLQUFLQyxTQUFTLENBQUM7WUFBRWdCO1FBQVM7SUFDbEM7SUFFRixJQUFJLENBQUMvQixJQUFJQyxFQUFFLEVBQUU7UUFDWCxNQUFNQyxPQUFPLE1BQU1GLElBQUlFLElBQUksR0FBR0MsS0FBSyxDQUFDLElBQU1ILElBQUlJLFVBQVU7UUFDeEQsTUFBTSxJQUFJQyxNQUFNLFFBQXVCSCxPQUFmRixJQUFJTSxNQUFNLEVBQUMsTUFBUyxPQUFMSjtJQUN6QztBQUNGIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL3NyYy9saWIvc2VydmljZXMudHM/MDcwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIEluZ2VzdGlvbkpvYlN0YXR1cyxcbiAgQ29tcGxldGVQYXlsb2FkLFxuICBDb21wbGV0ZVJlc3BvbnNlLFxuICBMZWFkZXJib2FyZEVudHJ5LFxuICBGZWVkRW50cnksXG59IGZyb20gJ0AvdHlwZXMnXG5cbmNvbnN0IElOR0VTVElPTl9VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19JTkdFU1RJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDEnXG5jb25zdCBHRU5FUkFUSU9OX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0dFTkVSQVRJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDInXG5jb25zdCBDVVJSSUNVTFVNX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDMnXG5jb25zdCBQUk9HUkVTU19VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19QUk9HUkVTU19VUkwgPz8gJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwNSdcblxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlUmVzcG9uc2U8VD4ocmVzOiBSZXNwb25zZSk6IFByb21pc2U8VD4ge1xuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxuICByZXR1cm4gcmVzLmpzb24oKSBhcyBQcm9taXNlPFQ+XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0SW5nZXN0KHBheWxvYWQ6IHtcbiAgZG9jdW1lbnRJZDogc3RyaW5nXG4gIGZpbGVuYW1lOiBzdHJpbmdcbiAgZm9ybWF0OiAncGRmJyB8ICdtZCcgfCAndHh0J1xuICBmaWxlVXJsOiBzdHJpbmdcbn0pOiBQcm9taXNlPHsgam9iSWQ6IHN0cmluZyB9PiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdGAsIHtcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICBib2R5OiBKU09OLnN0cmluZ2lmeShwYXlsb2FkKSxcbiAgfSlcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPHsgam9iSWQ6IHN0cmluZyB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRJbmdlc3Rpb25TdGF0dXMoam9iSWQ6IHN0cmluZyk6IFByb21pc2U8SW5nZXN0aW9uSm9iU3RhdHVzPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdC9zdGF0dXMvJHtlbmNvZGVVUklDb21wb25lbnQoam9iSWQpfWApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxJbmdlc3Rpb25Kb2JTdGF0dXM+KHJlcylcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHBvc3RHZW5lcmF0ZUFsbCh0aGVtZUlkOiBzdHJpbmcpOiBQcm9taXNlPHsgcXVldWVkOiBudW1iZXIgfT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtHRU5FUkFUSU9OX1VSTH0vZ2VuZXJhdGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkoeyB0aGVtZUlkIH0pLFxuICB9KVxuICBjb25zdCBkYXRhID0gYXdhaXQgaGFuZGxlUmVzcG9uc2U8eyBqb2JJZDogc3RyaW5nOyB0b3RhbEl0ZW1zOiBudW1iZXIgfT4ocmVzKVxuICByZXR1cm4geyBxdWV1ZWQ6IGRhdGEudG90YWxJdGVtcyB9XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0Q29tcGxldGUocGF5bG9hZDogQ29tcGxldGVQYXlsb2FkKTogUHJvbWlzZTxDb21wbGV0ZVJlc3BvbnNlPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vY29tcGxldGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkocGF5bG9hZCksXG4gIH0pXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxDb21wbGV0ZVJlc3BvbnNlPihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRMZWFkZXJib2FyZCgpOiBQcm9taXNlPExlYWRlcmJvYXJkRW50cnlbXT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtQUk9HUkVTU19VUkx9L2xlYWRlcmJvYXJkYClcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPExlYWRlcmJvYXJkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0RmVlZCgpOiBQcm9taXNlPEZlZWRFbnRyeVtdPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vZmVlZGApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxGZWVkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcG9zdEN1cnJpY3VsdW1Db25maXJtKHZlcnNpb25JZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3ZlcnNpb25zLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHZlcnNpb25JZCl9L2NvbmZpcm1gLFxuICAgIHtcbiAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyKHdlZWtJZDogc3RyaW5nLCBwb3NpdGlvbjogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3dlZWtzLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHdlZWtJZCl9L29yZGVyYCxcbiAgICB7XG4gICAgICBtZXRob2Q6ICdQQVRDSCcsXG4gICAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHsgcG9zaXRpb24gfSksXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuIl0sIm5hbWVzIjpbInByb2Nlc3MiLCJJTkdFU1RJT05fVVJMIiwiZW52IiwiTkVYVF9QVUJMSUNfSU5HRVNUSU9OX1VSTCIsIkdFTkVSQVRJT05fVVJMIiwiTkVYVF9QVUJMSUNfR0VORVJBVElPTl9VUkwiLCJDVVJSSUNVTFVNX1VSTCIsIk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMIiwiUFJPR1JFU1NfVVJMIiwiTkVYVF9QVUJMSUNfUFJPR1JFU1NfVVJMIiwiaGFuZGxlUmVzcG9uc2UiLCJyZXMiLCJvayIsInRleHQiLCJjYXRjaCIsInN0YXR1c1RleHQiLCJFcnJvciIsInN0YXR1cyIsImpzb24iLCJwb3N0SW5nZXN0IiwicGF5bG9hZCIsImZldGNoIiwibWV0aG9kIiwiaGVhZGVycyIsImJvZHkiLCJKU09OIiwic3RyaW5naWZ5IiwiZ2V0SW5nZXN0aW9uU3RhdHVzIiwiam9iSWQiLCJlbmNvZGVVUklDb21wb25lbnQiLCJwb3N0R2VuZXJhdGVBbGwiLCJ0aGVtZUlkIiwiZGF0YSIsInF1ZXVlZCIsInRvdGFsSXRlbXMiLCJwb3N0Q29tcGxldGUiLCJnZXRMZWFkZXJib2FyZCIsImdldEZlZWQiLCJwb3N0Q3VycmljdWx1bUNvbmZpcm0iLCJ2ZXJzaW9uSWQiLCJwYXRjaEN1cnJpY3VsdW1XZWVrT3JkZXIiLCJ3ZWVrSWQiLCJwb3NpdGlvbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/lib/services.ts\n")); /***/ }), diff --git a/app/frontend/.next/static/chunks/app/app/profile/page.js b/app/frontend/.next/static/chunks/app/app/profile/page.js index 75c41d0..a727a04 100644 --- a/app/frontend/.next/static/chunks/app/app/profile/page.js +++ b/app/frontend/.next/static/chunks/app/app/profile/page.js @@ -113,7 +113,7 @@ eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* har /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFeed: function() { return /* binding */ getFeed; },\n/* harmony export */ getIngestionStatus: function() { return /* binding */ getIngestionStatus; },\n/* harmony export */ getLeaderboard: function() { return /* binding */ getLeaderboard; },\n/* harmony export */ patchCurriculumWeekOrder: function() { return /* binding */ patchCurriculumWeekOrder; },\n/* harmony export */ postComplete: function() { return /* binding */ postComplete; },\n/* harmony export */ postCurriculumConfirm: function() { return /* binding */ postCurriculumConfirm; },\n/* harmony export */ postGenerateAll: function() { return /* binding */ postGenerateAll; },\n/* harmony export */ postIngest: function() { return /* binding */ postIngest; }\n/* harmony export */ });\nvar _process_env_NEXT_PUBLIC_INGESTION_URL;\nconst INGESTION_URL = (_process_env_NEXT_PUBLIC_INGESTION_URL = \"http://localhost:3001\") !== null && _process_env_NEXT_PUBLIC_INGESTION_URL !== void 0 ? _process_env_NEXT_PUBLIC_INGESTION_URL : \"http://localhost:3001\";\nvar _process_env_NEXT_PUBLIC_GENERATION_URL;\nconst GENERATION_URL = (_process_env_NEXT_PUBLIC_GENERATION_URL = \"http://localhost:3002\") !== null && _process_env_NEXT_PUBLIC_GENERATION_URL !== void 0 ? _process_env_NEXT_PUBLIC_GENERATION_URL : \"http://localhost:3002\";\nvar _process_env_NEXT_PUBLIC_CURRICULUM_URL;\nconst CURRICULUM_URL = (_process_env_NEXT_PUBLIC_CURRICULUM_URL = \"http://localhost:3003\") !== null && _process_env_NEXT_PUBLIC_CURRICULUM_URL !== void 0 ? _process_env_NEXT_PUBLIC_CURRICULUM_URL : \"http://localhost:3003\";\nvar _process_env_NEXT_PUBLIC_PROGRESS_URL;\nconst PROGRESS_URL = (_process_env_NEXT_PUBLIC_PROGRESS_URL = \"http://localhost:3005\") !== null && _process_env_NEXT_PUBLIC_PROGRESS_URL !== void 0 ? _process_env_NEXT_PUBLIC_PROGRESS_URL : \"http://localhost:3005\";\nasync function handleResponse(res) {\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n return res.json();\n}\nasync function postIngest(payload) {\n const res = await fetch(\"\".concat(INGESTION_URL, \"/ingest\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getIngestionStatus(jobId) {\n const res = await fetch(\"\".concat(INGESTION_URL, \"/ingest/status/\").concat(encodeURIComponent(jobId)));\n return handleResponse(res);\n}\nasync function postGenerateAll(themeId) {\n const res = await fetch(\"\".concat(GENERATION_URL, \"/generate/theme/\").concat(encodeURIComponent(themeId)), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n return handleResponse(res);\n}\nasync function postComplete(payload) {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/complete\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getLeaderboard() {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/leaderboard\"));\n return handleResponse(res);\n}\nasync function getFeed() {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/feed\"));\n return handleResponse(res);\n}\nasync function postCurriculumConfirm(versionId) {\n const res = await fetch(\"\".concat(CURRICULUM_URL, \"/curriculum/versions/\").concat(encodeURIComponent(versionId), \"/confirm\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n}\nasync function patchCurriculumWeekOrder(weekId, position) {\n const res = await fetch(\"\".concat(CURRICULUM_URL, \"/curriculum/weeks/\").concat(encodeURIComponent(weekId), \"/order\"), {\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n position\n })\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n}\n\n\n;\n // Wrapped in an IIFE to avoid polluting the global scope\n ;\n (function () {\n var _a, _b;\n // Legacy CSS implementations will `eval` browser code in a Node.js context\n // to extract CSS. For backwards compatibility, we need to check we're in a\n // browser context before continuing.\n if (typeof self !== 'undefined' &&\n // AMP / No-JS mode does not inject these helpers:\n '$RefreshHelpers$' in self) {\n // @ts-ignore __webpack_module__ is global\n var currentExports = module.exports;\n // @ts-ignore __webpack_module__ is global\n var prevSignature = (_b = (_a = module.hot.data) === null || _a === void 0 ? void 0 : _a.prevSignature) !== null && _b !== void 0 ? _b : null;\n // This cannot happen in MainTemplate because the exports mismatch between\n // templating and execution.\n self.$RefreshHelpers$.registerExportsForReactRefresh(currentExports, module.id);\n // A module can be accepted automatically based on its exports, e.g. when\n // it is a Refresh Boundary.\n if (self.$RefreshHelpers$.isReactRefreshBoundary(currentExports)) {\n // Save the previous exports signature on update so we can compare the boundary\n // signatures. We avoid saving exports themselves since it causes memory leaks (https://github.com/vercel/next.js/pull/53797)\n module.hot.dispose(function (data) {\n data.prevSignature =\n self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports);\n });\n // Unconditionally accept an update to this module, we'll check if it's\n // still a Refresh Boundary later.\n // @ts-ignore importMeta is replaced in the loader\n module.hot.accept();\n // This field is set when the previous version of this module was a\n // Refresh Boundary, letting us know we need to check for invalidation or\n // enqueue an update.\n if (prevSignature !== null) {\n // A boundary can become ineligible if its exports are incompatible\n // with the previous exports.\n //\n // For example, if you add/remove/change exports, we'll want to\n // re-execute the importing modules, and force those components to\n // re-render. Similarly, if you convert a class component to a\n // function, we want to invalidate the boundary.\n if (self.$RefreshHelpers$.shouldInvalidateReactRefreshBoundary(prevSignature, self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports))) {\n module.hot.invalidate();\n }\n else {\n self.$RefreshHelpers$.scheduleUpdate();\n }\n }\n }\n else {\n // Since we just executed the code for the module, it's possible that the\n // new exports made it ineligible for being a boundary.\n // We only care about the case when we were _previously_ a boundary,\n // because we already accepted this update (accidental side effect).\n var isNoLongerABoundary = prevSignature !== null;\n if (isNoLongerABoundary) {\n module.hot.invalidate();\n }\n }\n }\n })();\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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QkFBZSxzQkFBK0MsT0FBM0J1QixtQkFBbUJTLFNBQVEsV0FDakU7UUFDRWhCLFFBQVE7UUFDUkMsU0FBUztZQUFFLGdCQUFnQjtRQUFtQjtRQUM5Q0MsTUFBTUMsS0FBS0MsU0FBUyxDQUFDO1lBQUVhO1FBQVM7SUFDbEM7SUFFRixJQUFJLENBQUM1QixJQUFJQyxFQUFFLEVBQUU7UUFDWCxNQUFNQyxPQUFPLE1BQU1GLElBQUlFLElBQUksR0FBR0MsS0FBSyxDQUFDLElBQU1ILElBQUlJLFVBQVU7UUFDeEQsTUFBTSxJQUFJQyxNQUFNLFFBQXVCSCxPQUFmRixJQUFJTSxNQUFNLEVBQUMsTUFBUyxPQUFMSjtJQUN6QztBQUNGIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL3NyYy9saWIvc2VydmljZXMudHM/MDcwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIEluZ2VzdGlvbkpvYlN0YXR1cyxcbiAgQ29tcGxldGVQYXlsb2FkLFxuICBDb21wbGV0ZVJlc3BvbnNlLFxuICBMZWFkZXJib2FyZEVudHJ5LFxuICBGZWVkRW50cnksXG59IGZyb20gJ0AvdHlwZXMnXG5cbmNvbnN0IElOR0VTVElPTl9VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19JTkdFU1RJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDEnXG5jb25zdCBHRU5FUkFUSU9OX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0dFTkVSQVRJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDInXG5jb25zdCBDVVJSSUNVTFVNX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDMnXG5jb25zdCBQUk9HUkVTU19VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19QUk9HUkVTU19VUkwgPz8gJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwNSdcblxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlUmVzcG9uc2U8VD4ocmVzOiBSZXNwb25zZSk6IFByb21pc2U8VD4ge1xuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxuICByZXR1cm4gcmVzLmpzb24oKSBhcyBQcm9taXNlPFQ+XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0SW5nZXN0KHBheWxvYWQ6IHtcbiAgZG9jdW1lbnRJZDogc3RyaW5nXG4gIGZpbGVuYW1lOiBzdHJpbmdcbiAgZm9ybWF0OiAncGRmJyB8ICdtZCcgfCAndHh0J1xuICBmaWxlVXJsOiBzdHJpbmdcbn0pOiBQcm9taXNlPHsgam9iSWQ6IHN0cmluZyB9PiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdGAsIHtcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICBib2R5OiBKU09OLnN0cmluZ2lmeShwYXlsb2FkKSxcbiAgfSlcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPHsgam9iSWQ6IHN0cmluZyB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRJbmdlc3Rpb25TdGF0dXMoam9iSWQ6IHN0cmluZyk6IFByb21pc2U8SW5nZXN0aW9uSm9iU3RhdHVzPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdC9zdGF0dXMvJHtlbmNvZGVVUklDb21wb25lbnQoam9iSWQpfWApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxJbmdlc3Rpb25Kb2JTdGF0dXM+KHJlcylcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHBvc3RHZW5lcmF0ZUFsbCh0aGVtZUlkOiBzdHJpbmcpOiBQcm9taXNlPHsgcXVldWVkOiBudW1iZXIgfT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtHRU5FUkFUSU9OX1VSTH0vZ2VuZXJhdGUvdGhlbWUvJHtlbmNvZGVVUklDb21wb25lbnQodGhlbWVJZCl9YCwge1xuICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgIGhlYWRlcnM6IHsgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyB9LFxuICB9KVxuICByZXR1cm4gaGFuZGxlUmVzcG9uc2U8eyBxdWV1ZWQ6IG51bWJlciB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0Q29tcGxldGUocGF5bG9hZDogQ29tcGxldGVQYXlsb2FkKTogUHJvbWlzZTxDb21wbGV0ZVJlc3BvbnNlPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vY29tcGxldGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkocGF5bG9hZCksXG4gIH0pXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxDb21wbGV0ZVJlc3BvbnNlPihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRMZWFkZXJib2FyZCgpOiBQcm9taXNlPExlYWRlcmJvYXJkRW50cnlbXT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtQUk9HUkVTU19VUkx9L2xlYWRlcmJvYXJkYClcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPExlYWRlcmJvYXJkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0RmVlZCgpOiBQcm9taXNlPEZlZWRFbnRyeVtdPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vZmVlZGApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxGZWVkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcG9zdEN1cnJpY3VsdW1Db25maXJtKHZlcnNpb25JZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3ZlcnNpb25zLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHZlcnNpb25JZCl9L2NvbmZpcm1gLFxuICAgIHtcbiAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyKHdlZWtJZDogc3RyaW5nLCBwb3NpdGlvbjogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3dlZWtzLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHdlZWtJZCl9L29yZGVyYCxcbiAgICB7XG4gICAgICBtZXRob2Q6ICdQQVRDSCcsXG4gICAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHsgcG9zaXRpb24gfSksXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuIl0sIm5hbWVzIjpbInByb2Nlc3MiLCJJTkdFU1RJT05fVVJMIiwiZW52IiwiTkVYVF9QVUJMSUNfSU5HRVNUSU9OX1VSTCIsIkdFTkVSQVRJT05fVVJMIiwiTkVYVF9QVUJMSUNfR0VORVJBVElPTl9VUkwiLCJDVVJSSUNVTFVNX1VSTCIsIk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMIiwiUFJPR1JFU1NfVVJMIiwiTkVYVF9QVUJMSUNfUFJPR1JFU1NfVVJMIiwiaGFuZGxlUmVzcG9uc2UiLCJyZXMiLCJvayIsInRleHQiLCJjYXRjaCIsInN0YXR1c1RleHQiLCJFcnJvciIsInN0YXR1cyIsImpzb24iLCJwb3N0SW5nZXN0IiwicGF5bG9hZCIsImZldGNoIiwibWV0aG9kIiwiaGVhZGVycyIsImJvZHkiLCJKU09OIiwic3RyaW5naWZ5IiwiZ2V0SW5nZXN0aW9uU3RhdHVzIiwiam9iSWQiLCJlbmNvZGVVUklDb21wb25lbnQiLCJwb3N0R2VuZXJhdGVBbGwiLCJ0aGVtZUlkIiwicG9zdENvbXBsZXRlIiwiZ2V0TGVhZGVyYm9hcmQiLCJnZXRGZWVkIiwicG9zdEN1cnJpY3VsdW1Db25maXJtIiwidmVyc2lvbklkIiwicGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyIiwid2Vla0lkIiwicG9zaXRpb24iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/lib/services.ts\n")); +eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFeed: function() { return /* binding */ getFeed; },\n/* harmony export */ getIngestionStatus: function() { return /* binding */ getIngestionStatus; },\n/* harmony export */ getLeaderboard: function() { return /* binding */ getLeaderboard; },\n/* harmony export */ patchCurriculumWeekOrder: function() { return /* binding */ patchCurriculumWeekOrder; },\n/* harmony export */ postComplete: function() { return /* binding */ postComplete; },\n/* harmony export */ postCurriculumConfirm: function() { return /* binding */ postCurriculumConfirm; },\n/* harmony export */ postGenerateAll: function() { return /* binding */ postGenerateAll; },\n/* harmony export */ postIngest: function() { return /* binding */ postIngest; }\n/* harmony export */ });\nvar _process_env_NEXT_PUBLIC_INGESTION_URL;\nconst INGESTION_URL = (_process_env_NEXT_PUBLIC_INGESTION_URL = \"http://localhost:3001\") !== null && _process_env_NEXT_PUBLIC_INGESTION_URL !== void 0 ? _process_env_NEXT_PUBLIC_INGESTION_URL : \"http://localhost:3001\";\nvar _process_env_NEXT_PUBLIC_GENERATION_URL;\nconst GENERATION_URL = (_process_env_NEXT_PUBLIC_GENERATION_URL = \"http://localhost:3002\") !== null && _process_env_NEXT_PUBLIC_GENERATION_URL !== void 0 ? _process_env_NEXT_PUBLIC_GENERATION_URL : \"http://localhost:3002\";\nvar _process_env_NEXT_PUBLIC_CURRICULUM_URL;\nconst CURRICULUM_URL = (_process_env_NEXT_PUBLIC_CURRICULUM_URL = \"http://localhost:3003\") !== null && _process_env_NEXT_PUBLIC_CURRICULUM_URL !== void 0 ? _process_env_NEXT_PUBLIC_CURRICULUM_URL : \"http://localhost:3003\";\nvar _process_env_NEXT_PUBLIC_PROGRESS_URL;\nconst PROGRESS_URL = (_process_env_NEXT_PUBLIC_PROGRESS_URL = \"http://localhost:3005\") !== null && _process_env_NEXT_PUBLIC_PROGRESS_URL !== void 0 ? _process_env_NEXT_PUBLIC_PROGRESS_URL : \"http://localhost:3005\";\nasync function handleResponse(res) {\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n return res.json();\n}\nasync function postIngest(payload) {\n const res = await fetch(\"\".concat(INGESTION_URL, \"/ingest\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getIngestionStatus(jobId) {\n const res = await fetch(\"\".concat(INGESTION_URL, \"/ingest/status/\").concat(encodeURIComponent(jobId)));\n return handleResponse(res);\n}\nasync function postGenerateAll(themeId) {\n const res = await fetch(\"\".concat(GENERATION_URL, \"/generate\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n themeId\n })\n });\n const data = await handleResponse(res);\n return {\n queued: data.totalItems\n };\n}\nasync function postComplete(payload) {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/complete\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getLeaderboard() {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/leaderboard\"));\n return handleResponse(res);\n}\nasync function getFeed() {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/feed\"));\n return handleResponse(res);\n}\nasync function postCurriculumConfirm(versionId) {\n const res = await fetch(\"\".concat(CURRICULUM_URL, \"/curriculum/versions/\").concat(encodeURIComponent(versionId), \"/confirm\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n}\nasync function patchCurriculumWeekOrder(weekId, position) {\n const res = await fetch(\"\".concat(CURRICULUM_URL, \"/curriculum/weeks/\").concat(encodeURIComponent(weekId), \"/order\"), {\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n position\n })\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n}\n\n\n;\n // Wrapped in an IIFE to avoid polluting the global scope\n ;\n (function () {\n var _a, _b;\n // Legacy CSS implementations will `eval` browser code in a Node.js context\n // to extract CSS. For backwards compatibility, we need to check we're in a\n // browser context before continuing.\n if (typeof self !== 'undefined' &&\n // AMP / No-JS mode does not inject these helpers:\n '$RefreshHelpers$' in self) {\n // @ts-ignore __webpack_module__ is global\n var currentExports = module.exports;\n // @ts-ignore __webpack_module__ is global\n var prevSignature = (_b = (_a = module.hot.data) === null || _a === void 0 ? void 0 : _a.prevSignature) !== null && _b !== void 0 ? _b : null;\n // This cannot happen in MainTemplate because the exports mismatch between\n // templating and execution.\n self.$RefreshHelpers$.registerExportsForReactRefresh(currentExports, module.id);\n // A module can be accepted automatically based on its exports, e.g. when\n // it is a Refresh Boundary.\n if (self.$RefreshHelpers$.isReactRefreshBoundary(currentExports)) {\n // Save the previous exports signature on update so we can compare the boundary\n // signatures. We avoid saving exports themselves since it causes memory leaks (https://github.com/vercel/next.js/pull/53797)\n module.hot.dispose(function (data) {\n data.prevSignature =\n self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports);\n });\n // Unconditionally accept an update to this module, we'll check if it's\n // still a Refresh Boundary later.\n // @ts-ignore importMeta is replaced in the loader\n module.hot.accept();\n // This field is set when the previous version of this module was a\n // Refresh Boundary, letting us know we need to check for invalidation or\n // enqueue an update.\n if (prevSignature !== null) {\n // A boundary can become ineligible if its exports are incompatible\n // with the previous exports.\n //\n // For example, if you add/remove/change exports, we'll want to\n // re-execute the importing modules, and force those components to\n // re-render. Similarly, if you convert a class component to a\n // function, we want to invalidate the boundary.\n if (self.$RefreshHelpers$.shouldInvalidateReactRefreshBoundary(prevSignature, self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports))) {\n module.hot.invalidate();\n }\n else {\n self.$RefreshHelpers$.scheduleUpdate();\n }\n }\n }\n else {\n // Since we just executed the code for the module, it's possible that the\n // new exports made it ineligible for being a boundary.\n // We only care about the case when we were _previously_ a boundary,\n // because we already accepted this update (accidental side effect).\n var isNoLongerABoundary = prevSignature !== null;\n if (isNoLongerABoundary) {\n module.hot.invalidate();\n }\n }\n }\n })();\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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QXlCQyxNQUFjLEVBQUVDLFFBQWdCO0lBQzdFLE1BQU0vQixNQUFNLE1BQU1VLE1BQ2hCLEdBQXNDUSxPQUFuQ3ZCLGdCQUFlLHNCQUErQyxPQUEzQnVCLG1CQUFtQlksU0FBUSxXQUNqRTtRQUNFbkIsUUFBUTtRQUNSQyxTQUFTO1lBQUUsZ0JBQWdCO1FBQW1CO1FBQzlDQyxNQUFNQyxLQUFLQyxTQUFTLENBQUM7WUFBRWdCO1FBQVM7SUFDbEM7SUFFRixJQUFJLENBQUMvQixJQUFJQyxFQUFFLEVBQUU7UUFDWCxNQUFNQyxPQUFPLE1BQU1GLElBQUlFLElBQUksR0FBR0MsS0FBSyxDQUFDLElBQU1ILElBQUlJLFVBQVU7UUFDeEQsTUFBTSxJQUFJQyxNQUFNLFFBQXVCSCxPQUFmRixJQUFJTSxNQUFNLEVBQUMsTUFBUyxPQUFMSjtJQUN6QztBQUNGIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL3NyYy9saWIvc2VydmljZXMudHM/MDcwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIEluZ2VzdGlvbkpvYlN0YXR1cyxcbiAgQ29tcGxldGVQYXlsb2FkLFxuICBDb21wbGV0ZVJlc3BvbnNlLFxuICBMZWFkZXJib2FyZEVudHJ5LFxuICBGZWVkRW50cnksXG59IGZyb20gJ0AvdHlwZXMnXG5cbmNvbnN0IElOR0VTVElPTl9VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19JTkdFU1RJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDEnXG5jb25zdCBHRU5FUkFUSU9OX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0dFTkVSQVRJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDInXG5jb25zdCBDVVJSSUNVTFVNX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDMnXG5jb25zdCBQUk9HUkVTU19VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19QUk9HUkVTU19VUkwgPz8gJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwNSdcblxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlUmVzcG9uc2U8VD4ocmVzOiBSZXNwb25zZSk6IFByb21pc2U8VD4ge1xuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxuICByZXR1cm4gcmVzLmpzb24oKSBhcyBQcm9taXNlPFQ+XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0SW5nZXN0KHBheWxvYWQ6IHtcbiAgZG9jdW1lbnRJZDogc3RyaW5nXG4gIGZpbGVuYW1lOiBzdHJpbmdcbiAgZm9ybWF0OiAncGRmJyB8ICdtZCcgfCAndHh0J1xuICBmaWxlVXJsOiBzdHJpbmdcbn0pOiBQcm9taXNlPHsgam9iSWQ6IHN0cmluZyB9PiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdGAsIHtcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICBib2R5OiBKU09OLnN0cmluZ2lmeShwYXlsb2FkKSxcbiAgfSlcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPHsgam9iSWQ6IHN0cmluZyB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRJbmdlc3Rpb25TdGF0dXMoam9iSWQ6IHN0cmluZyk6IFByb21pc2U8SW5nZXN0aW9uSm9iU3RhdHVzPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdC9zdGF0dXMvJHtlbmNvZGVVUklDb21wb25lbnQoam9iSWQpfWApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxJbmdlc3Rpb25Kb2JTdGF0dXM+KHJlcylcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHBvc3RHZW5lcmF0ZUFsbCh0aGVtZUlkOiBzdHJpbmcpOiBQcm9taXNlPHsgcXVldWVkOiBudW1iZXIgfT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtHRU5FUkFUSU9OX1VSTH0vZ2VuZXJhdGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkoeyB0aGVtZUlkIH0pLFxuICB9KVxuICBjb25zdCBkYXRhID0gYXdhaXQgaGFuZGxlUmVzcG9uc2U8eyBqb2JJZDogc3RyaW5nOyB0b3RhbEl0ZW1zOiBudW1iZXIgfT4ocmVzKVxuICByZXR1cm4geyBxdWV1ZWQ6IGRhdGEudG90YWxJdGVtcyB9XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0Q29tcGxldGUocGF5bG9hZDogQ29tcGxldGVQYXlsb2FkKTogUHJvbWlzZTxDb21wbGV0ZVJlc3BvbnNlPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vY29tcGxldGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkocGF5bG9hZCksXG4gIH0pXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxDb21wbGV0ZVJlc3BvbnNlPihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRMZWFkZXJib2FyZCgpOiBQcm9taXNlPExlYWRlcmJvYXJkRW50cnlbXT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtQUk9HUkVTU19VUkx9L2xlYWRlcmJvYXJkYClcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPExlYWRlcmJvYXJkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0RmVlZCgpOiBQcm9taXNlPEZlZWRFbnRyeVtdPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vZmVlZGApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxGZWVkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcG9zdEN1cnJpY3VsdW1Db25maXJtKHZlcnNpb25JZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3ZlcnNpb25zLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHZlcnNpb25JZCl9L2NvbmZpcm1gLFxuICAgIHtcbiAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyKHdlZWtJZDogc3RyaW5nLCBwb3NpdGlvbjogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3dlZWtzLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHdlZWtJZCl9L29yZGVyYCxcbiAgICB7XG4gICAgICBtZXRob2Q6ICdQQVRDSCcsXG4gICAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHsgcG9zaXRpb24gfSksXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuIl0sIm5hbWVzIjpbInByb2Nlc3MiLCJJTkdFU1RJT05fVVJMIiwiZW52IiwiTkVYVF9QVUJMSUNfSU5HRVNUSU9OX1VSTCIsIkdFTkVSQVRJT05fVVJMIiwiTkVYVF9QVUJMSUNfR0VORVJBVElPTl9VUkwiLCJDVVJSSUNVTFVNX1VSTCIsIk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMIiwiUFJPR1JFU1NfVVJMIiwiTkVYVF9QVUJMSUNfUFJPR1JFU1NfVVJMIiwiaGFuZGxlUmVzcG9uc2UiLCJyZXMiLCJvayIsInRleHQiLCJjYXRjaCIsInN0YXR1c1RleHQiLCJFcnJvciIsInN0YXR1cyIsImpzb24iLCJwb3N0SW5nZXN0IiwicGF5bG9hZCIsImZldGNoIiwibWV0aG9kIiwiaGVhZGVycyIsImJvZHkiLCJKU09OIiwic3RyaW5naWZ5IiwiZ2V0SW5nZXN0aW9uU3RhdHVzIiwiam9iSWQiLCJlbmNvZGVVUklDb21wb25lbnQiLCJwb3N0R2VuZXJhdGVBbGwiLCJ0aGVtZUlkIiwiZGF0YSIsInF1ZXVlZCIsInRvdGFsSXRlbXMiLCJwb3N0Q29tcGxldGUiLCJnZXRMZWFkZXJib2FyZCIsImdldEZlZWQiLCJwb3N0Q3VycmljdWx1bUNvbmZpcm0iLCJ2ZXJzaW9uSWQiLCJwYXRjaEN1cnJpY3VsdW1XZWVrT3JkZXIiLCJ3ZWVrSWQiLCJwb3NpdGlvbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/lib/services.ts\n")); /***/ }), diff --git a/app/frontend/.next/static/chunks/app/app/session/page.js b/app/frontend/.next/static/chunks/app/app/session/page.js index d03e800..688f407 100644 --- a/app/frontend/.next/static/chunks/app/app/session/page.js +++ b/app/frontend/.next/static/chunks/app/app/session/page.js @@ -234,7 +234,7 @@ eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* har /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFeed: function() { return /* binding */ getFeed; },\n/* harmony export */ getIngestionStatus: function() { return /* binding */ getIngestionStatus; },\n/* harmony export */ getLeaderboard: function() { return /* binding */ getLeaderboard; },\n/* harmony export */ patchCurriculumWeekOrder: function() { return /* binding */ patchCurriculumWeekOrder; },\n/* harmony export */ postComplete: function() { return /* binding */ postComplete; },\n/* harmony export */ postCurriculumConfirm: function() { return /* binding */ postCurriculumConfirm; },\n/* harmony export */ postGenerateAll: function() { return /* binding */ postGenerateAll; },\n/* harmony export */ postIngest: function() { return /* binding */ postIngest; }\n/* harmony export */ });\nvar _process_env_NEXT_PUBLIC_INGESTION_URL;\nconst INGESTION_URL = (_process_env_NEXT_PUBLIC_INGESTION_URL = \"http://localhost:3001\") !== null && _process_env_NEXT_PUBLIC_INGESTION_URL !== void 0 ? _process_env_NEXT_PUBLIC_INGESTION_URL : \"http://localhost:3001\";\nvar _process_env_NEXT_PUBLIC_GENERATION_URL;\nconst GENERATION_URL = (_process_env_NEXT_PUBLIC_GENERATION_URL = \"http://localhost:3002\") !== null && _process_env_NEXT_PUBLIC_GENERATION_URL !== void 0 ? _process_env_NEXT_PUBLIC_GENERATION_URL : \"http://localhost:3002\";\nvar _process_env_NEXT_PUBLIC_CURRICULUM_URL;\nconst CURRICULUM_URL = (_process_env_NEXT_PUBLIC_CURRICULUM_URL = \"http://localhost:3003\") !== null && _process_env_NEXT_PUBLIC_CURRICULUM_URL !== void 0 ? _process_env_NEXT_PUBLIC_CURRICULUM_URL : \"http://localhost:3003\";\nvar _process_env_NEXT_PUBLIC_PROGRESS_URL;\nconst PROGRESS_URL = (_process_env_NEXT_PUBLIC_PROGRESS_URL = \"http://localhost:3005\") !== null && _process_env_NEXT_PUBLIC_PROGRESS_URL !== void 0 ? _process_env_NEXT_PUBLIC_PROGRESS_URL : \"http://localhost:3005\";\nasync function handleResponse(res) {\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n return res.json();\n}\nasync function postIngest(payload) {\n const res = await fetch(\"\".concat(INGESTION_URL, \"/ingest\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getIngestionStatus(jobId) {\n const res = await fetch(\"\".concat(INGESTION_URL, \"/ingest/status/\").concat(encodeURIComponent(jobId)));\n return handleResponse(res);\n}\nasync function postGenerateAll(themeId) {\n const res = await fetch(\"\".concat(GENERATION_URL, \"/generate/theme/\").concat(encodeURIComponent(themeId)), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n return handleResponse(res);\n}\nasync function postComplete(payload) {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/complete\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getLeaderboard() {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/leaderboard\"));\n return handleResponse(res);\n}\nasync function getFeed() {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/feed\"));\n return handleResponse(res);\n}\nasync function postCurriculumConfirm(versionId) {\n const res = await fetch(\"\".concat(CURRICULUM_URL, \"/curriculum/versions/\").concat(encodeURIComponent(versionId), \"/confirm\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n}\nasync function patchCurriculumWeekOrder(weekId, position) {\n const res = await fetch(\"\".concat(CURRICULUM_URL, \"/curriculum/weeks/\").concat(encodeURIComponent(weekId), \"/order\"), {\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n position\n })\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n}\n\n\n;\n // Wrapped in an IIFE to avoid polluting the global scope\n ;\n (function () {\n var _a, _b;\n // Legacy CSS implementations will `eval` browser code in a Node.js context\n // to extract CSS. For backwards compatibility, we need to check we're in a\n // browser context before continuing.\n if (typeof self !== 'undefined' &&\n // AMP / No-JS mode does not inject these helpers:\n '$RefreshHelpers$' in self) {\n // @ts-ignore __webpack_module__ is global\n var currentExports = module.exports;\n // @ts-ignore __webpack_module__ is global\n var prevSignature = (_b = (_a = module.hot.data) === null || _a === void 0 ? void 0 : _a.prevSignature) !== null && _b !== void 0 ? _b : null;\n // This cannot happen in MainTemplate because the exports mismatch between\n // templating and execution.\n self.$RefreshHelpers$.registerExportsForReactRefresh(currentExports, module.id);\n // A module can be accepted automatically based on its exports, e.g. when\n // it is a Refresh Boundary.\n if (self.$RefreshHelpers$.isReactRefreshBoundary(currentExports)) {\n // Save the previous exports signature on update so we can compare the boundary\n // signatures. We avoid saving exports themselves since it causes memory leaks (https://github.com/vercel/next.js/pull/53797)\n module.hot.dispose(function (data) {\n data.prevSignature =\n self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports);\n });\n // Unconditionally accept an update to this module, we'll check if it's\n // still a Refresh Boundary later.\n // @ts-ignore importMeta is replaced in the loader\n module.hot.accept();\n // This field is set when the previous version of this module was a\n // Refresh Boundary, letting us know we need to check for invalidation or\n // enqueue an update.\n if (prevSignature !== null) {\n // A boundary can become ineligible if its exports are incompatible\n // with the previous exports.\n //\n // For example, if you add/remove/change exports, we'll want to\n // re-execute the importing modules, and force those components to\n // re-render. Similarly, if you convert a class component to a\n // function, we want to invalidate the boundary.\n if (self.$RefreshHelpers$.shouldInvalidateReactRefreshBoundary(prevSignature, self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports))) {\n module.hot.invalidate();\n }\n else {\n self.$RefreshHelpers$.scheduleUpdate();\n }\n }\n }\n else {\n // Since we just executed the code for the module, it's possible that the\n // new exports made it ineligible for being a boundary.\n // We only care about the case when we were _previously_ a boundary,\n // because we already accepted this update (accidental side effect).\n var isNoLongerABoundary = prevSignature !== null;\n if (isNoLongerABoundary) {\n module.hot.invalidate();\n }\n }\n }\n })();\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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QkFBZSxzQkFBK0MsT0FBM0J1QixtQkFBbUJTLFNBQVEsV0FDakU7UUFDRWhCLFFBQVE7UUFDUkMsU0FBUztZQUFFLGdCQUFnQjtRQUFtQjtRQUM5Q0MsTUFBTUMsS0FBS0MsU0FBUyxDQUFDO1lBQUVhO1FBQVM7SUFDbEM7SUFFRixJQUFJLENBQUM1QixJQUFJQyxFQUFFLEVBQUU7UUFDWCxNQUFNQyxPQUFPLE1BQU1GLElBQUlFLElBQUksR0FBR0MsS0FBSyxDQUFDLElBQU1ILElBQUlJLFVBQVU7UUFDeEQsTUFBTSxJQUFJQyxNQUFNLFFBQXVCSCxPQUFmRixJQUFJTSxNQUFNLEVBQUMsTUFBUyxPQUFMSjtJQUN6QztBQUNGIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL3NyYy9saWIvc2VydmljZXMudHM/MDcwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIEluZ2VzdGlvbkpvYlN0YXR1cyxcbiAgQ29tcGxldGVQYXlsb2FkLFxuICBDb21wbGV0ZVJlc3BvbnNlLFxuICBMZWFkZXJib2FyZEVudHJ5LFxuICBGZWVkRW50cnksXG59IGZyb20gJ0AvdHlwZXMnXG5cbmNvbnN0IElOR0VTVElPTl9VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19JTkdFU1RJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDEnXG5jb25zdCBHRU5FUkFUSU9OX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0dFTkVSQVRJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDInXG5jb25zdCBDVVJSSUNVTFVNX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDMnXG5jb25zdCBQUk9HUkVTU19VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19QUk9HUkVTU19VUkwgPz8gJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwNSdcblxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlUmVzcG9uc2U8VD4ocmVzOiBSZXNwb25zZSk6IFByb21pc2U8VD4ge1xuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxuICByZXR1cm4gcmVzLmpzb24oKSBhcyBQcm9taXNlPFQ+XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0SW5nZXN0KHBheWxvYWQ6IHtcbiAgZG9jdW1lbnRJZDogc3RyaW5nXG4gIGZpbGVuYW1lOiBzdHJpbmdcbiAgZm9ybWF0OiAncGRmJyB8ICdtZCcgfCAndHh0J1xuICBmaWxlVXJsOiBzdHJpbmdcbn0pOiBQcm9taXNlPHsgam9iSWQ6IHN0cmluZyB9PiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdGAsIHtcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICBib2R5OiBKU09OLnN0cmluZ2lmeShwYXlsb2FkKSxcbiAgfSlcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPHsgam9iSWQ6IHN0cmluZyB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRJbmdlc3Rpb25TdGF0dXMoam9iSWQ6IHN0cmluZyk6IFByb21pc2U8SW5nZXN0aW9uSm9iU3RhdHVzPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdC9zdGF0dXMvJHtlbmNvZGVVUklDb21wb25lbnQoam9iSWQpfWApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxJbmdlc3Rpb25Kb2JTdGF0dXM+KHJlcylcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHBvc3RHZW5lcmF0ZUFsbCh0aGVtZUlkOiBzdHJpbmcpOiBQcm9taXNlPHsgcXVldWVkOiBudW1iZXIgfT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtHRU5FUkFUSU9OX1VSTH0vZ2VuZXJhdGUvdGhlbWUvJHtlbmNvZGVVUklDb21wb25lbnQodGhlbWVJZCl9YCwge1xuICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgIGhlYWRlcnM6IHsgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyB9LFxuICB9KVxuICByZXR1cm4gaGFuZGxlUmVzcG9uc2U8eyBxdWV1ZWQ6IG51bWJlciB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0Q29tcGxldGUocGF5bG9hZDogQ29tcGxldGVQYXlsb2FkKTogUHJvbWlzZTxDb21wbGV0ZVJlc3BvbnNlPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vY29tcGxldGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkocGF5bG9hZCksXG4gIH0pXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxDb21wbGV0ZVJlc3BvbnNlPihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRMZWFkZXJib2FyZCgpOiBQcm9taXNlPExlYWRlcmJvYXJkRW50cnlbXT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtQUk9HUkVTU19VUkx9L2xlYWRlcmJvYXJkYClcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPExlYWRlcmJvYXJkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0RmVlZCgpOiBQcm9taXNlPEZlZWRFbnRyeVtdPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vZmVlZGApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxGZWVkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcG9zdEN1cnJpY3VsdW1Db25maXJtKHZlcnNpb25JZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3ZlcnNpb25zLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHZlcnNpb25JZCl9L2NvbmZpcm1gLFxuICAgIHtcbiAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyKHdlZWtJZDogc3RyaW5nLCBwb3NpdGlvbjogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3dlZWtzLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHdlZWtJZCl9L29yZGVyYCxcbiAgICB7XG4gICAgICBtZXRob2Q6ICdQQVRDSCcsXG4gICAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHsgcG9zaXRpb24gfSksXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuIl0sIm5hbWVzIjpbInByb2Nlc3MiLCJJTkdFU1RJT05fVVJMIiwiZW52IiwiTkVYVF9QVUJMSUNfSU5HRVNUSU9OX1VSTCIsIkdFTkVSQVRJT05fVVJMIiwiTkVYVF9QVUJMSUNfR0VORVJBVElPTl9VUkwiLCJDVVJSSUNVTFVNX1VSTCIsIk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMIiwiUFJPR1JFU1NfVVJMIiwiTkVYVF9QVUJMSUNfUFJPR1JFU1NfVVJMIiwiaGFuZGxlUmVzcG9uc2UiLCJyZXMiLCJvayIsInRleHQiLCJjYXRjaCIsInN0YXR1c1RleHQiLCJFcnJvciIsInN0YXR1cyIsImpzb24iLCJwb3N0SW5nZXN0IiwicGF5bG9hZCIsImZldGNoIiwibWV0aG9kIiwiaGVhZGVycyIsImJvZHkiLCJKU09OIiwic3RyaW5naWZ5IiwiZ2V0SW5nZXN0aW9uU3RhdHVzIiwiam9iSWQiLCJlbmNvZGVVUklDb21wb25lbnQiLCJwb3N0R2VuZXJhdGVBbGwiLCJ0aGVtZUlkIiwicG9zdENvbXBsZXRlIiwiZ2V0TGVhZGVyYm9hcmQiLCJnZXRGZWVkIiwicG9zdEN1cnJpY3VsdW1Db25maXJtIiwidmVyc2lvbklkIiwicGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyIiwid2Vla0lkIiwicG9zaXRpb24iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/lib/services.ts\n")); +eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFeed: function() { return /* binding */ getFeed; },\n/* harmony export */ getIngestionStatus: function() { return /* binding */ getIngestionStatus; },\n/* harmony export */ getLeaderboard: function() { return /* binding */ getLeaderboard; },\n/* harmony export */ patchCurriculumWeekOrder: function() { return /* binding */ patchCurriculumWeekOrder; },\n/* harmony export */ postComplete: function() { return /* binding */ postComplete; },\n/* harmony export */ postCurriculumConfirm: function() { return /* binding */ postCurriculumConfirm; },\n/* harmony export */ postGenerateAll: function() { return /* binding */ postGenerateAll; },\n/* harmony export */ postIngest: function() { return /* binding */ postIngest; }\n/* harmony export */ });\nvar _process_env_NEXT_PUBLIC_INGESTION_URL;\nconst INGESTION_URL = (_process_env_NEXT_PUBLIC_INGESTION_URL = \"http://localhost:3001\") !== null && _process_env_NEXT_PUBLIC_INGESTION_URL !== void 0 ? _process_env_NEXT_PUBLIC_INGESTION_URL : \"http://localhost:3001\";\nvar _process_env_NEXT_PUBLIC_GENERATION_URL;\nconst GENERATION_URL = (_process_env_NEXT_PUBLIC_GENERATION_URL = \"http://localhost:3002\") !== null && _process_env_NEXT_PUBLIC_GENERATION_URL !== void 0 ? _process_env_NEXT_PUBLIC_GENERATION_URL : \"http://localhost:3002\";\nvar _process_env_NEXT_PUBLIC_CURRICULUM_URL;\nconst CURRICULUM_URL = (_process_env_NEXT_PUBLIC_CURRICULUM_URL = \"http://localhost:3003\") !== null && _process_env_NEXT_PUBLIC_CURRICULUM_URL !== void 0 ? _process_env_NEXT_PUBLIC_CURRICULUM_URL : \"http://localhost:3003\";\nvar _process_env_NEXT_PUBLIC_PROGRESS_URL;\nconst PROGRESS_URL = (_process_env_NEXT_PUBLIC_PROGRESS_URL = \"http://localhost:3005\") !== null && _process_env_NEXT_PUBLIC_PROGRESS_URL !== void 0 ? _process_env_NEXT_PUBLIC_PROGRESS_URL : \"http://localhost:3005\";\nasync function handleResponse(res) {\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n return res.json();\n}\nasync function postIngest(payload) {\n const res = await fetch(\"\".concat(INGESTION_URL, \"/ingest\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getIngestionStatus(jobId) {\n const res = await fetch(\"\".concat(INGESTION_URL, \"/ingest/status/\").concat(encodeURIComponent(jobId)));\n return handleResponse(res);\n}\nasync function postGenerateAll(themeId) {\n const res = await fetch(\"\".concat(GENERATION_URL, \"/generate\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n themeId\n })\n });\n const data = await handleResponse(res);\n return {\n queued: data.totalItems\n };\n}\nasync function postComplete(payload) {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/complete\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getLeaderboard() {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/leaderboard\"));\n return handleResponse(res);\n}\nasync function getFeed() {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/feed\"));\n return handleResponse(res);\n}\nasync function postCurriculumConfirm(versionId) {\n const res = await fetch(\"\".concat(CURRICULUM_URL, \"/curriculum/versions/\").concat(encodeURIComponent(versionId), \"/confirm\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n}\nasync function patchCurriculumWeekOrder(weekId, position) {\n const res = await fetch(\"\".concat(CURRICULUM_URL, \"/curriculum/weeks/\").concat(encodeURIComponent(weekId), \"/order\"), {\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n position\n })\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n}\n\n\n;\n // Wrapped in an IIFE to avoid polluting the global scope\n ;\n (function () {\n var _a, _b;\n // Legacy CSS implementations will `eval` browser code in a Node.js context\n // to extract CSS. For backwards compatibility, we need to check we're in a\n // browser context before continuing.\n if (typeof self !== 'undefined' &&\n // AMP / No-JS mode does not inject these helpers:\n '$RefreshHelpers$' in self) {\n // @ts-ignore __webpack_module__ is global\n var currentExports = module.exports;\n // @ts-ignore __webpack_module__ is global\n var prevSignature = (_b = (_a = module.hot.data) === null || _a === void 0 ? void 0 : _a.prevSignature) !== null && _b !== void 0 ? _b : null;\n // This cannot happen in MainTemplate because the exports mismatch between\n // templating and execution.\n self.$RefreshHelpers$.registerExportsForReactRefresh(currentExports, module.id);\n // A module can be accepted automatically based on its exports, e.g. when\n // it is a Refresh Boundary.\n if (self.$RefreshHelpers$.isReactRefreshBoundary(currentExports)) {\n // Save the previous exports signature on update so we can compare the boundary\n // signatures. We avoid saving exports themselves since it causes memory leaks (https://github.com/vercel/next.js/pull/53797)\n module.hot.dispose(function (data) {\n data.prevSignature =\n self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports);\n });\n // Unconditionally accept an update to this module, we'll check if it's\n // still a Refresh Boundary later.\n // @ts-ignore importMeta is replaced in the loader\n module.hot.accept();\n // This field is set when the previous version of this module was a\n // Refresh Boundary, letting us know we need to check for invalidation or\n // enqueue an update.\n if (prevSignature !== null) {\n // A boundary can become ineligible if its exports are incompatible\n // with the previous exports.\n //\n // For example, if you add/remove/change exports, we'll want to\n // re-execute the importing modules, and force those components to\n // re-render. Similarly, if you convert a class component to a\n // function, we want to invalidate the boundary.\n if (self.$RefreshHelpers$.shouldInvalidateReactRefreshBoundary(prevSignature, self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports))) {\n module.hot.invalidate();\n }\n else {\n self.$RefreshHelpers$.scheduleUpdate();\n }\n }\n }\n else {\n // Since we just executed the code for the module, it's possible that the\n // new exports made it ineligible for being a boundary.\n // We only care about the case when we were _previously_ a boundary,\n // because we already accepted this update (accidental side effect).\n var isNoLongerABoundary = prevSignature !== null;\n if (isNoLongerABoundary) {\n module.hot.invalidate();\n }\n }\n }\n })();\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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QXlCQyxNQUFjLEVBQUVDLFFBQWdCO0lBQzdFLE1BQU0vQixNQUFNLE1BQU1VLE1BQ2hCLEdBQXNDUSxPQUFuQ3ZCLGdCQUFlLHNCQUErQyxPQUEzQnVCLG1CQUFtQlksU0FBUSxXQUNqRTtRQUNFbkIsUUFBUTtRQUNSQyxTQUFTO1lBQUUsZ0JBQWdCO1FBQW1CO1FBQzlDQyxNQUFNQyxLQUFLQyxTQUFTLENBQUM7WUFBRWdCO1FBQVM7SUFDbEM7SUFFRixJQUFJLENBQUMvQixJQUFJQyxFQUFFLEVBQUU7UUFDWCxNQUFNQyxPQUFPLE1BQU1GLElBQUlFLElBQUksR0FBR0MsS0FBSyxDQUFDLElBQU1ILElBQUlJLFVBQVU7UUFDeEQsTUFBTSxJQUFJQyxNQUFNLFFBQXVCSCxPQUFmRixJQUFJTSxNQUFNLEVBQUMsTUFBUyxPQUFMSjtJQUN6QztBQUNGIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL3NyYy9saWIvc2VydmljZXMudHM/MDcwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIEluZ2VzdGlvbkpvYlN0YXR1cyxcbiAgQ29tcGxldGVQYXlsb2FkLFxuICBDb21wbGV0ZVJlc3BvbnNlLFxuICBMZWFkZXJib2FyZEVudHJ5LFxuICBGZWVkRW50cnksXG59IGZyb20gJ0AvdHlwZXMnXG5cbmNvbnN0IElOR0VTVElPTl9VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19JTkdFU1RJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDEnXG5jb25zdCBHRU5FUkFUSU9OX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0dFTkVSQVRJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDInXG5jb25zdCBDVVJSSUNVTFVNX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDMnXG5jb25zdCBQUk9HUkVTU19VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19QUk9HUkVTU19VUkwgPz8gJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwNSdcblxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlUmVzcG9uc2U8VD4ocmVzOiBSZXNwb25zZSk6IFByb21pc2U8VD4ge1xuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxuICByZXR1cm4gcmVzLmpzb24oKSBhcyBQcm9taXNlPFQ+XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0SW5nZXN0KHBheWxvYWQ6IHtcbiAgZG9jdW1lbnRJZDogc3RyaW5nXG4gIGZpbGVuYW1lOiBzdHJpbmdcbiAgZm9ybWF0OiAncGRmJyB8ICdtZCcgfCAndHh0J1xuICBmaWxlVXJsOiBzdHJpbmdcbn0pOiBQcm9taXNlPHsgam9iSWQ6IHN0cmluZyB9PiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdGAsIHtcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICBib2R5OiBKU09OLnN0cmluZ2lmeShwYXlsb2FkKSxcbiAgfSlcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPHsgam9iSWQ6IHN0cmluZyB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRJbmdlc3Rpb25TdGF0dXMoam9iSWQ6IHN0cmluZyk6IFByb21pc2U8SW5nZXN0aW9uSm9iU3RhdHVzPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdC9zdGF0dXMvJHtlbmNvZGVVUklDb21wb25lbnQoam9iSWQpfWApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxJbmdlc3Rpb25Kb2JTdGF0dXM+KHJlcylcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHBvc3RHZW5lcmF0ZUFsbCh0aGVtZUlkOiBzdHJpbmcpOiBQcm9taXNlPHsgcXVldWVkOiBudW1iZXIgfT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtHRU5FUkFUSU9OX1VSTH0vZ2VuZXJhdGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkoeyB0aGVtZUlkIH0pLFxuICB9KVxuICBjb25zdCBkYXRhID0gYXdhaXQgaGFuZGxlUmVzcG9uc2U8eyBqb2JJZDogc3RyaW5nOyB0b3RhbEl0ZW1zOiBudW1iZXIgfT4ocmVzKVxuICByZXR1cm4geyBxdWV1ZWQ6IGRhdGEudG90YWxJdGVtcyB9XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0Q29tcGxldGUocGF5bG9hZDogQ29tcGxldGVQYXlsb2FkKTogUHJvbWlzZTxDb21wbGV0ZVJlc3BvbnNlPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vY29tcGxldGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkocGF5bG9hZCksXG4gIH0pXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxDb21wbGV0ZVJlc3BvbnNlPihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRMZWFkZXJib2FyZCgpOiBQcm9taXNlPExlYWRlcmJvYXJkRW50cnlbXT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtQUk9HUkVTU19VUkx9L2xlYWRlcmJvYXJkYClcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPExlYWRlcmJvYXJkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0RmVlZCgpOiBQcm9taXNlPEZlZWRFbnRyeVtdPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vZmVlZGApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxGZWVkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcG9zdEN1cnJpY3VsdW1Db25maXJtKHZlcnNpb25JZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3ZlcnNpb25zLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHZlcnNpb25JZCl9L2NvbmZpcm1gLFxuICAgIHtcbiAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyKHdlZWtJZDogc3RyaW5nLCBwb3NpdGlvbjogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3dlZWtzLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHdlZWtJZCl9L29yZGVyYCxcbiAgICB7XG4gICAgICBtZXRob2Q6ICdQQVRDSCcsXG4gICAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHsgcG9zaXRpb24gfSksXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuIl0sIm5hbWVzIjpbInByb2Nlc3MiLCJJTkdFU1RJT05fVVJMIiwiZW52IiwiTkVYVF9QVUJMSUNfSU5HRVNUSU9OX1VSTCIsIkdFTkVSQVRJT05fVVJMIiwiTkVYVF9QVUJMSUNfR0VORVJBVElPTl9VUkwiLCJDVVJSSUNVTFVNX1VSTCIsIk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMIiwiUFJPR1JFU1NfVVJMIiwiTkVYVF9QVUJMSUNfUFJPR1JFU1NfVVJMIiwiaGFuZGxlUmVzcG9uc2UiLCJyZXMiLCJvayIsInRleHQiLCJjYXRjaCIsInN0YXR1c1RleHQiLCJFcnJvciIsInN0YXR1cyIsImpzb24iLCJwb3N0SW5nZXN0IiwicGF5bG9hZCIsImZldGNoIiwibWV0aG9kIiwiaGVhZGVycyIsImJvZHkiLCJKU09OIiwic3RyaW5naWZ5IiwiZ2V0SW5nZXN0aW9uU3RhdHVzIiwiam9iSWQiLCJlbmNvZGVVUklDb21wb25lbnQiLCJwb3N0R2VuZXJhdGVBbGwiLCJ0aGVtZUlkIiwiZGF0YSIsInF1ZXVlZCIsInRvdGFsSXRlbXMiLCJwb3N0Q29tcGxldGUiLCJnZXRMZWFkZXJib2FyZCIsImdldEZlZWQiLCJwb3N0Q3VycmljdWx1bUNvbmZpcm0iLCJ2ZXJzaW9uSWQiLCJwYXRjaEN1cnJpY3VsdW1XZWVrT3JkZXIiLCJ3ZWVrSWQiLCJwb3NpdGlvbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/lib/services.ts\n")); /***/ }), diff --git a/app/frontend/.next/static/chunks/app/layout.js b/app/frontend/.next/static/chunks/app/layout.js index 5a03298..156d8a9 100644 --- a/app/frontend/.next/static/chunks/app/layout.js +++ b/app/frontend/.next/static/chunks/app/layout.js @@ -25,7 +25,7 @@ eval(__webpack_require__.ts("Promise.resolve(/*! import() eager */).then(__webpa /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony default export */ __webpack_exports__[\"default\"] = (\"faba7d6da641\");\nif (true) { module.hot.accept() }\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL3NyYy9hcHAvZ2xvYmFscy5jc3MiLCJtYXBwaW5ncyI6IjtBQUFBLCtEQUFlLGNBQWM7QUFDN0IsSUFBSSxJQUFVLElBQUksaUJBQWlCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL3NyYy9hcHAvZ2xvYmFscy5jc3M/ZjYwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCBcImZhYmE3ZDZkYTY0MVwiXG5pZiAobW9kdWxlLmhvdCkgeyBtb2R1bGUuaG90LmFjY2VwdCgpIH1cbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/app/globals.css\n")); +eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony default export */ __webpack_exports__[\"default\"] = (\"5a5be828788e\");\nif (true) { module.hot.accept() }\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL3NyYy9hcHAvZ2xvYmFscy5jc3MiLCJtYXBwaW5ncyI6IjtBQUFBLCtEQUFlLGNBQWM7QUFDN0IsSUFBSSxJQUFVLElBQUksaUJBQWlCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL3NyYy9hcHAvZ2xvYmFscy5jc3M/ZjYwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCBcIjVhNWJlODI4Nzg4ZVwiXG5pZiAobW9kdWxlLmhvdCkgeyBtb2R1bGUuaG90LmFjY2VwdCgpIH1cbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/app/globals.css\n")); /***/ }), diff --git a/app/frontend/.next/static/chunks/webpack.js b/app/frontend/.next/static/chunks/webpack.js index b698579..ebc910c 100644 --- a/app/frontend/.next/static/chunks/webpack.js +++ b/app/frontend/.next/static/chunks/webpack.js @@ -192,7 +192,7 @@ /******/ /******/ /* webpack/runtime/getFullHash */ /******/ !function() { -/******/ __webpack_require__.h = function() { return "a7ccb1bd8466330b"; } +/******/ __webpack_require__.h = function() { return "904051da550a6daf"; } /******/ }(); /******/ /******/ /* webpack/runtime/global */ diff --git a/app/frontend/.next/static/webpack/38f8b09f63a7c0e6.webpack.hot-update.json b/app/frontend/.next/static/webpack/38f8b09f63a7c0e6.webpack.hot-update.json new file mode 100644 index 0000000..5c82546 --- /dev/null +++ b/app/frontend/.next/static/webpack/38f8b09f63a7c0e6.webpack.hot-update.json @@ -0,0 +1 @@ +{"c":["app/layout","webpack"],"r":[],"m":[]} \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/6a9372aa2fa41344.webpack.hot-update.json b/app/frontend/.next/static/webpack/6a9372aa2fa41344.webpack.hot-update.json new file mode 100644 index 0000000..955c190 --- /dev/null +++ b/app/frontend/.next/static/webpack/6a9372aa2fa41344.webpack.hot-update.json @@ -0,0 +1 @@ +{"c":["app/layout","app/admin/documents/page","webpack"],"r":[],"m":[]} \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/6e27bba267061be9.webpack.hot-update.json b/app/frontend/.next/static/webpack/6e27bba267061be9.webpack.hot-update.json new file mode 100644 index 0000000..5c82546 --- /dev/null +++ b/app/frontend/.next/static/webpack/6e27bba267061be9.webpack.hot-update.json @@ -0,0 +1 @@ +{"c":["app/layout","webpack"],"r":[],"m":[]} \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/775dbecc63dc51f4.webpack.hot-update.json b/app/frontend/.next/static/webpack/775dbecc63dc51f4.webpack.hot-update.json new file mode 100644 index 0000000..955c190 --- /dev/null +++ b/app/frontend/.next/static/webpack/775dbecc63dc51f4.webpack.hot-update.json @@ -0,0 +1 @@ +{"c":["app/layout","app/admin/documents/page","webpack"],"r":[],"m":[]} \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/955b7b26c8ad58eb.webpack.hot-update.json b/app/frontend/.next/static/webpack/955b7b26c8ad58eb.webpack.hot-update.json new file mode 100644 index 0000000..5c82546 --- /dev/null +++ b/app/frontend/.next/static/webpack/955b7b26c8ad58eb.webpack.hot-update.json @@ -0,0 +1 @@ +{"c":["app/layout","webpack"],"r":[],"m":[]} \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/a7ccb1bd8466330b.webpack.hot-update.json b/app/frontend/.next/static/webpack/a7ccb1bd8466330b.webpack.hot-update.json new file mode 100644 index 0000000..18c929b --- /dev/null +++ b/app/frontend/.next/static/webpack/a7ccb1bd8466330b.webpack.hot-update.json @@ -0,0 +1 @@ +{"c":["app/admin/documents/page","app/admin/knowledge/page","app/admin/curriculum/page","app/app/session/page","app/app/profile/page","app/app/library/[topicId]/page","webpack"],"r":["app/_not-found/page"],"m":["(app-pages-browser)/./node_modules/next/dist/build/webpack/loaders/next-client-pages-loader.js?absolutePagePath=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Cnode_modules%5Cnext%5Cdist%5Cclient%5Ccomponents%5Cnot-found-error.js&page=%2F_not-found%2Fpage!","(app-pages-browser)/./node_modules/next/dist/client/components/not-found-error.js"]} \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/app/admin/curriculum/page.a7ccb1bd8466330b.hot-update.js b/app/frontend/.next/static/webpack/app/admin/curriculum/page.a7ccb1bd8466330b.hot-update.js new file mode 100644 index 0000000..ef6b9b0 --- /dev/null +++ b/app/frontend/.next/static/webpack/app/admin/curriculum/page.a7ccb1bd8466330b.hot-update.js @@ -0,0 +1,22 @@ +"use strict"; +/* + * ATTENTION: An "eval-source-map" devtool has been used. + * This devtool is neither made for production nor for readable output files. + * It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools. + * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) + * or disable the default devtool with "devtool: false". + * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). + */ +self["webpackHotUpdate_N_E"]("app/admin/curriculum/page",{ + +/***/ "(app-pages-browser)/./src/lib/services.ts": +/*!*****************************!*\ + !*** ./src/lib/services.ts ***! + \*****************************/ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFeed: function() { return /* binding */ getFeed; },\n/* harmony export */ getIngestionStatus: function() { return /* binding */ getIngestionStatus; },\n/* harmony export */ getLeaderboard: function() { return /* binding */ getLeaderboard; },\n/* harmony export */ patchCurriculumWeekOrder: function() { return /* binding */ patchCurriculumWeekOrder; },\n/* harmony export */ postComplete: function() { return /* binding */ postComplete; },\n/* harmony export */ postCurriculumConfirm: function() { return /* binding */ postCurriculumConfirm; },\n/* harmony export */ postGenerateAll: function() { return /* binding */ postGenerateAll; },\n/* harmony export */ postIngest: function() { return /* binding */ postIngest; }\n/* harmony export */ });\nvar _process_env_NEXT_PUBLIC_INGESTION_URL;\nconst INGESTION_URL = (_process_env_NEXT_PUBLIC_INGESTION_URL = \"http://localhost:3001\") !== null && _process_env_NEXT_PUBLIC_INGESTION_URL !== void 0 ? _process_env_NEXT_PUBLIC_INGESTION_URL : \"http://localhost:3001\";\nvar _process_env_NEXT_PUBLIC_GENERATION_URL;\nconst GENERATION_URL = (_process_env_NEXT_PUBLIC_GENERATION_URL = \"http://localhost:3002\") !== null && _process_env_NEXT_PUBLIC_GENERATION_URL !== void 0 ? _process_env_NEXT_PUBLIC_GENERATION_URL : \"http://localhost:3002\";\nvar _process_env_NEXT_PUBLIC_CURRICULUM_URL;\nconst CURRICULUM_URL = (_process_env_NEXT_PUBLIC_CURRICULUM_URL = \"http://localhost:3003\") !== null && _process_env_NEXT_PUBLIC_CURRICULUM_URL !== void 0 ? _process_env_NEXT_PUBLIC_CURRICULUM_URL : \"http://localhost:3003\";\nvar _process_env_NEXT_PUBLIC_PROGRESS_URL;\nconst PROGRESS_URL = (_process_env_NEXT_PUBLIC_PROGRESS_URL = \"http://localhost:3005\") !== null && _process_env_NEXT_PUBLIC_PROGRESS_URL !== void 0 ? _process_env_NEXT_PUBLIC_PROGRESS_URL : \"http://localhost:3005\";\nasync function handleResponse(res) {\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n return res.json();\n}\nasync function postIngest(payload) {\n const res = await fetch(\"\".concat(INGESTION_URL, \"/ingest\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getIngestionStatus(jobId) {\n const res = await fetch(\"\".concat(INGESTION_URL, \"/ingest/status/\").concat(encodeURIComponent(jobId)));\n return handleResponse(res);\n}\nasync function postGenerateAll(themeId) {\n const res = await fetch(\"\".concat(GENERATION_URL, \"/generate\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n themeId\n })\n });\n const data = await handleResponse(res);\n return {\n queued: data.totalItems\n };\n}\nasync function postComplete(payload) {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/complete\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getLeaderboard() {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/leaderboard\"));\n return handleResponse(res);\n}\nasync function getFeed() {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/feed\"));\n return handleResponse(res);\n}\nasync function postCurriculumConfirm(versionId) {\n const res = await fetch(\"\".concat(CURRICULUM_URL, \"/curriculum/versions/\").concat(encodeURIComponent(versionId), \"/confirm\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n}\nasync function patchCurriculumWeekOrder(weekId, position) {\n const res = await fetch(\"\".concat(CURRICULUM_URL, \"/curriculum/weeks/\").concat(encodeURIComponent(weekId), \"/order\"), {\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n position\n })\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n}\n\n\n;\n // Wrapped in an IIFE to avoid polluting the global scope\n ;\n (function () {\n var _a, _b;\n // Legacy CSS implementations will `eval` browser code in a Node.js context\n // to extract CSS. For backwards compatibility, we need to check we're in a\n // browser context before continuing.\n if (typeof self !== 'undefined' &&\n // AMP / No-JS mode does not inject these helpers:\n '$RefreshHelpers$' in self) {\n // @ts-ignore __webpack_module__ is global\n var currentExports = module.exports;\n // @ts-ignore __webpack_module__ is global\n var prevSignature = (_b = (_a = module.hot.data) === null || _a === void 0 ? void 0 : _a.prevSignature) !== null && _b !== void 0 ? _b : null;\n // This cannot happen in MainTemplate because the exports mismatch between\n // templating and execution.\n self.$RefreshHelpers$.registerExportsForReactRefresh(currentExports, module.id);\n // A module can be accepted automatically based on its exports, e.g. when\n // it is a Refresh Boundary.\n if (self.$RefreshHelpers$.isReactRefreshBoundary(currentExports)) {\n // Save the previous exports signature on update so we can compare the boundary\n // signatures. We avoid saving exports themselves since it causes memory leaks (https://github.com/vercel/next.js/pull/53797)\n module.hot.dispose(function (data) {\n data.prevSignature =\n self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports);\n });\n // Unconditionally accept an update to this module, we'll check if it's\n // still a Refresh Boundary later.\n // @ts-ignore importMeta is replaced in the loader\n module.hot.accept();\n // This field is set when the previous version of this module was a\n // Refresh Boundary, letting us know we need to check for invalidation or\n // enqueue an update.\n if (prevSignature !== null) {\n // A boundary can become ineligible if its exports are incompatible\n // with the previous exports.\n //\n // For example, if you add/remove/change exports, we'll want to\n // re-execute the importing modules, and force those components to\n // re-render. Similarly, if you convert a class component to a\n // function, we want to invalidate the boundary.\n if (self.$RefreshHelpers$.shouldInvalidateReactRefreshBoundary(prevSignature, self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports))) {\n module.hot.invalidate();\n }\n else {\n self.$RefreshHelpers$.scheduleUpdate();\n }\n }\n }\n else {\n // Since we just executed the code for the module, it's possible that the\n // new exports made it ineligible for being a boundary.\n // We only care about the case when we were _previously_ a boundary,\n // because we already accepted this update (accidental side effect).\n var isNoLongerABoundary = prevSignature !== null;\n if (isNoLongerABoundary) {\n module.hot.invalidate();\n }\n }\n }\n })();\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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QXlCQyxNQUFjLEVBQUVDLFFBQWdCO0lBQzdFLE1BQU0vQixNQUFNLE1BQU1VLE1BQ2hCLEdBQXNDUSxPQUFuQ3ZCLGdCQUFlLHNCQUErQyxPQUEzQnVCLG1CQUFtQlksU0FBUSxXQUNqRTtRQUNFbkIsUUFBUTtRQUNSQyxTQUFTO1lBQUUsZ0JBQWdCO1FBQW1CO1FBQzlDQyxNQUFNQyxLQUFLQyxTQUFTLENBQUM7WUFBRWdCO1FBQVM7SUFDbEM7SUFFRixJQUFJLENBQUMvQixJQUFJQyxFQUFFLEVBQUU7UUFDWCxNQUFNQyxPQUFPLE1BQU1GLElBQUlFLElBQUksR0FBR0MsS0FBSyxDQUFDLElBQU1ILElBQUlJLFVBQVU7UUFDeEQsTUFBTSxJQUFJQyxNQUFNLFFBQXVCSCxPQUFmRixJQUFJTSxNQUFNLEVBQUMsTUFBUyxPQUFMSjtJQUN6QztBQUNGIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL3NyYy9saWIvc2VydmljZXMudHM/MDcwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIEluZ2VzdGlvbkpvYlN0YXR1cyxcbiAgQ29tcGxldGVQYXlsb2FkLFxuICBDb21wbGV0ZVJlc3BvbnNlLFxuICBMZWFkZXJib2FyZEVudHJ5LFxuICBGZWVkRW50cnksXG59IGZyb20gJ0AvdHlwZXMnXG5cbmNvbnN0IElOR0VTVElPTl9VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19JTkdFU1RJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDEnXG5jb25zdCBHRU5FUkFUSU9OX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0dFTkVSQVRJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDInXG5jb25zdCBDVVJSSUNVTFVNX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDMnXG5jb25zdCBQUk9HUkVTU19VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19QUk9HUkVTU19VUkwgPz8gJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwNSdcblxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlUmVzcG9uc2U8VD4ocmVzOiBSZXNwb25zZSk6IFByb21pc2U8VD4ge1xuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxuICByZXR1cm4gcmVzLmpzb24oKSBhcyBQcm9taXNlPFQ+XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0SW5nZXN0KHBheWxvYWQ6IHtcbiAgZG9jdW1lbnRJZDogc3RyaW5nXG4gIGZpbGVuYW1lOiBzdHJpbmdcbiAgZm9ybWF0OiAncGRmJyB8ICdtZCcgfCAndHh0J1xuICBmaWxlVXJsOiBzdHJpbmdcbn0pOiBQcm9taXNlPHsgam9iSWQ6IHN0cmluZyB9PiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdGAsIHtcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICBib2R5OiBKU09OLnN0cmluZ2lmeShwYXlsb2FkKSxcbiAgfSlcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPHsgam9iSWQ6IHN0cmluZyB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRJbmdlc3Rpb25TdGF0dXMoam9iSWQ6IHN0cmluZyk6IFByb21pc2U8SW5nZXN0aW9uSm9iU3RhdHVzPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdC9zdGF0dXMvJHtlbmNvZGVVUklDb21wb25lbnQoam9iSWQpfWApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxJbmdlc3Rpb25Kb2JTdGF0dXM+KHJlcylcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHBvc3RHZW5lcmF0ZUFsbCh0aGVtZUlkOiBzdHJpbmcpOiBQcm9taXNlPHsgcXVldWVkOiBudW1iZXIgfT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtHRU5FUkFUSU9OX1VSTH0vZ2VuZXJhdGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkoeyB0aGVtZUlkIH0pLFxuICB9KVxuICBjb25zdCBkYXRhID0gYXdhaXQgaGFuZGxlUmVzcG9uc2U8eyBqb2JJZDogc3RyaW5nOyB0b3RhbEl0ZW1zOiBudW1iZXIgfT4ocmVzKVxuICByZXR1cm4geyBxdWV1ZWQ6IGRhdGEudG90YWxJdGVtcyB9XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0Q29tcGxldGUocGF5bG9hZDogQ29tcGxldGVQYXlsb2FkKTogUHJvbWlzZTxDb21wbGV0ZVJlc3BvbnNlPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vY29tcGxldGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkocGF5bG9hZCksXG4gIH0pXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxDb21wbGV0ZVJlc3BvbnNlPihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRMZWFkZXJib2FyZCgpOiBQcm9taXNlPExlYWRlcmJvYXJkRW50cnlbXT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtQUk9HUkVTU19VUkx9L2xlYWRlcmJvYXJkYClcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPExlYWRlcmJvYXJkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0RmVlZCgpOiBQcm9taXNlPEZlZWRFbnRyeVtdPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vZmVlZGApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxGZWVkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcG9zdEN1cnJpY3VsdW1Db25maXJtKHZlcnNpb25JZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3ZlcnNpb25zLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHZlcnNpb25JZCl9L2NvbmZpcm1gLFxuICAgIHtcbiAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyKHdlZWtJZDogc3RyaW5nLCBwb3NpdGlvbjogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3dlZWtzLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHdlZWtJZCl9L29yZGVyYCxcbiAgICB7XG4gICAgICBtZXRob2Q6ICdQQVRDSCcsXG4gICAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHsgcG9zaXRpb24gfSksXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuIl0sIm5hbWVzIjpbInByb2Nlc3MiLCJJTkdFU1RJT05fVVJMIiwiZW52IiwiTkVYVF9QVUJMSUNfSU5HRVNUSU9OX1VSTCIsIkdFTkVSQVRJT05fVVJMIiwiTkVYVF9QVUJMSUNfR0VORVJBVElPTl9VUkwiLCJDVVJSSUNVTFVNX1VSTCIsIk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMIiwiUFJPR1JFU1NfVVJMIiwiTkVYVF9QVUJMSUNfUFJPR1JFU1NfVVJMIiwiaGFuZGxlUmVzcG9uc2UiLCJyZXMiLCJvayIsInRleHQiLCJjYXRjaCIsInN0YXR1c1RleHQiLCJFcnJvciIsInN0YXR1cyIsImpzb24iLCJwb3N0SW5nZXN0IiwicGF5bG9hZCIsImZldGNoIiwibWV0aG9kIiwiaGVhZGVycyIsImJvZHkiLCJKU09OIiwic3RyaW5naWZ5IiwiZ2V0SW5nZXN0aW9uU3RhdHVzIiwiam9iSWQiLCJlbmNvZGVVUklDb21wb25lbnQiLCJwb3N0R2VuZXJhdGVBbGwiLCJ0aGVtZUlkIiwiZGF0YSIsInF1ZXVlZCIsInRvdGFsSXRlbXMiLCJwb3N0Q29tcGxldGUiLCJnZXRMZWFkZXJib2FyZCIsImdldEZlZWQiLCJwb3N0Q3VycmljdWx1bUNvbmZpcm0iLCJ2ZXJzaW9uSWQiLCJwYXRjaEN1cnJpY3VsdW1XZWVrT3JkZXIiLCJ3ZWVrSWQiLCJwb3NpdGlvbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/lib/services.ts\n")); + +/***/ }) + +}); \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/app/admin/documents/page.6a9372aa2fa41344.hot-update.js b/app/frontend/.next/static/webpack/app/admin/documents/page.6a9372aa2fa41344.hot-update.js new file mode 100644 index 0000000..216bea1 --- /dev/null +++ b/app/frontend/.next/static/webpack/app/admin/documents/page.6a9372aa2fa41344.hot-update.js @@ -0,0 +1,22 @@ +"use strict"; +/* + * ATTENTION: An "eval-source-map" devtool has been used. + * This devtool is neither made for production nor for readable output files. + * It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools. + * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) + * or disable the default devtool with "devtool: false". + * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). + */ +self["webpackHotUpdate_N_E"]("app/admin/documents/page",{ + +/***/ "(app-pages-browser)/./src/components/admin/DocumentUpload.tsx": +/*!*************************************************!*\ + !*** ./src/components/admin/DocumentUpload.tsx ***! + \*************************************************/ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DocumentUpload: function() { return /* binding */ DocumentUpload; }\n/* harmony export */ });\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-dev-runtime */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/jsx-dev-runtime.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _components_ui_Button__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/components/ui/Button */ \"(app-pages-browser)/./src/components/ui/Button.tsx\");\n/* harmony import */ var _components_ui_ProgressBar__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/components/ui/ProgressBar */ \"(app-pages-browser)/./src/components/ui/ProgressBar.tsx\");\n/* harmony import */ var _lib_hooks_useIngestionStatus__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @/lib/hooks/useIngestionStatus */ \"(app-pages-browser)/./src/lib/hooks/useIngestionStatus.ts\");\n/* harmony import */ var _lib_pocketbase__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/lib/pocketbase */ \"(app-pages-browser)/./src/lib/pocketbase.ts\");\n/* harmony import */ var _lib_services__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @/lib/services */ \"(app-pages-browser)/./src/lib/services.ts\");\n/* __next_internal_client_entry_do_not_use__ DocumentUpload auto */ \nvar _s = $RefreshSig$();\n\n\n\n\n\n\nfunction DocumentUpload(param) {\n let { onSuccess } = param;\n _s();\n const fileInputRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);\n const [uploading, setUploading] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n const [jobId, setJobId] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const [uploadError, setUploadError] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const [dragOver, setDragOver] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n const { status, progress } = (0,_lib_hooks_useIngestionStatus__WEBPACK_IMPORTED_MODULE_4__.useIngestionStatus)(jobId);\n const handleFiles = (0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)(async (files)=>{\n if (!files || files.length === 0) return;\n const file = files[0];\n if (!file) return;\n const allowed = [\n \".pdf\",\n \".md\",\n \".txt\"\n ];\n const ext = file.name.slice(file.name.lastIndexOf(\".\")).toLowerCase();\n if (!allowed.includes(ext)) {\n setUploadError(\"Unsupported file type: \".concat(ext, \". Use PDF, MD, or TXT.\"));\n return;\n }\n setUploadError(null);\n setUploading(true);\n setJobId(null);\n try {\n // Create record in PocketBase\n const format = ext.slice(1);\n // Force explicit MIME type — Windows doesn't register .md and sends\n // application/octet-stream which PocketBase rejects.\n const mimeMap = {\n pdf: \"application/pdf\",\n md: \"text/markdown\",\n txt: \"text/plain\"\n };\n var _mimeMap_format;\n const blob = new Blob([\n file\n ], {\n type: (_mimeMap_format = mimeMap[format]) !== null && _mimeMap_format !== void 0 ? _mimeMap_format : file.type\n });\n const fd = new FormData();\n fd.append(\"file\", blob, file.name);\n fd.append(\"filename\", file.name);\n fd.append(\"format\", format);\n fd.append(\"status\", \"processing\");\n const doc = await _lib_pocketbase__WEBPACK_IMPORTED_MODULE_5__.pb.collection(\"source_documents\").create(fd);\n var _process_env_NEXT_PUBLIC_POCKETBASE_URL;\n // Build PocketBase file download URL\n const pbUrl = (_process_env_NEXT_PUBLIC_POCKETBASE_URL = \"http://localhost:8090\") !== null && _process_env_NEXT_PUBLIC_POCKETBASE_URL !== void 0 ? _process_env_NEXT_PUBLIC_POCKETBASE_URL : \"http://localhost:8090\";\n const fileUrl = \"\".concat(pbUrl, \"/api/files/source_documents/\").concat(doc.id, \"/\").concat(doc.file);\n // Kick off ingestion\n const { jobId: jId } = await (0,_lib_services__WEBPACK_IMPORTED_MODULE_6__.postIngest)({\n documentId: doc.id,\n filename: file.name,\n format,\n fileUrl\n });\n setJobId(jId);\n } catch (err) {\n setUploadError(err instanceof Error ? err.message : \"Upload failed\");\n } finally{\n setUploading(false);\n }\n }, []);\n function handleChange(e) {\n void handleFiles(e.target.files);\n e.target.value = \"\";\n }\n function handleDrop(e) {\n e.preventDefault();\n setDragOver(false);\n void handleFiles(e.dataTransfer.files);\n }\n function handleDragOver(e) {\n e.preventDefault();\n setDragOver(true);\n }\n function handleDragLeave() {\n setDragOver(false);\n }\n const isDone = (status === null || status === void 0 ? void 0 : status.status) === \"done\";\n const isFailed = (status === null || status === void 0 ? void 0 : status.status) === \"failed\";\n if (isDone && jobId) {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n background: \"var(--success)\",\n borderRadius: \"var(--r-md)\",\n padding: \"var(--s-5)\",\n textAlign: \"center\",\n display: \"flex\",\n flexDirection: \"column\",\n gap: \"var(--s-3)\"\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n style: {\n margin: 0,\n fontWeight: 600,\n color: \"var(--teal-900)\"\n },\n children: [\n \"Ingestion complete! \",\n status.themesFound,\n \" themes, \",\n status.topicsFound,\n \" topics found.\"\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 117,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_Button__WEBPACK_IMPORTED_MODULE_2__.Button, {\n variant: \"secondary\",\n size: \"sm\",\n onClick: ()=>{\n setJobId(null);\n onSuccess();\n },\n children: \"Upload another\"\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 120,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 106,\n columnNumber: 7\n }, this);\n }\n var _status_reason;\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n display: \"flex\",\n flexDirection: \"column\",\n gap: \"var(--s-4)\"\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n onDrop: handleDrop,\n onDragOver: handleDragOver,\n onDragLeave: handleDragLeave,\n onClick: ()=>{\n var _fileInputRef_current;\n return (_fileInputRef_current = fileInputRef.current) === null || _fileInputRef_current === void 0 ? void 0 : _fileInputRef_current.click();\n },\n style: {\n border: \"2px dashed \".concat(dragOver ? \"var(--accent)\" : \"var(--cream)\"),\n borderRadius: \"var(--r-lg)\",\n padding: \"var(--s-8, 64px) var(--s-5)\",\n textAlign: \"center\",\n cursor: \"pointer\",\n background: dragOver ? \"var(--accent-soft)\" : \"var(--bg-warm)\",\n transition: \"background 150ms, border-color 150ms\"\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"input\", {\n ref: fileInputRef,\n type: \"file\",\n accept: \".pdf,.md,.txt\",\n style: {\n display: \"none\"\n },\n onChange: handleChange\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 151,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n style: {\n margin: \"0 0 var(--s-2)\",\n fontSize: \"var(--t-lead)\",\n fontWeight: 600,\n color: \"var(--fg)\"\n },\n children: \"Drop a document here\"\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 158,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n style: {\n margin: 0,\n fontSize: \"var(--t-small)\",\n color: \"var(--fg-muted)\"\n },\n children: \"or tap to browse — PDF, Markdown, TXT\"\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 168,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 136,\n columnNumber: 7\n }, this),\n uploadError && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n background: \"#f8d7da\",\n color: \"#c0392b\",\n borderRadius: \"var(--r-sm)\",\n padding: \"var(--s-3) var(--s-4)\",\n fontSize: \"var(--t-small)\"\n },\n children: uploadError\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 174,\n columnNumber: 9\n }, this),\n (uploading || jobId) && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n display: \"flex\",\n flexDirection: \"column\",\n gap: \"var(--s-2)\"\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_ProgressBar__WEBPACK_IMPORTED_MODULE_3__.ProgressBar, {\n value: uploading ? 5 : progress,\n label: uploading ? \"Uploading…\" : isFailed ? \"Failed: \".concat((_status_reason = status === null || status === void 0 ? void 0 : status.reason) !== null && _status_reason !== void 0 ? _status_reason : \"unknown error\") : (status === null || status === void 0 ? void 0 : status.status) ? \"\".concat(status.status.charAt(0).toUpperCase()).concat(status.status.slice(1), \"…\") : \"Processing…\",\n color: isFailed ? \"#c0392b\" : \"var(--accent)\"\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 189,\n columnNumber: 11\n }, this),\n status && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n fontSize: \"var(--t-small)\",\n color: \"var(--fg-muted)\",\n display: \"flex\",\n gap: \"var(--s-4)\",\n flexWrap: \"wrap\"\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n children: [\n \"Chunks: \",\n status.chunksEmbedded,\n \"/\",\n status.chunksTotal\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 212,\n columnNumber: 15\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n children: [\n \"Themes: \",\n status.themesFound\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 213,\n columnNumber: 15\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n children: [\n \"Topics: \",\n status.topicsFound\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 214,\n columnNumber: 15\n }, this)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 203,\n columnNumber: 13\n }, this)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 188,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 135,\n columnNumber: 5\n }, this);\n}\n_s(DocumentUpload, \"YWcKUF7Ga0zlCuEtKN+CCdia0aE=\", false, function() {\n return [\n _lib_hooks_useIngestionStatus__WEBPACK_IMPORTED_MODULE_4__.useIngestionStatus\n ];\n});\n_c = DocumentUpload;\nvar _c;\n$RefreshReg$(_c, \"DocumentUpload\");\n\n\n;\n // Wrapped in an IIFE to avoid polluting the global scope\n ;\n (function () {\n var _a, _b;\n // Legacy CSS implementations will `eval` browser code in a Node.js context\n // to extract CSS. For backwards compatibility, we need to check we're in a\n // browser context before continuing.\n if (typeof self !== 'undefined' &&\n // AMP / No-JS mode does not inject these helpers:\n '$RefreshHelpers$' in self) {\n // @ts-ignore __webpack_module__ is global\n var currentExports = module.exports;\n // @ts-ignore __webpack_module__ is global\n var prevSignature = (_b = (_a = module.hot.data) === null || _a === void 0 ? void 0 : _a.prevSignature) !== null && _b !== void 0 ? _b : null;\n // This cannot happen in MainTemplate because the exports mismatch between\n // templating and execution.\n self.$RefreshHelpers$.registerExportsForReactRefresh(currentExports, module.id);\n // A module can be accepted automatically based on its exports, e.g. when\n // it is a Refresh Boundary.\n if (self.$RefreshHelpers$.isReactRefreshBoundary(currentExports)) {\n // Save the previous exports signature on update so we can compare the boundary\n // signatures. We avoid saving exports themselves since it causes memory leaks (https://github.com/vercel/next.js/pull/53797)\n module.hot.dispose(function (data) {\n data.prevSignature =\n self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports);\n });\n // Unconditionally accept an update to this module, we'll check if it's\n // still a Refresh Boundary later.\n // @ts-ignore importMeta is replaced in the loader\n module.hot.accept();\n // This field is set when the previous version of this module was a\n // Refresh Boundary, letting us know we need to check for invalidation or\n // enqueue an update.\n if (prevSignature !== null) {\n // A boundary can become ineligible if its exports are incompatible\n // with the previous exports.\n //\n // For example, if you add/remove/change exports, we'll want to\n // re-execute the importing modules, and force those components to\n // re-render. Similarly, if you convert a class component to a\n // function, we want to invalidate the boundary.\n if (self.$RefreshHelpers$.shouldInvalidateReactRefreshBoundary(prevSignature, self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports))) {\n module.hot.invalidate();\n }\n else {\n self.$RefreshHelpers$.scheduleUpdate();\n }\n }\n }\n else {\n // Since we just executed the code for the module, it's possible that the\n // new exports made it ineligible for being a boundary.\n // We only care about the case when we were _previously_ a boundary,\n // because we already accepted this update (accidental side effect).\n var isNoLongerABoundary = prevSignature !== null;\n if (isNoLongerABoundary) {\n module.hot.invalidate();\n }\n }\n }\n })();\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL3NyYy9jb21wb25lbnRzL2FkbWluL0RvY3VtZW50VXBsb2FkLnRzeCIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztBQUM0RDtBQUNiO0FBQ1U7QUFDVTtBQUM5QjtBQUNNO0FBTXBDLFNBQVNTLGVBQWUsS0FBa0M7UUFBbEMsRUFBRUMsU0FBUyxFQUF1QixHQUFsQzs7SUFDN0IsTUFBTUMsZUFBZVYsNkNBQU1BLENBQW1CO0lBQzlDLE1BQU0sQ0FBQ1csV0FBV0MsYUFBYSxHQUFHWCwrQ0FBUUEsQ0FBQztJQUMzQyxNQUFNLENBQUNZLE9BQU9DLFNBQVMsR0FBR2IsK0NBQVFBLENBQWdCO0lBQ2xELE1BQU0sQ0FBQ2MsYUFBYUMsZUFBZSxHQUFHZiwrQ0FBUUEsQ0FBZ0I7SUFDOUQsTUFBTSxDQUFDZ0IsVUFBVUMsWUFBWSxHQUFHakIsK0NBQVFBLENBQUM7SUFFekMsTUFBTSxFQUFFa0IsTUFBTSxFQUFFQyxRQUFRLEVBQUUsR0FBR2YsaUZBQWtCQSxDQUFDUTtJQUVoRCxNQUFNUSxjQUFjbkIsa0RBQVdBLENBQzdCLE9BQU9vQjtRQUNMLElBQUksQ0FBQ0EsU0FBU0EsTUFBTUMsTUFBTSxLQUFLLEdBQUc7UUFDbEMsTUFBTUMsT0FBT0YsS0FBSyxDQUFDLEVBQUU7UUFDckIsSUFBSSxDQUFDRSxNQUFNO1FBRVgsTUFBTUMsVUFBVTtZQUFDO1lBQVE7WUFBTztTQUFPO1FBQ3ZDLE1BQU1DLE1BQU1GLEtBQUtHLElBQUksQ0FBQ0MsS0FBSyxDQUFDSixLQUFLRyxJQUFJLENBQUNFLFdBQVcsQ0FBQyxNQUFNQyxXQUFXO1FBQ25FLElBQUksQ0FBQ0wsUUFBUU0sUUFBUSxDQUFDTCxNQUFNO1lBQzFCVixlQUFlLDBCQUE4QixPQUFKVSxLQUFJO1lBQzdDO1FBQ0Y7UUFFQVYsZUFBZTtRQUNmSixhQUFhO1FBQ2JFLFNBQVM7UUFFVCxJQUFJO1lBQ0YsOEJBQThCO1lBQzlCLE1BQU1rQixTQUFTTixJQUFJRSxLQUFLLENBQUM7WUFFekIsb0VBQW9FO1lBQ3BFLHFEQUFxRDtZQUNyRCxNQUFNSyxVQUFrQztnQkFDdENDLEtBQUs7Z0JBQ0xDLElBQUk7Z0JBQ0pDLEtBQUs7WUFDUDtnQkFDc0NIO1lBQXRDLE1BQU1JLE9BQU8sSUFBSUMsS0FBSztnQkFBQ2Q7YUFBSyxFQUFFO2dCQUFFZSxNQUFNTixDQUFBQSxrQkFBQUEsT0FBTyxDQUFDRCxPQUFPLGNBQWZDLDZCQUFBQSxrQkFBbUJULEtBQUtlLElBQUk7WUFBQztZQUVuRSxNQUFNQyxLQUFLLElBQUlDO1lBQ2ZELEdBQUdFLE1BQU0sQ0FBQyxRQUFRTCxNQUFNYixLQUFLRyxJQUFJO1lBQ2pDYSxHQUFHRSxNQUFNLENBQUMsWUFBWWxCLEtBQUtHLElBQUk7WUFDL0JhLEdBQUdFLE1BQU0sQ0FBQyxVQUFVVjtZQUNwQlEsR0FBR0UsTUFBTSxDQUFDLFVBQVU7WUFFcEIsTUFBTUMsTUFBTSxNQUFNckMsK0NBQUVBLENBQUNzQyxVQUFVLENBQUMsb0JBQW9CQyxNQUFNLENBQStCTDtnQkFHM0VNO1lBRGQscUNBQXFDO1lBQ3JDLE1BQU1DLFFBQVFELENBQUFBLDBDQUFBQSx1QkFBc0MsY0FBdENBLHFEQUFBQSwwQ0FBMEM7WUFDeEQsTUFBTUksVUFBVSxHQUF1Q1AsT0FBcENJLE9BQU0sZ0NBQXdDSixPQUFWQSxJQUFJUSxFQUFFLEVBQUMsS0FBWSxPQUFUUixJQUFJbkIsSUFBSTtZQUV6RSxxQkFBcUI7WUFDckIsTUFBTSxFQUFFWCxPQUFPdUMsR0FBRyxFQUFFLEdBQUcsTUFBTTdDLHlEQUFVQSxDQUFDO2dCQUN0QzhDLFlBQVlWLElBQUlRLEVBQUU7Z0JBQ2xCRyxVQUFVOUIsS0FBS0csSUFBSTtnQkFDbkJLO2dCQUNBa0I7WUFDRjtZQUNBcEMsU0FBU3NDO1FBQ1gsRUFBRSxPQUFPRyxLQUFLO1lBQ1p2QyxlQUFldUMsZUFBZUMsUUFBUUQsSUFBSUUsT0FBTyxHQUFHO1FBQ3RELFNBQVU7WUFDUjdDLGFBQWE7UUFDZjtJQUNGLEdBQ0EsRUFBRTtJQUdKLFNBQVM4QyxhQUFhQyxDQUFzQztRQUMxRCxLQUFLdEMsWUFBWXNDLEVBQUVDLE1BQU0sQ0FBQ3RDLEtBQUs7UUFDL0JxQyxFQUFFQyxNQUFNLENBQUNDLEtBQUssR0FBRztJQUNuQjtJQUVBLFNBQVNDLFdBQVdILENBQWtDO1FBQ3BEQSxFQUFFSSxjQUFjO1FBQ2hCN0MsWUFBWTtRQUNaLEtBQUtHLFlBQVlzQyxFQUFFSyxZQUFZLENBQUMxQyxLQUFLO0lBQ3ZDO0lBRUEsU0FBUzJDLGVBQWVOLENBQWtDO1FBQ3hEQSxFQUFFSSxjQUFjO1FBQ2hCN0MsWUFBWTtJQUNkO0lBRUEsU0FBU2dEO1FBQ1BoRCxZQUFZO0lBQ2Q7SUFFQSxNQUFNaUQsU0FBU2hELENBQUFBLG1CQUFBQSw2QkFBQUEsT0FBUUEsTUFBTSxNQUFLO0lBQ2xDLE1BQU1pRCxXQUFXakQsQ0FBQUEsbUJBQUFBLDZCQUFBQSxPQUFRQSxNQUFNLE1BQUs7SUFFcEMsSUFBSWdELFVBQVV0RCxPQUFPO1FBQ25CLHFCQUNFLDhEQUFDd0Q7WUFDQ0MsT0FBTztnQkFDTEMsWUFBWTtnQkFDWkMsY0FBYztnQkFDZEMsU0FBUztnQkFDVEMsV0FBVztnQkFDWEMsU0FBUztnQkFDVEMsZUFBZTtnQkFDZkMsS0FBSztZQUNQOzs4QkFFQSw4REFBQ0M7b0JBQUVSLE9BQU87d0JBQUVTLFFBQVE7d0JBQUdDLFlBQVk7d0JBQUtDLE9BQU87b0JBQWtCOzt3QkFBRzt3QkFDN0M5RCxPQUFPK0QsV0FBVzt3QkFBQzt3QkFBVS9ELE9BQU9nRSxXQUFXO3dCQUFDOzs7Ozs7OzhCQUV2RSw4REFBQ2hGLHlEQUFNQTtvQkFDTGlGLFNBQVE7b0JBQ1JDLE1BQUs7b0JBQ0xDLFNBQVM7d0JBQ1B4RSxTQUFTO3dCQUNUTDtvQkFDRjs4QkFDRDs7Ozs7Ozs7Ozs7O0lBS1A7UUErRDJCVTtJQTdEM0IscUJBQ0UsOERBQUNrRDtRQUFJQyxPQUFPO1lBQUVLLFNBQVM7WUFBUUMsZUFBZTtZQUFVQyxLQUFLO1FBQWE7OzBCQUN4RSw4REFBQ1I7Z0JBQ0NrQixRQUFRekI7Z0JBQ1IwQixZQUFZdkI7Z0JBQ1p3QixhQUFhdkI7Z0JBQ2JvQixTQUFTO3dCQUFNNUU7NEJBQUFBLHdCQUFBQSxhQUFhZ0YsT0FBTyxjQUFwQmhGLDRDQUFBQSxzQkFBc0JpRixLQUFLOztnQkFDMUNyQixPQUFPO29CQUNMc0IsUUFBUSxjQUEwRCxPQUE1QzNFLFdBQVcsa0JBQWtCO29CQUNuRHVELGNBQWM7b0JBQ2RDLFNBQVM7b0JBQ1RDLFdBQVc7b0JBQ1htQixRQUFRO29CQUNSdEIsWUFBWXRELFdBQVcsdUJBQXVCO29CQUM5QzZFLFlBQVk7Z0JBQ2Q7O2tDQUVBLDhEQUFDQzt3QkFDQ0MsS0FBS3RGO3dCQUNMNkIsTUFBSzt3QkFDTDBELFFBQU87d0JBQ1AzQixPQUFPOzRCQUFFSyxTQUFTO3dCQUFPO3dCQUN6QnVCLFVBQVV4Qzs7Ozs7O2tDQUVaLDhEQUFDb0I7d0JBQ0NSLE9BQU87NEJBQ0xTLFFBQVE7NEJBQ1JvQixVQUFVOzRCQUNWbkIsWUFBWTs0QkFDWkMsT0FBTzt3QkFDVDtrQ0FDRDs7Ozs7O2tDQUdELDhEQUFDSDt3QkFBRVIsT0FBTzs0QkFBRVMsUUFBUTs0QkFBR29CLFVBQVU7NEJBQWtCbEIsT0FBTzt3QkFBa0I7a0NBQUc7Ozs7Ozs7Ozs7OztZQUtoRmxFLDZCQUNDLDhEQUFDc0Q7Z0JBQ0NDLE9BQU87b0JBQ0xDLFlBQVk7b0JBQ1pVLE9BQU87b0JBQ1BULGNBQWM7b0JBQ2RDLFNBQVM7b0JBQ1QwQixVQUFVO2dCQUNaOzBCQUVDcEY7Ozs7OztZQUlISixDQUFBQSxhQUFhRSxLQUFJLG1CQUNqQiw4REFBQ3dEO2dCQUFJQyxPQUFPO29CQUFFSyxTQUFTO29CQUFRQyxlQUFlO29CQUFVQyxLQUFLO2dCQUFhOztrQ0FDeEUsOERBQUN6RSxtRUFBV0E7d0JBQ1Z5RCxPQUFPbEQsWUFBWSxJQUFJUzt3QkFDdkJnRixPQUNFekYsWUFDSSxlQUNBeUQsV0FDQSxXQUE2QyxPQUFsQ2pELENBQUFBLGlCQUFBQSxtQkFBQUEsNkJBQUFBLE9BQVFrRixNQUFNLGNBQWRsRiw0QkFBQUEsaUJBQWtCLG1CQUM3QkEsQ0FBQUEsbUJBQUFBLDZCQUFBQSxPQUFRQSxNQUFNLElBQ2QsR0FBMkNBLE9BQXhDQSxPQUFPQSxNQUFNLENBQUNtRixNQUFNLENBQUMsR0FBR0MsV0FBVyxJQUE0QixPQUF2QnBGLE9BQU9BLE1BQU0sQ0FBQ1MsS0FBSyxDQUFDLElBQUcsT0FDbEU7d0JBRU5xRCxPQUFPYixXQUFXLFlBQVk7Ozs7OztvQkFFL0JqRCx3QkFDQyw4REFBQ2tEO3dCQUNDQyxPQUFPOzRCQUNMNkIsVUFBVTs0QkFDVmxCLE9BQU87NEJBQ1BOLFNBQVM7NEJBQ1RFLEtBQUs7NEJBQ0wyQixVQUFVO3dCQUNaOzswQ0FFQSw4REFBQ0M7O29DQUFLO29DQUFTdEYsT0FBT3VGLGNBQWM7b0NBQUM7b0NBQUV2RixPQUFPd0YsV0FBVzs7Ozs7OzswQ0FDekQsOERBQUNGOztvQ0FBSztvQ0FBU3RGLE9BQU8rRCxXQUFXOzs7Ozs7OzBDQUNqQyw4REFBQ3VCOztvQ0FBSztvQ0FBU3RGLE9BQU9nRSxXQUFXOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBTy9DO0dBaE5nQjNFOztRQU9lSCw2RUFBa0JBOzs7S0FQakNHIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL3NyYy9jb21wb25lbnRzL2FkbWluL0RvY3VtZW50VXBsb2FkLnRzeD83OTMwIl0sInNvdXJjZXNDb250ZW50IjpbIid1c2UgY2xpZW50J1xuaW1wb3J0IFJlYWN0LCB7IHVzZVJlZiwgdXNlU3RhdGUsIHVzZUNhbGxiYWNrIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBCdXR0b24gfSBmcm9tICdAL2NvbXBvbmVudHMvdWkvQnV0dG9uJ1xuaW1wb3J0IHsgUHJvZ3Jlc3NCYXIgfSBmcm9tICdAL2NvbXBvbmVudHMvdWkvUHJvZ3Jlc3NCYXInXG5pbXBvcnQgeyB1c2VJbmdlc3Rpb25TdGF0dXMgfSBmcm9tICdAL2xpYi9ob29rcy91c2VJbmdlc3Rpb25TdGF0dXMnXG5pbXBvcnQgeyBwYiB9IGZyb20gJ0AvbGliL3BvY2tldGJhc2UnXG5pbXBvcnQgeyBwb3N0SW5nZXN0IH0gZnJvbSAnQC9saWIvc2VydmljZXMnXG5cbmludGVyZmFjZSBEb2N1bWVudFVwbG9hZFByb3BzIHtcbiAgb25TdWNjZXNzOiAoKSA9PiB2b2lkXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBEb2N1bWVudFVwbG9hZCh7IG9uU3VjY2VzcyB9OiBEb2N1bWVudFVwbG9hZFByb3BzKSB7XG4gIGNvbnN0IGZpbGVJbnB1dFJlZiA9IHVzZVJlZjxIVE1MSW5wdXRFbGVtZW50PihudWxsKVxuICBjb25zdCBbdXBsb2FkaW5nLCBzZXRVcGxvYWRpbmddID0gdXNlU3RhdGUoZmFsc2UpXG4gIGNvbnN0IFtqb2JJZCwgc2V0Sm9iSWRdID0gdXNlU3RhdGU8c3RyaW5nIHwgbnVsbD4obnVsbClcbiAgY29uc3QgW3VwbG9hZEVycm9yLCBzZXRVcGxvYWRFcnJvcl0gPSB1c2VTdGF0ZTxzdHJpbmcgfCBudWxsPihudWxsKVxuICBjb25zdCBbZHJhZ092ZXIsIHNldERyYWdPdmVyXSA9IHVzZVN0YXRlKGZhbHNlKVxuXG4gIGNvbnN0IHsgc3RhdHVzLCBwcm9ncmVzcyB9ID0gdXNlSW5nZXN0aW9uU3RhdHVzKGpvYklkKVxuXG4gIGNvbnN0IGhhbmRsZUZpbGVzID0gdXNlQ2FsbGJhY2soXG4gICAgYXN5bmMgKGZpbGVzOiBGaWxlTGlzdCB8IG51bGwpID0+IHtcbiAgICAgIGlmICghZmlsZXMgfHwgZmlsZXMubGVuZ3RoID09PSAwKSByZXR1cm5cbiAgICAgIGNvbnN0IGZpbGUgPSBmaWxlc1swXVxuICAgICAgaWYgKCFmaWxlKSByZXR1cm5cblxuICAgICAgY29uc3QgYWxsb3dlZCA9IFsnLnBkZicsICcubWQnLCAnLnR4dCddXG4gICAgICBjb25zdCBleHQgPSBmaWxlLm5hbWUuc2xpY2UoZmlsZS5uYW1lLmxhc3RJbmRleE9mKCcuJykpLnRvTG93ZXJDYXNlKClcbiAgICAgIGlmICghYWxsb3dlZC5pbmNsdWRlcyhleHQpKSB7XG4gICAgICAgIHNldFVwbG9hZEVycm9yKGBVbnN1cHBvcnRlZCBmaWxlIHR5cGU6ICR7ZXh0fS4gVXNlIFBERiwgTUQsIG9yIFRYVC5gKVxuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgc2V0VXBsb2FkRXJyb3IobnVsbClcbiAgICAgIHNldFVwbG9hZGluZyh0cnVlKVxuICAgICAgc2V0Sm9iSWQobnVsbClcblxuICAgICAgdHJ5IHtcbiAgICAgICAgLy8gQ3JlYXRlIHJlY29yZCBpbiBQb2NrZXRCYXNlXG4gICAgICAgIGNvbnN0IGZvcm1hdCA9IGV4dC5zbGljZSgxKSBhcyAncGRmJyB8ICdtZCcgfCAndHh0J1xuXG4gICAgICAgIC8vIEZvcmNlIGV4cGxpY2l0IE1JTUUgdHlwZSDigJQgV2luZG93cyBkb2Vzbid0IHJlZ2lzdGVyIC5tZCBhbmQgc2VuZHNcbiAgICAgICAgLy8gYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtIHdoaWNoIFBvY2tldEJhc2UgcmVqZWN0cy5cbiAgICAgICAgY29uc3QgbWltZU1hcDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgICAgICAgICBwZGY6ICdhcHBsaWNhdGlvbi9wZGYnLFxuICAgICAgICAgIG1kOiAndGV4dC9tYXJrZG93bicsXG4gICAgICAgICAgdHh0OiAndGV4dC9wbGFpbicsXG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgYmxvYiA9IG5ldyBCbG9iKFtmaWxlXSwgeyB0eXBlOiBtaW1lTWFwW2Zvcm1hdF0gPz8gZmlsZS50eXBlIH0pXG5cbiAgICAgICAgY29uc3QgZmQgPSBuZXcgRm9ybURhdGEoKVxuICAgICAgICBmZC5hcHBlbmQoJ2ZpbGUnLCBibG9iLCBmaWxlLm5hbWUpXG4gICAgICAgIGZkLmFwcGVuZCgnZmlsZW5hbWUnLCBmaWxlLm5hbWUpXG4gICAgICAgIGZkLmFwcGVuZCgnZm9ybWF0JywgZm9ybWF0KVxuICAgICAgICBmZC5hcHBlbmQoJ3N0YXR1cycsICdwcm9jZXNzaW5nJylcblxuICAgICAgICBjb25zdCBkb2MgPSBhd2FpdCBwYi5jb2xsZWN0aW9uKCdzb3VyY2VfZG9jdW1lbnRzJykuY3JlYXRlPHsgaWQ6IHN0cmluZzsgZmlsZTogc3RyaW5nIH0+KGZkKVxuXG4gICAgICAgIC8vIEJ1aWxkIFBvY2tldEJhc2UgZmlsZSBkb3dubG9hZCBVUkxcbiAgICAgICAgY29uc3QgcGJVcmwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19QT0NLRVRCQVNFX1VSTCA/PyAnaHR0cDovL2xvY2FsaG9zdDo4MDkwJ1xuICAgICAgICBjb25zdCBmaWxlVXJsID0gYCR7cGJVcmx9L2FwaS9maWxlcy9zb3VyY2VfZG9jdW1lbnRzLyR7ZG9jLmlkfS8ke2RvYy5maWxlfWBcblxuICAgICAgICAvLyBLaWNrIG9mZiBpbmdlc3Rpb25cbiAgICAgICAgY29uc3QgeyBqb2JJZDogaklkIH0gPSBhd2FpdCBwb3N0SW5nZXN0KHtcbiAgICAgICAgICBkb2N1bWVudElkOiBkb2MuaWQsXG4gICAgICAgICAgZmlsZW5hbWU6IGZpbGUubmFtZSxcbiAgICAgICAgICBmb3JtYXQsXG4gICAgICAgICAgZmlsZVVybCxcbiAgICAgICAgfSlcbiAgICAgICAgc2V0Sm9iSWQoaklkKVxuICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgIHNldFVwbG9hZEVycm9yKGVyciBpbnN0YW5jZW9mIEVycm9yID8gZXJyLm1lc3NhZ2UgOiAnVXBsb2FkIGZhaWxlZCcpXG4gICAgICB9IGZpbmFsbHkge1xuICAgICAgICBzZXRVcGxvYWRpbmcoZmFsc2UpXG4gICAgICB9XG4gICAgfSxcbiAgICBbXSxcbiAgKVxuXG4gIGZ1bmN0aW9uIGhhbmRsZUNoYW5nZShlOiBSZWFjdC5DaGFuZ2VFdmVudDxIVE1MSW5wdXRFbGVtZW50Pikge1xuICAgIHZvaWQgaGFuZGxlRmlsZXMoZS50YXJnZXQuZmlsZXMpXG4gICAgZS50YXJnZXQudmFsdWUgPSAnJ1xuICB9XG5cbiAgZnVuY3Rpb24gaGFuZGxlRHJvcChlOiBSZWFjdC5EcmFnRXZlbnQ8SFRNTERpdkVsZW1lbnQ+KSB7XG4gICAgZS5wcmV2ZW50RGVmYXVsdCgpXG4gICAgc2V0RHJhZ092ZXIoZmFsc2UpXG4gICAgdm9pZCBoYW5kbGVGaWxlcyhlLmRhdGFUcmFuc2Zlci5maWxlcylcbiAgfVxuXG4gIGZ1bmN0aW9uIGhhbmRsZURyYWdPdmVyKGU6IFJlYWN0LkRyYWdFdmVudDxIVE1MRGl2RWxlbWVudD4pIHtcbiAgICBlLnByZXZlbnREZWZhdWx0KClcbiAgICBzZXREcmFnT3Zlcih0cnVlKVxuICB9XG5cbiAgZnVuY3Rpb24gaGFuZGxlRHJhZ0xlYXZlKCkge1xuICAgIHNldERyYWdPdmVyKGZhbHNlKVxuICB9XG5cbiAgY29uc3QgaXNEb25lID0gc3RhdHVzPy5zdGF0dXMgPT09ICdkb25lJ1xuICBjb25zdCBpc0ZhaWxlZCA9IHN0YXR1cz8uc3RhdHVzID09PSAnZmFpbGVkJ1xuXG4gIGlmIChpc0RvbmUgJiYgam9iSWQpIHtcbiAgICByZXR1cm4gKFxuICAgICAgPGRpdlxuICAgICAgICBzdHlsZT17e1xuICAgICAgICAgIGJhY2tncm91bmQ6ICd2YXIoLS1zdWNjZXNzKScsXG4gICAgICAgICAgYm9yZGVyUmFkaXVzOiAndmFyKC0tci1tZCknLFxuICAgICAgICAgIHBhZGRpbmc6ICd2YXIoLS1zLTUpJyxcbiAgICAgICAgICB0ZXh0QWxpZ246ICdjZW50ZXInLFxuICAgICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICAgICAgICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcbiAgICAgICAgICBnYXA6ICd2YXIoLS1zLTMpJyxcbiAgICAgICAgfX1cbiAgICAgID5cbiAgICAgICAgPHAgc3R5bGU9e3sgbWFyZ2luOiAwLCBmb250V2VpZ2h0OiA2MDAsIGNvbG9yOiAndmFyKC0tdGVhbC05MDApJyB9fT5cbiAgICAgICAgICBJbmdlc3Rpb24gY29tcGxldGUhIHtzdGF0dXMudGhlbWVzRm91bmR9IHRoZW1lcywge3N0YXR1cy50b3BpY3NGb3VuZH0gdG9waWNzIGZvdW5kLlxuICAgICAgICA8L3A+XG4gICAgICAgIDxCdXR0b25cbiAgICAgICAgICB2YXJpYW50PVwic2Vjb25kYXJ5XCJcbiAgICAgICAgICBzaXplPVwic21cIlxuICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICAgIHNldEpvYklkKG51bGwpXG4gICAgICAgICAgICBvblN1Y2Nlc3MoKVxuICAgICAgICAgIH19XG4gICAgICAgID5cbiAgICAgICAgICBVcGxvYWQgYW5vdGhlclxuICAgICAgICA8L0J1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgIClcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPGRpdiBzdHlsZT17eyBkaXNwbGF5OiAnZmxleCcsIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLCBnYXA6ICd2YXIoLS1zLTQpJyB9fT5cbiAgICAgIDxkaXZcbiAgICAgICAgb25Ecm9wPXtoYW5kbGVEcm9wfVxuICAgICAgICBvbkRyYWdPdmVyPXtoYW5kbGVEcmFnT3Zlcn1cbiAgICAgICAgb25EcmFnTGVhdmU9e2hhbmRsZURyYWdMZWF2ZX1cbiAgICAgICAgb25DbGljaz17KCkgPT4gZmlsZUlucHV0UmVmLmN1cnJlbnQ/LmNsaWNrKCl9XG4gICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgYm9yZGVyOiBgMnB4IGRhc2hlZCAke2RyYWdPdmVyID8gJ3ZhcigtLWFjY2VudCknIDogJ3ZhcigtLWNyZWFtKSd9YCxcbiAgICAgICAgICBib3JkZXJSYWRpdXM6ICd2YXIoLS1yLWxnKScsXG4gICAgICAgICAgcGFkZGluZzogJ3ZhcigtLXMtOCwgNjRweCkgdmFyKC0tcy01KScsXG4gICAgICAgICAgdGV4dEFsaWduOiAnY2VudGVyJyxcbiAgICAgICAgICBjdXJzb3I6ICdwb2ludGVyJyxcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBkcmFnT3ZlciA/ICd2YXIoLS1hY2NlbnQtc29mdCknIDogJ3ZhcigtLWJnLXdhcm0pJyxcbiAgICAgICAgICB0cmFuc2l0aW9uOiAnYmFja2dyb3VuZCAxNTBtcywgYm9yZGVyLWNvbG9yIDE1MG1zJyxcbiAgICAgICAgfX1cbiAgICAgID5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgcmVmPXtmaWxlSW5wdXRSZWZ9XG4gICAgICAgICAgdHlwZT1cImZpbGVcIlxuICAgICAgICAgIGFjY2VwdD1cIi5wZGYsLm1kLC50eHRcIlxuICAgICAgICAgIHN0eWxlPXt7IGRpc3BsYXk6ICdub25lJyB9fVxuICAgICAgICAgIG9uQ2hhbmdlPXtoYW5kbGVDaGFuZ2V9XG4gICAgICAgIC8+XG4gICAgICAgIDxwXG4gICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgIG1hcmdpbjogJzAgMCB2YXIoLS1zLTIpJyxcbiAgICAgICAgICAgIGZvbnRTaXplOiAndmFyKC0tdC1sZWFkKScsXG4gICAgICAgICAgICBmb250V2VpZ2h0OiA2MDAsXG4gICAgICAgICAgICBjb2xvcjogJ3ZhcigtLWZnKScsXG4gICAgICAgICAgfX1cbiAgICAgICAgPlxuICAgICAgICAgIERyb3AgYSBkb2N1bWVudCBoZXJlXG4gICAgICAgIDwvcD5cbiAgICAgICAgPHAgc3R5bGU9e3sgbWFyZ2luOiAwLCBmb250U2l6ZTogJ3ZhcigtLXQtc21hbGwpJywgY29sb3I6ICd2YXIoLS1mZy1tdXRlZCknIH19PlxuICAgICAgICAgIG9yIHRhcCB0byBicm93c2Ug4oCUIFBERiwgTWFya2Rvd24sIFRYVFxuICAgICAgICA8L3A+XG4gICAgICA8L2Rpdj5cblxuICAgICAge3VwbG9hZEVycm9yICYmIChcbiAgICAgICAgPGRpdlxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAnI2Y4ZDdkYScsXG4gICAgICAgICAgICBjb2xvcjogJyNjMDM5MmInLFxuICAgICAgICAgICAgYm9yZGVyUmFkaXVzOiAndmFyKC0tci1zbSknLFxuICAgICAgICAgICAgcGFkZGluZzogJ3ZhcigtLXMtMykgdmFyKC0tcy00KScsXG4gICAgICAgICAgICBmb250U2l6ZTogJ3ZhcigtLXQtc21hbGwpJyxcbiAgICAgICAgICB9fVxuICAgICAgICA+XG4gICAgICAgICAge3VwbG9hZEVycm9yfVxuICAgICAgICA8L2Rpdj5cbiAgICAgICl9XG5cbiAgICAgIHsodXBsb2FkaW5nIHx8IGpvYklkKSAmJiAoXG4gICAgICAgIDxkaXYgc3R5bGU9e3sgZGlzcGxheTogJ2ZsZXgnLCBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJywgZ2FwOiAndmFyKC0tcy0yKScgfX0+XG4gICAgICAgICAgPFByb2dyZXNzQmFyXG4gICAgICAgICAgICB2YWx1ZT17dXBsb2FkaW5nID8gNSA6IHByb2dyZXNzfVxuICAgICAgICAgICAgbGFiZWw9e1xuICAgICAgICAgICAgICB1cGxvYWRpbmdcbiAgICAgICAgICAgICAgICA/ICdVcGxvYWRpbmfigKYnXG4gICAgICAgICAgICAgICAgOiBpc0ZhaWxlZFxuICAgICAgICAgICAgICAgID8gYEZhaWxlZDogJHtzdGF0dXM/LnJlYXNvbiA/PyAndW5rbm93biBlcnJvcid9YFxuICAgICAgICAgICAgICAgIDogc3RhdHVzPy5zdGF0dXNcbiAgICAgICAgICAgICAgICA/IGAke3N0YXR1cy5zdGF0dXMuY2hhckF0KDApLnRvVXBwZXJDYXNlKCl9JHtzdGF0dXMuc3RhdHVzLnNsaWNlKDEpfeKApmBcbiAgICAgICAgICAgICAgICA6ICdQcm9jZXNzaW5n4oCmJ1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29sb3I9e2lzRmFpbGVkID8gJyNjMDM5MmInIDogJ3ZhcigtLWFjY2VudCknfVxuICAgICAgICAgIC8+XG4gICAgICAgICAge3N0YXR1cyAmJiAoXG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgZm9udFNpemU6ICd2YXIoLS10LXNtYWxsKScsXG4gICAgICAgICAgICAgICAgY29sb3I6ICd2YXIoLS1mZy1tdXRlZCknLFxuICAgICAgICAgICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICAgICAgICAgICAgICBnYXA6ICd2YXIoLS1zLTQpJyxcbiAgICAgICAgICAgICAgICBmbGV4V3JhcDogJ3dyYXAnLFxuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8c3Bhbj5DaHVua3M6IHtzdGF0dXMuY2h1bmtzRW1iZWRkZWR9L3tzdGF0dXMuY2h1bmtzVG90YWx9PC9zcGFuPlxuICAgICAgICAgICAgICA8c3Bhbj5UaGVtZXM6IHtzdGF0dXMudGhlbWVzRm91bmR9PC9zcGFuPlxuICAgICAgICAgICAgICA8c3Bhbj5Ub3BpY3M6IHtzdGF0dXMudG9waWNzRm91bmR9PC9zcGFuPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9kaXY+XG4gICAgICApfVxuICAgIDwvZGl2PlxuICApXG59XG4iXSwibmFtZXMiOlsiUmVhY3QiLCJ1c2VSZWYiLCJ1c2VTdGF0ZSIsInVzZUNhbGxiYWNrIiwiQnV0dG9uIiwiUHJvZ3Jlc3NCYXIiLCJ1c2VJbmdlc3Rpb25TdGF0dXMiLCJwYiIsInBvc3RJbmdlc3QiLCJEb2N1bWVudFVwbG9hZCIsIm9uU3VjY2VzcyIsImZpbGVJbnB1dFJlZiIsInVwbG9hZGluZyIsInNldFVwbG9hZGluZyIsImpvYklkIiwic2V0Sm9iSWQiLCJ1cGxvYWRFcnJvciIsInNldFVwbG9hZEVycm9yIiwiZHJhZ092ZXIiLCJzZXREcmFnT3ZlciIsInN0YXR1cyIsInByb2dyZXNzIiwiaGFuZGxlRmlsZXMiLCJmaWxlcyIsImxlbmd0aCIsImZpbGUiLCJhbGxvd2VkIiwiZXh0IiwibmFtZSIsInNsaWNlIiwibGFzdEluZGV4T2YiLCJ0b0xvd2VyQ2FzZSIsImluY2x1ZGVzIiwiZm9ybWF0IiwibWltZU1hcCIsInBkZiIsIm1kIiwidHh0IiwiYmxvYiIsIkJsb2IiLCJ0eXBlIiwiZmQiLCJGb3JtRGF0YSIsImFwcGVuZCIsImRvYyIsImNvbGxlY3Rpb24iLCJjcmVhdGUiLCJwcm9jZXNzIiwicGJVcmwiLCJlbnYiLCJORVhUX1BVQkxJQ19QT0NLRVRCQVNFX1VSTCIsImZpbGVVcmwiLCJpZCIsImpJZCIsImRvY3VtZW50SWQiLCJmaWxlbmFtZSIsImVyciIsIkVycm9yIiwibWVzc2FnZSIsImhhbmRsZUNoYW5nZSIsImUiLCJ0YXJnZXQiLCJ2YWx1ZSIsImhhbmRsZURyb3AiLCJwcmV2ZW50RGVmYXVsdCIsImRhdGFUcmFuc2ZlciIsImhhbmRsZURyYWdPdmVyIiwiaGFuZGxlRHJhZ0xlYXZlIiwiaXNEb25lIiwiaXNGYWlsZWQiLCJkaXYiLCJzdHlsZSIsImJhY2tncm91bmQiLCJib3JkZXJSYWRpdXMiLCJwYWRkaW5nIiwidGV4dEFsaWduIiwiZGlzcGxheSIsImZsZXhEaXJlY3Rpb24iLCJnYXAiLCJwIiwibWFyZ2luIiwiZm9udFdlaWdodCIsImNvbG9yIiwidGhlbWVzRm91bmQiLCJ0b3BpY3NGb3VuZCIsInZhcmlhbnQiLCJzaXplIiwib25DbGljayIsIm9uRHJvcCIsIm9uRHJhZ092ZXIiLCJvbkRyYWdMZWF2ZSIsImN1cnJlbnQiLCJjbGljayIsImJvcmRlciIsImN1cnNvciIsInRyYW5zaXRpb24iLCJpbnB1dCIsInJlZiIsImFjY2VwdCIsIm9uQ2hhbmdlIiwiZm9udFNpemUiLCJsYWJlbCIsInJlYXNvbiIsImNoYXJBdCIsInRvVXBwZXJDYXNlIiwiZmxleFdyYXAiLCJzcGFuIiwiY2h1bmtzRW1iZWRkZWQiLCJjaHVua3NUb3RhbCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/components/admin/DocumentUpload.tsx\n")); + +/***/ }) + +}); \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/app/admin/documents/page.775dbecc63dc51f4.hot-update.js b/app/frontend/.next/static/webpack/app/admin/documents/page.775dbecc63dc51f4.hot-update.js new file mode 100644 index 0000000..f2cfc5c --- /dev/null +++ b/app/frontend/.next/static/webpack/app/admin/documents/page.775dbecc63dc51f4.hot-update.js @@ -0,0 +1,22 @@ +"use strict"; +/* + * ATTENTION: An "eval-source-map" devtool has been used. + * This devtool is neither made for production nor for readable output files. + * It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools. + * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) + * or disable the default devtool with "devtool: false". + * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). + */ +self["webpackHotUpdate_N_E"]("app/admin/documents/page",{ + +/***/ "(app-pages-browser)/./src/components/admin/DocumentUpload.tsx": +/*!*************************************************!*\ + !*** ./src/components/admin/DocumentUpload.tsx ***! + \*************************************************/ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DocumentUpload: function() { return /* binding */ DocumentUpload; }\n/* harmony export */ });\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-dev-runtime */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/jsx-dev-runtime.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _components_ui_Button__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/components/ui/Button */ \"(app-pages-browser)/./src/components/ui/Button.tsx\");\n/* harmony import */ var _components_ui_ProgressBar__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/components/ui/ProgressBar */ \"(app-pages-browser)/./src/components/ui/ProgressBar.tsx\");\n/* harmony import */ var _lib_hooks_useIngestionStatus__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @/lib/hooks/useIngestionStatus */ \"(app-pages-browser)/./src/lib/hooks/useIngestionStatus.ts\");\n/* harmony import */ var _lib_pocketbase__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/lib/pocketbase */ \"(app-pages-browser)/./src/lib/pocketbase.ts\");\n/* harmony import */ var _lib_services__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @/lib/services */ \"(app-pages-browser)/./src/lib/services.ts\");\n/* __next_internal_client_entry_do_not_use__ DocumentUpload auto */ \nvar _s = $RefreshSig$();\n\n\n\n\n\n\nfunction DocumentUpload(param) {\n let { onSuccess } = param;\n _s();\n const fileInputRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);\n const [uploading, setUploading] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n const [jobId, setJobId] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const [uploadError, setUploadError] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const [dragOver, setDragOver] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n const { status, progress } = (0,_lib_hooks_useIngestionStatus__WEBPACK_IMPORTED_MODULE_4__.useIngestionStatus)(jobId);\n const handleFiles = (0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)(async (files)=>{\n if (!files || files.length === 0) return;\n const file = files[0];\n if (!file) return;\n const allowed = [\n \".pdf\",\n \".md\",\n \".txt\"\n ];\n const ext = file.name.slice(file.name.lastIndexOf(\".\")).toLowerCase();\n if (!allowed.includes(ext)) {\n setUploadError(\"Unsupported file type: \".concat(ext, \". Use PDF, MD, or TXT.\"));\n return;\n }\n setUploadError(null);\n setUploading(true);\n setJobId(null);\n try {\n // Create record in PocketBase\n const format = ext.slice(1);\n // Force explicit MIME type — Windows doesn't register .md and sends\n // application/octet-stream which PocketBase rejects.\n const mimeMap = {\n pdf: \"application/pdf\",\n md: \"text/markdown\",\n txt: \"text/plain\"\n };\n var _mimeMap_format;\n const blob = new Blob([\n file\n ], {\n type: (_mimeMap_format = mimeMap[format]) !== null && _mimeMap_format !== void 0 ? _mimeMap_format : file.type\n });\n const fd = new FormData();\n fd.append(\"file\", blob, file.name);\n fd.append(\"filename\", file.name);\n fd.append(\"format\", format);\n fd.append(\"status\", \"processing\");\n const doc = await _lib_pocketbase__WEBPACK_IMPORTED_MODULE_5__.pb.collection(\"source_documents\").create(fd);\n var _process_env_NEXT_PUBLIC_POCKETBASE_URL;\n // Build PocketBase file download URL\n const pbUrl = (_process_env_NEXT_PUBLIC_POCKETBASE_URL = \"http://localhost:8090\") !== null && _process_env_NEXT_PUBLIC_POCKETBASE_URL !== void 0 ? _process_env_NEXT_PUBLIC_POCKETBASE_URL : \"http://localhost:8090\";\n const fileUrl = \"\".concat(pbUrl, \"/api/files/source_documents/\").concat(doc.id, \"/\").concat(doc.file);\n // Kick off ingestion\n const { jobId: jId } = await (0,_lib_services__WEBPACK_IMPORTED_MODULE_6__.postIngest)({\n documentId: doc.id,\n filename: file.name,\n format,\n fileUrl\n });\n setJobId(jId);\n } catch (err) {\n var _pbErr_response;\n // PocketBase ClientResponseError has a `response` with field details\n const pbErr = err;\n const detail = ((_pbErr_response = pbErr.response) === null || _pbErr_response === void 0 ? void 0 : _pbErr_response.data) ? Object.entries(pbErr.response.data).map((param)=>{\n let [f, v] = param;\n var _v_message;\n return \"\".concat(f, \": \").concat((_v_message = v === null || v === void 0 ? void 0 : v.message) !== null && _v_message !== void 0 ? _v_message : \"\");\n }).join(\", \") : null;\n setUploadError(detail !== null && detail !== void 0 ? detail : err instanceof Error ? err.message : \"Upload failed\");\n } finally{\n setUploading(false);\n }\n }, []);\n function handleChange(e) {\n void handleFiles(e.target.files);\n e.target.value = \"\";\n }\n function handleDrop(e) {\n e.preventDefault();\n setDragOver(false);\n void handleFiles(e.dataTransfer.files);\n }\n function handleDragOver(e) {\n e.preventDefault();\n setDragOver(true);\n }\n function handleDragLeave() {\n setDragOver(false);\n }\n const isDone = (status === null || status === void 0 ? void 0 : status.status) === \"done\";\n const isFailed = (status === null || status === void 0 ? void 0 : status.status) === \"failed\";\n if (isDone && jobId) {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n background: \"var(--success)\",\n borderRadius: \"var(--r-md)\",\n padding: \"var(--s-5)\",\n textAlign: \"center\",\n display: \"flex\",\n flexDirection: \"column\",\n gap: \"var(--s-3)\"\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n style: {\n margin: 0,\n fontWeight: 600,\n color: \"var(--teal-900)\"\n },\n children: [\n \"Ingestion complete! \",\n status.themesFound,\n \" themes, \",\n status.topicsFound,\n \" topics found.\"\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 124,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_Button__WEBPACK_IMPORTED_MODULE_2__.Button, {\n variant: \"secondary\",\n size: \"sm\",\n onClick: ()=>{\n setJobId(null);\n onSuccess();\n },\n children: \"Upload another\"\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 127,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 113,\n columnNumber: 7\n }, this);\n }\n var _status_reason;\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n display: \"flex\",\n flexDirection: \"column\",\n gap: \"var(--s-4)\"\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n onDrop: handleDrop,\n onDragOver: handleDragOver,\n onDragLeave: handleDragLeave,\n onClick: ()=>{\n var _fileInputRef_current;\n return (_fileInputRef_current = fileInputRef.current) === null || _fileInputRef_current === void 0 ? void 0 : _fileInputRef_current.click();\n },\n style: {\n border: \"2px dashed \".concat(dragOver ? \"var(--accent)\" : \"var(--cream)\"),\n borderRadius: \"var(--r-lg)\",\n padding: \"var(--s-8, 64px) var(--s-5)\",\n textAlign: \"center\",\n cursor: \"pointer\",\n background: dragOver ? \"var(--accent-soft)\" : \"var(--bg-warm)\",\n transition: \"background 150ms, border-color 150ms\"\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"input\", {\n ref: fileInputRef,\n type: \"file\",\n accept: \".pdf,.md,.txt\",\n style: {\n display: \"none\"\n },\n onChange: handleChange\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 158,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n style: {\n margin: \"0 0 var(--s-2)\",\n fontSize: \"var(--t-lead)\",\n fontWeight: 600,\n color: \"var(--fg)\"\n },\n children: \"Drop a document here\"\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 165,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n style: {\n margin: 0,\n fontSize: \"var(--t-small)\",\n color: \"var(--fg-muted)\"\n },\n children: \"or tap to browse — PDF, Markdown, TXT\"\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 175,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 143,\n columnNumber: 7\n }, this),\n uploadError && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n background: \"#f8d7da\",\n color: \"#c0392b\",\n borderRadius: \"var(--r-sm)\",\n padding: \"var(--s-3) var(--s-4)\",\n fontSize: \"var(--t-small)\"\n },\n children: uploadError\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 181,\n columnNumber: 9\n }, this),\n (uploading || jobId) && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n display: \"flex\",\n flexDirection: \"column\",\n gap: \"var(--s-2)\"\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_ProgressBar__WEBPACK_IMPORTED_MODULE_3__.ProgressBar, {\n value: uploading ? 5 : progress,\n label: uploading ? \"Uploading…\" : isFailed ? \"Failed: \".concat((_status_reason = status === null || status === void 0 ? void 0 : status.reason) !== null && _status_reason !== void 0 ? _status_reason : \"unknown error\") : (status === null || status === void 0 ? void 0 : status.status) ? \"\".concat(status.status.charAt(0).toUpperCase()).concat(status.status.slice(1), \"…\") : \"Processing…\",\n color: isFailed ? \"#c0392b\" : \"var(--accent)\"\n }, void 0, false, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 196,\n columnNumber: 11\n }, this),\n status && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n style: {\n fontSize: \"var(--t-small)\",\n color: \"var(--fg-muted)\",\n display: \"flex\",\n gap: \"var(--s-4)\",\n flexWrap: \"wrap\"\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n children: [\n \"Chunks: \",\n status.chunksEmbedded,\n \"/\",\n status.chunksTotal\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 219,\n columnNumber: 15\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n children: [\n \"Themes: \",\n status.themesFound\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 220,\n columnNumber: 15\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n children: [\n \"Topics: \",\n status.topicsFound\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 221,\n columnNumber: 15\n }, this)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 210,\n columnNumber: 13\n }, this)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 195,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"C:\\\\Users\\\\RaymondVerhoef\\\\Gitea\\\\learning-platform\\\\app\\\\frontend\\\\src\\\\components\\\\admin\\\\DocumentUpload.tsx\",\n lineNumber: 142,\n columnNumber: 5\n }, this);\n}\n_s(DocumentUpload, \"YWcKUF7Ga0zlCuEtKN+CCdia0aE=\", false, function() {\n return [\n _lib_hooks_useIngestionStatus__WEBPACK_IMPORTED_MODULE_4__.useIngestionStatus\n ];\n});\n_c = DocumentUpload;\nvar _c;\n$RefreshReg$(_c, \"DocumentUpload\");\n\n\n;\n // Wrapped in an IIFE to avoid polluting the global scope\n ;\n (function () {\n var _a, _b;\n // Legacy CSS implementations will `eval` browser code in a Node.js context\n // to extract CSS. For backwards compatibility, we need to check we're in a\n // browser context before continuing.\n if (typeof self !== 'undefined' &&\n // AMP / No-JS mode does not inject these helpers:\n '$RefreshHelpers$' in self) {\n // @ts-ignore __webpack_module__ is global\n var currentExports = module.exports;\n // @ts-ignore __webpack_module__ is global\n var prevSignature = (_b = (_a = module.hot.data) === null || _a === void 0 ? void 0 : _a.prevSignature) !== null && _b !== void 0 ? _b : null;\n // This cannot happen in MainTemplate because the exports mismatch between\n // templating and execution.\n self.$RefreshHelpers$.registerExportsForReactRefresh(currentExports, module.id);\n // A module can be accepted automatically based on its exports, e.g. when\n // it is a Refresh Boundary.\n if (self.$RefreshHelpers$.isReactRefreshBoundary(currentExports)) {\n // Save the previous exports signature on update so we can compare the boundary\n // signatures. We avoid saving exports themselves since it causes memory leaks (https://github.com/vercel/next.js/pull/53797)\n module.hot.dispose(function (data) {\n data.prevSignature =\n self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports);\n });\n // Unconditionally accept an update to this module, we'll check if it's\n // still a Refresh Boundary later.\n // @ts-ignore importMeta is replaced in the loader\n module.hot.accept();\n // This field is set when the previous version of this module was a\n // Refresh Boundary, letting us know we need to check for invalidation or\n // enqueue an update.\n if (prevSignature !== null) {\n // A boundary can become ineligible if its exports are incompatible\n // with the previous exports.\n //\n // For example, if you add/remove/change exports, we'll want to\n // re-execute the importing modules, and force those components to\n // re-render. Similarly, if you convert a class component to a\n // function, we want to invalidate the boundary.\n if (self.$RefreshHelpers$.shouldInvalidateReactRefreshBoundary(prevSignature, self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports))) {\n module.hot.invalidate();\n }\n else {\n self.$RefreshHelpers$.scheduleUpdate();\n }\n }\n }\n else {\n // Since we just executed the code for the module, it's possible that the\n // new exports made it ineligible for being a boundary.\n // We only care about the case when we were _previously_ a boundary,\n // because we already accepted this update (accidental side effect).\n var isNoLongerABoundary = prevSignature !== null;\n if (isNoLongerABoundary) {\n module.hot.invalidate();\n }\n }\n }\n })();\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL3NyYy9jb21wb25lbnRzL2FkbWluL0RvY3VtZW50VXBsb2FkLnRzeCIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztBQUM0RDtBQUNiO0FBQ1U7QUFDVTtBQUM5QjtBQUNNO0FBTXBDLFNBQVNTLGVBQWUsS0FBa0M7UUFBbEMsRUFBRUMsU0FBUyxFQUF1QixHQUFsQzs7SUFDN0IsTUFBTUMsZUFBZVYsNkNBQU1BLENBQW1CO0lBQzlDLE1BQU0sQ0FBQ1csV0FBV0MsYUFBYSxHQUFHWCwrQ0FBUUEsQ0FBQztJQUMzQyxNQUFNLENBQUNZLE9BQU9DLFNBQVMsR0FBR2IsK0NBQVFBLENBQWdCO0lBQ2xELE1BQU0sQ0FBQ2MsYUFBYUMsZUFBZSxHQUFHZiwrQ0FBUUEsQ0FBZ0I7SUFDOUQsTUFBTSxDQUFDZ0IsVUFBVUMsWUFBWSxHQUFHakIsK0NBQVFBLENBQUM7SUFFekMsTUFBTSxFQUFFa0IsTUFBTSxFQUFFQyxRQUFRLEVBQUUsR0FBR2YsaUZBQWtCQSxDQUFDUTtJQUVoRCxNQUFNUSxjQUFjbkIsa0RBQVdBLENBQzdCLE9BQU9vQjtRQUNMLElBQUksQ0FBQ0EsU0FBU0EsTUFBTUMsTUFBTSxLQUFLLEdBQUc7UUFDbEMsTUFBTUMsT0FBT0YsS0FBSyxDQUFDLEVBQUU7UUFDckIsSUFBSSxDQUFDRSxNQUFNO1FBRVgsTUFBTUMsVUFBVTtZQUFDO1lBQVE7WUFBTztTQUFPO1FBQ3ZDLE1BQU1DLE1BQU1GLEtBQUtHLElBQUksQ0FBQ0MsS0FBSyxDQUFDSixLQUFLRyxJQUFJLENBQUNFLFdBQVcsQ0FBQyxNQUFNQyxXQUFXO1FBQ25FLElBQUksQ0FBQ0wsUUFBUU0sUUFBUSxDQUFDTCxNQUFNO1lBQzFCVixlQUFlLDBCQUE4QixPQUFKVSxLQUFJO1lBQzdDO1FBQ0Y7UUFFQVYsZUFBZTtRQUNmSixhQUFhO1FBQ2JFLFNBQVM7UUFFVCxJQUFJO1lBQ0YsOEJBQThCO1lBQzlCLE1BQU1rQixTQUFTTixJQUFJRSxLQUFLLENBQUM7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ZC50c3g/NzkzMCJdLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIGNsaWVudCdcbmltcG9ydCBSZWFjdCwgeyB1c2VSZWYsIHVzZVN0YXRlLCB1c2VDYWxsYmFjayB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgQnV0dG9uIH0gZnJvbSAnQC9jb21wb25lbnRzL3VpL0J1dHRvbidcbmltcG9ydCB7IFByb2dyZXNzQmFyIH0gZnJvbSAnQC9jb21wb25lbnRzL3VpL1Byb2dyZXNzQmFyJ1xuaW1wb3J0IHsgdXNlSW5nZXN0aW9uU3RhdHVzIH0gZnJvbSAnQC9saWIvaG9va3MvdXNlSW5nZXN0aW9uU3RhdHVzJ1xuaW1wb3J0IHsgcGIgfSBmcm9tICdAL2xpYi9wb2NrZXRiYXNlJ1xuaW1wb3J0IHsgcG9zdEluZ2VzdCB9IGZyb20gJ0AvbGliL3NlcnZpY2VzJ1xuXG5pbnRlcmZhY2UgRG9jdW1lbnRVcGxvYWRQcm9wcyB7XG4gIG9uU3VjY2VzczogKCkgPT4gdm9pZFxufVxuXG5leHBvcnQgZnVuY3Rpb24gRG9jdW1lbnRVcGxvYWQoeyBvblN1Y2Nlc3MgfTogRG9jdW1lbnRVcGxvYWRQcm9wcykge1xuICBjb25zdCBmaWxlSW5wdXRSZWYgPSB1c2VSZWY8SFRNTElucHV0RWxlbWVudD4obnVsbClcbiAgY29uc3QgW3VwbG9hZGluZywgc2V0VXBsb2FkaW5nXSA9IHVzZVN0YXRlKGZhbHNlKVxuICBjb25zdCBbam9iSWQsIHNldEpvYklkXSA9IHVzZVN0YXRlPHN0cmluZyB8IG51bGw+KG51bGwpXG4gIGNvbnN0IFt1cGxvYWRFcnJvciwgc2V0VXBsb2FkRXJyb3JdID0gdXNlU3RhdGU8c3RyaW5nIHwgbnVsbD4obnVsbClcbiAgY29uc3QgW2RyYWdPdmVyLCBzZXREcmFnT3Zlcl0gPSB1c2VTdGF0ZShmYWxzZSlcblxuICBjb25zdCB7IHN0YXR1cywgcHJvZ3Jlc3MgfSA9IHVzZUluZ2VzdGlvblN0YXR1cyhqb2JJZClcblxuICBjb25zdCBoYW5kbGVGaWxlcyA9IHVzZUNhbGxiYWNrKFxuICAgIGFzeW5jIChmaWxlczogRmlsZUxpc3QgfCBudWxsKSA9PiB7XG4gICAgICBpZiAoIWZpbGVzIHx8IGZpbGVzLmxlbmd0aCA9PT0gMCkgcmV0dXJuXG4gICAgICBjb25zdCBmaWxlID0gZmlsZXNbMF1cbiAgICAgIGlmICghZmlsZSkgcmV0dXJuXG5cbiAgICAgIGNvbnN0IGFsbG93ZWQgPSBbJy5wZGYnLCAnLm1kJywgJy50eHQnXVxuICAgICAgY29uc3QgZXh0ID0gZmlsZS5uYW1lLnNsaWNlKGZpbGUubmFtZS5sYXN0SW5kZXhPZignLicpKS50b0xvd2VyQ2FzZSgpXG4gICAgICBpZiAoIWFsbG93ZWQuaW5jbHVkZXMoZXh0KSkge1xuICAgICAgICBzZXRVcGxvYWRFcnJvcihgVW5zdXBwb3J0ZWQgZmlsZSB0eXBlOiAke2V4dH0uIFVzZSBQREYsIE1ELCBvciBUWFQuYClcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIHNldFVwbG9hZEVycm9yKG51bGwpXG4gICAgICBzZXRVcGxvYWRpbmcodHJ1ZSlcbiAgICAgIHNldEpvYklkKG51bGwpXG5cbiAgICAgIHRyeSB7XG4gICAgICAgIC8vIENyZWF0ZSByZWNvcmQgaW4gUG9ja2V0QmFzZVxuICAgICAgICBjb25zdCBmb3JtYXQgPSBleHQuc2xpY2UoMSkgYXMgJ3BkZicgfCAnbWQnIHwgJ3R4dCdcblxuICAgICAgICAvLyBGb3JjZSBleHBsaWNpdCBNSU1FIHR5cGUg4oCUIFdpbmRvd3MgZG9lc24ndCByZWdpc3RlciAubWQgYW5kIHNlbmRzXG4gICAgICAgIC8vIGFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbSB3aGljaCBQb2NrZXRCYXNlIHJlamVjdHMuXG4gICAgICAgIGNvbnN0IG1pbWVNYXA6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gICAgICAgICAgcGRmOiAnYXBwbGljYXRpb24vcGRmJyxcbiAgICAgICAgICBtZDogJ3RleHQvbWFya2Rvd24nLFxuICAgICAgICAgIHR4dDogJ3RleHQvcGxhaW4nLFxuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGJsb2IgPSBuZXcgQmxvYihbZmlsZV0sIHsgdHlwZTogbWltZU1hcFtmb3JtYXRdID8/IGZpbGUudHlwZSB9KVxuXG4gICAgICAgIGNvbnN0IGZkID0gbmV3IEZvcm1EYXRhKClcbiAgICAgICAgZmQuYXBwZW5kKCdmaWxlJywgYmxvYiwgZmlsZS5uYW1lKVxuICAgICAgICBmZC5hcHBlbmQoJ2ZpbGVuYW1lJywgZmlsZS5uYW1lKVxuICAgICAgICBmZC5hcHBlbmQoJ2Zvcm1hdCcsIGZvcm1hdClcbiAgICAgICAgZmQuYXBwZW5kKCdzdGF0dXMnLCAncHJvY2Vzc2luZycpXG5cbiAgICAgICAgY29uc3QgZG9jID0gYXdhaXQgcGIuY29sbGVjdGlvbignc291cmNlX2RvY3VtZW50cycpLmNyZWF0ZTx7IGlkOiBzdHJpbmc7IGZpbGU6IHN0cmluZyB9PihmZClcblxuICAgICAgICAvLyBCdWlsZCBQb2NrZXRCYXNlIGZpbGUgZG93bmxvYWQgVVJMXG4gICAgICAgIGNvbnN0IHBiVXJsID0gcHJvY2Vzcy5lbnYuTkVYVF9QVUJMSUNfUE9DS0VUQkFTRV9VUkwgPz8gJ2h0dHA6Ly9sb2NhbGhvc3Q6ODA5MCdcbiAgICAgICAgY29uc3QgZmlsZVVybCA9IGAke3BiVXJsfS9hcGkvZmlsZXMvc291cmNlX2RvY3VtZW50cy8ke2RvYy5pZH0vJHtkb2MuZmlsZX1gXG5cbiAgICAgICAgLy8gS2ljayBvZmYgaW5nZXN0aW9uXG4gICAgICAgIGNvbnN0IHsgam9iSWQ6IGpJZCB9ID0gYXdhaXQgcG9zdEluZ2VzdCh7XG4gICAgICAgICAgZG9jdW1lbnRJZDogZG9jLmlkLFxuICAgICAgICAgIGZpbGVuYW1lOiBmaWxlLm5hbWUsXG4gICAgICAgICAgZm9ybWF0LFxuICAgICAgICAgIGZpbGVVcmwsXG4gICAgICAgIH0pXG4gICAgICAgIHNldEpvYklkKGpJZClcbiAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICAvLyBQb2NrZXRCYXNlIENsaWVudFJlc3BvbnNlRXJyb3IgaGFzIGEgYHJlc3BvbnNlYCB3aXRoIGZpZWxkIGRldGFpbHNcbiAgICAgICAgY29uc3QgcGJFcnIgPSBlcnIgYXMgeyByZXNwb25zZT86IHsgbWVzc2FnZT86IHN0cmluZzsgZGF0YT86IFJlY29yZDxzdHJpbmcsIHsgbWVzc2FnZT86IHN0cmluZyB9PiB9IH1cbiAgICAgICAgY29uc3QgZGV0YWlsID0gcGJFcnIucmVzcG9uc2U/LmRhdGFcbiAgICAgICAgICA/IE9iamVjdC5lbnRyaWVzKHBiRXJyLnJlc3BvbnNlLmRhdGEpXG4gICAgICAgICAgICAgIC5tYXAoKFtmLCB2XSkgPT4gYCR7Zn06ICR7dj8ubWVzc2FnZSA/PyAnJ31gKVxuICAgICAgICAgICAgICAuam9pbignLCAnKVxuICAgICAgICAgIDogbnVsbFxuICAgICAgICBzZXRVcGxvYWRFcnJvcihkZXRhaWwgPz8gKGVyciBpbnN0YW5jZW9mIEVycm9yID8gZXJyLm1lc3NhZ2UgOiAnVXBsb2FkIGZhaWxlZCcpKVxuICAgICAgfSBmaW5hbGx5IHtcbiAgICAgICAgc2V0VXBsb2FkaW5nKGZhbHNlKVxuICAgICAgfVxuICAgIH0sXG4gICAgW10sXG4gIClcblxuICBmdW5jdGlvbiBoYW5kbGVDaGFuZ2UoZTogUmVhY3QuQ2hhbmdlRXZlbnQ8SFRNTElucHV0RWxlbWVudD4pIHtcbiAgICB2b2lkIGhhbmRsZUZpbGVzKGUudGFyZ2V0LmZpbGVzKVxuICAgIGUudGFyZ2V0LnZhbHVlID0gJydcbiAgfVxuXG4gIGZ1bmN0aW9uIGhhbmRsZURyb3AoZTogUmVhY3QuRHJhZ0V2ZW50PEhUTUxEaXZFbGVtZW50Pikge1xuICAgIGUucHJldmVudERlZmF1bHQoKVxuICAgIHNldERyYWdPdmVyKGZhbHNlKVxuICAgIHZvaWQgaGFuZGxlRmlsZXMoZS5kYXRhVHJhbnNmZXIuZmlsZXMpXG4gIH1cblxuICBmdW5jdGlvbiBoYW5kbGVEcmFnT3ZlcihlOiBSZWFjdC5EcmFnRXZlbnQ8SFRNTERpdkVsZW1lbnQ+KSB7XG4gICAgZS5wcmV2ZW50RGVmYXVsdCgpXG4gICAgc2V0RHJhZ092ZXIodHJ1ZSlcbiAgfVxuXG4gIGZ1bmN0aW9uIGhhbmRsZURyYWdMZWF2ZSgpIHtcbiAgICBzZXREcmFnT3ZlcihmYWxzZSlcbiAgfVxuXG4gIGNvbnN0IGlzRG9uZSA9IHN0YXR1cz8uc3RhdHVzID09PSAnZG9uZSdcbiAgY29uc3QgaXNGYWlsZWQgPSBzdGF0dXM/LnN0YXR1cyA9PT0gJ2ZhaWxlZCdcblxuICBpZiAoaXNEb25lICYmIGpvYklkKSB7XG4gICAgcmV0dXJuIChcbiAgICAgIDxkaXZcbiAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAndmFyKC0tc3VjY2VzcyknLFxuICAgICAgICAgIGJvcmRlclJhZGl1czogJ3ZhcigtLXItbWQpJyxcbiAgICAgICAgICBwYWRkaW5nOiAndmFyKC0tcy01KScsXG4gICAgICAgICAgdGV4dEFsaWduOiAnY2VudGVyJyxcbiAgICAgICAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAgICAgICAgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsXG4gICAgICAgICAgZ2FwOiAndmFyKC0tcy0zKScsXG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIDxwIHN0eWxlPXt7IG1hcmdpbjogMCwgZm9udFdlaWdodDogNjAwLCBjb2xvcjogJ3ZhcigtLXRlYWwtOTAwKScgfX0+XG4gICAgICAgICAgSW5nZXN0aW9uIGNvbXBsZXRlISB7c3RhdHVzLnRoZW1lc0ZvdW5kfSB0aGVtZXMsIHtzdGF0dXMudG9waWNzRm91bmR9IHRvcGljcyBmb3VuZC5cbiAgICAgICAgPC9wPlxuICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgdmFyaWFudD1cInNlY29uZGFyeVwiXG4gICAgICAgICAgc2l6ZT1cInNtXCJcbiAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XG4gICAgICAgICAgICBzZXRKb2JJZChudWxsKVxuICAgICAgICAgICAgb25TdWNjZXNzKClcbiAgICAgICAgICB9fVxuICAgICAgICA+XG4gICAgICAgICAgVXBsb2FkIGFub3RoZXJcbiAgICAgICAgPC9CdXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICApXG4gIH1cblxuICByZXR1cm4gKFxuICAgIDxkaXYgc3R5bGU9e3sgZGlzcGxheTogJ2ZsZXgnLCBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJywgZ2FwOiAndmFyKC0tcy00KScgfX0+XG4gICAgICA8ZGl2XG4gICAgICAgIG9uRHJvcD17aGFuZGxlRHJvcH1cbiAgICAgICAgb25EcmFnT3Zlcj17aGFuZGxlRHJhZ092ZXJ9XG4gICAgICAgIG9uRHJhZ0xlYXZlPXtoYW5kbGVEcmFnTGVhdmV9XG4gICAgICAgIG9uQ2xpY2s9eygpID0+IGZpbGVJbnB1dFJlZi5jdXJyZW50Py5jbGljaygpfVxuICAgICAgICBzdHlsZT17e1xuICAgICAgICAgIGJvcmRlcjogYDJweCBkYXNoZWQgJHtkcmFnT3ZlciA/ICd2YXIoLS1hY2NlbnQpJyA6ICd2YXIoLS1jcmVhbSknfWAsXG4gICAgICAgICAgYm9yZGVyUmFkaXVzOiAndmFyKC0tci1sZyknLFxuICAgICAgICAgIHBhZGRpbmc6ICd2YXIoLS1zLTgsIDY0cHgpIHZhcigtLXMtNSknLFxuICAgICAgICAgIHRleHRBbGlnbjogJ2NlbnRlcicsXG4gICAgICAgICAgY3Vyc29yOiAncG9pbnRlcicsXG4gICAgICAgICAgYmFja2dyb3VuZDogZHJhZ092ZXIgPyAndmFyKC0tYWNjZW50LXNvZnQpJyA6ICd2YXIoLS1iZy13YXJtKScsXG4gICAgICAgICAgdHJhbnNpdGlvbjogJ2JhY2tncm91bmQgMTUwbXMsIGJvcmRlci1jb2xvciAxNTBtcycsXG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgIHJlZj17ZmlsZUlucHV0UmVmfVxuICAgICAgICAgIHR5cGU9XCJmaWxlXCJcbiAgICAgICAgICBhY2NlcHQ9XCIucGRmLC5tZCwudHh0XCJcbiAgICAgICAgICBzdHlsZT17eyBkaXNwbGF5OiAnbm9uZScgfX1cbiAgICAgICAgICBvbkNoYW5nZT17aGFuZGxlQ2hhbmdlfVxuICAgICAgICAvPlxuICAgICAgICA8cFxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICBtYXJnaW46ICcwIDAgdmFyKC0tcy0yKScsXG4gICAgICAgICAgICBmb250U2l6ZTogJ3ZhcigtLXQtbGVhZCknLFxuICAgICAgICAgICAgZm9udFdlaWdodDogNjAwLFxuICAgICAgICAgICAgY29sb3I6ICd2YXIoLS1mZyknLFxuICAgICAgICAgIH19XG4gICAgICAgID5cbiAgICAgICAgICBEcm9wIGEgZG9jdW1lbnQgaGVyZVxuICAgICAgICA8L3A+XG4gICAgICAgIDxwIHN0eWxlPXt7IG1hcmdpbjogMCwgZm9udFNpemU6ICd2YXIoLS10LXNtYWxsKScsIGNvbG9yOiAndmFyKC0tZmctbXV0ZWQpJyB9fT5cbiAgICAgICAgICBvciB0YXAgdG8gYnJvd3NlIOKAlCBQREYsIE1hcmtkb3duLCBUWFRcbiAgICAgICAgPC9wPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIHt1cGxvYWRFcnJvciAmJiAoXG4gICAgICAgIDxkaXZcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJyNmOGQ3ZGEnLFxuICAgICAgICAgICAgY29sb3I6ICcjYzAzOTJiJyxcbiAgICAgICAgICAgIGJvcmRlclJhZGl1czogJ3ZhcigtLXItc20pJyxcbiAgICAgICAgICAgIHBhZGRpbmc6ICd2YXIoLS1zLTMpIHZhcigtLXMtNCknLFxuICAgICAgICAgICAgZm9udFNpemU6ICd2YXIoLS10LXNtYWxsKScsXG4gICAgICAgICAgfX1cbiAgICAgICAgPlxuICAgICAgICAgIHt1cGxvYWRFcnJvcn1cbiAgICAgICAgPC9kaXY+XG4gICAgICApfVxuXG4gICAgICB7KHVwbG9hZGluZyB8fCBqb2JJZCkgJiYgKFxuICAgICAgICA8ZGl2IHN0eWxlPXt7IGRpc3BsYXk6ICdmbGV4JywgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsIGdhcDogJ3ZhcigtLXMtMiknIH19PlxuICAgICAgICAgIDxQcm9ncmVzc0JhclxuICAgICAgICAgICAgdmFsdWU9e3VwbG9hZGluZyA/IDUgOiBwcm9ncmVzc31cbiAgICAgICAgICAgIGxhYmVsPXtcbiAgICAgICAgICAgICAgdXBsb2FkaW5nXG4gICAgICAgICAgICAgICAgPyAnVXBsb2FkaW5n4oCmJ1xuICAgICAgICAgICAgICAgIDogaXNGYWlsZWRcbiAgICAgICAgICAgICAgICA/IGBGYWlsZWQ6ICR7c3RhdHVzPy5yZWFzb24gPz8gJ3Vua25vd24gZXJyb3InfWBcbiAgICAgICAgICAgICAgICA6IHN0YXR1cz8uc3RhdHVzXG4gICAgICAgICAgICAgICAgPyBgJHtzdGF0dXMuc3RhdHVzLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpfSR7c3RhdHVzLnN0YXR1cy5zbGljZSgxKX3igKZgXG4gICAgICAgICAgICAgICAgOiAnUHJvY2Vzc2luZ+KApidcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbG9yPXtpc0ZhaWxlZCA/ICcjYzAzOTJiJyA6ICd2YXIoLS1hY2NlbnQpJ31cbiAgICAgICAgICAvPlxuICAgICAgICAgIHtzdGF0dXMgJiYgKFxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgIGZvbnRTaXplOiAndmFyKC0tdC1zbWFsbCknLFxuICAgICAgICAgICAgICAgIGNvbG9yOiAndmFyKC0tZmctbXV0ZWQpJyxcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAgICAgICAgICAgICAgZ2FwOiAndmFyKC0tcy00KScsXG4gICAgICAgICAgICAgICAgZmxleFdyYXA6ICd3cmFwJyxcbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPHNwYW4+Q2h1bmtzOiB7c3RhdHVzLmNodW5rc0VtYmVkZGVkfS97c3RhdHVzLmNodW5rc1RvdGFsfTwvc3Bhbj5cbiAgICAgICAgICAgICAgPHNwYW4+VGhlbWVzOiB7c3RhdHVzLnRoZW1lc0ZvdW5kfTwvc3Bhbj5cbiAgICAgICAgICAgICAgPHNwYW4+VG9waWNzOiB7c3RhdHVzLnRvcGljc0ZvdW5kfTwvc3Bhbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICl9XG4gICAgICAgIDwvZGl2PlxuICAgICAgKX1cbiAgICA8L2Rpdj5cbiAgKVxufVxuIl0sIm5hbWVzIjpbIlJlYWN0IiwidXNlUmVmIiwidXNlU3RhdGUiLCJ1c2VDYWxsYmFjayIsIkJ1dHRvbiIsIlByb2dyZXNzQmFyIiwidXNlSW5nZXN0aW9uU3RhdHVzIiwicGIiLCJwb3N0SW5nZXN0IiwiRG9jdW1lbnRVcGxvYWQiLCJvblN1Y2Nlc3MiLCJmaWxlSW5wdXRSZWYiLCJ1cGxvYWRpbmciLCJzZXRVcGxvYWRpbmciLCJqb2JJZCIsInNldEpvYklkIiwidXBsb2FkRXJyb3IiLCJzZXRVcGxvYWRFcnJvciIsImRyYWdPdmVyIiwic2V0RHJhZ092ZXIiLCJzdGF0dXMiLCJwcm9ncmVzcyIsImhhbmRsZUZpbGVzIiwiZmlsZXMiLCJsZW5ndGgiLCJmaWxlIiwiYWxsb3dlZCIsImV4dCIsIm5hbWUiLCJzbGljZSIsImxhc3RJbmRleE9mIiwidG9Mb3dlckNhc2UiLCJpbmNsdWRlcyIsImZvcm1hdCIsIm1pbWVNYXAiLCJwZGYiLCJtZCIsInR4dCIsImJsb2IiLCJCbG9iIiwidHlwZSIsImZkIiwiRm9ybURhdGEiLCJhcHBlbmQiLCJkb2MiLCJjb2xsZWN0aW9uIiwiY3JlYXRlIiwicHJvY2VzcyIsInBiVXJsIiwiZW52IiwiTkVYVF9QVUJMSUNfUE9DS0VUQkFTRV9VUkwiLCJmaWxlVXJsIiwiaWQiLCJqSWQiLCJkb2N1bWVudElkIiwiZmlsZW5hbWUiLCJlcnIiLCJwYkVyciIsImRldGFpbCIsInJlc3BvbnNlIiwiZGF0YSIsIk9iamVjdCIsImVudHJpZXMiLCJtYXAiLCJmIiwidiIsIm1lc3NhZ2UiLCJqb2luIiwiRXJyb3IiLCJoYW5kbGVDaGFuZ2UiLCJlIiwidGFyZ2V0IiwidmFsdWUiLCJoYW5kbGVEcm9wIiwicHJldmVudERlZmF1bHQiLCJkYXRhVHJhbnNmZXIiLCJoYW5kbGVEcmFnT3ZlciIsImhhbmRsZURyYWdMZWF2ZSIsImlzRG9uZSIsImlzRmFpbGVkIiwiZGl2Iiwic3R5bGUiLCJiYWNrZ3JvdW5kIiwiYm9yZGVyUmFkaXVzIiwicGFkZGluZyIsInRleHRBbGlnbiIsImRpc3BsYXkiLCJmbGV4RGlyZWN0aW9uIiwiZ2FwIiwicCIsIm1hcmdpbiIsImZvbnRXZWlnaHQiLCJjb2xvciIsInRoZW1lc0ZvdW5kIiwidG9waWNzRm91bmQiLCJ2YXJpYW50Iiwic2l6ZSIsIm9uQ2xpY2siLCJvbkRyb3AiLCJvbkRyYWdPdmVyIiwib25EcmFnTGVhdmUiLCJjdXJyZW50IiwiY2xpY2siLCJib3JkZXIiLCJjdXJzb3IiLCJ0cmFuc2l0aW9uIiwiaW5wdXQiLCJyZWYiLCJhY2NlcHQiLCJvbkNoYW5nZSIsImZvbnRTaXplIiwibGFiZWwiLCJyZWFzb24iLCJjaGFyQXQiLCJ0b1VwcGVyQ2FzZSIsImZsZXhXcmFwIiwic3BhbiIsImNodW5rc0VtYmVkZGVkIiwiY2h1bmtzVG90YWwiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/components/admin/DocumentUpload.tsx\n")); + +/***/ }) + +}); \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/app/admin/documents/page.a7ccb1bd8466330b.hot-update.js b/app/frontend/.next/static/webpack/app/admin/documents/page.a7ccb1bd8466330b.hot-update.js new file mode 100644 index 0000000..82b1d94 --- /dev/null +++ b/app/frontend/.next/static/webpack/app/admin/documents/page.a7ccb1bd8466330b.hot-update.js @@ -0,0 +1,22 @@ +"use strict"; +/* + * ATTENTION: An "eval-source-map" devtool has been used. + * This devtool is neither made for production nor for readable output files. + * It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools. + * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) + * or disable the default devtool with "devtool: false". + * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). + */ +self["webpackHotUpdate_N_E"]("app/admin/documents/page",{ + +/***/ "(app-pages-browser)/./src/lib/services.ts": +/*!*****************************!*\ + !*** ./src/lib/services.ts ***! + \*****************************/ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFeed: function() { return /* binding */ getFeed; },\n/* harmony export */ getIngestionStatus: function() { return /* binding */ getIngestionStatus; },\n/* harmony export */ getLeaderboard: function() { return /* binding */ getLeaderboard; },\n/* harmony export */ patchCurriculumWeekOrder: function() { return /* binding */ patchCurriculumWeekOrder; },\n/* harmony export */ postComplete: function() { return /* binding */ postComplete; },\n/* harmony export */ postCurriculumConfirm: function() { return /* binding */ postCurriculumConfirm; },\n/* harmony export */ postGenerateAll: function() { return /* binding */ postGenerateAll; },\n/* harmony export */ postIngest: function() { return /* binding */ postIngest; }\n/* harmony export */ });\nvar _process_env_NEXT_PUBLIC_INGESTION_URL;\nconst INGESTION_URL = (_process_env_NEXT_PUBLIC_INGESTION_URL = \"http://localhost:3001\") !== null && _process_env_NEXT_PUBLIC_INGESTION_URL !== void 0 ? _process_env_NEXT_PUBLIC_INGESTION_URL : \"http://localhost:3001\";\nvar _process_env_NEXT_PUBLIC_GENERATION_URL;\nconst GENERATION_URL = (_process_env_NEXT_PUBLIC_GENERATION_URL = \"http://localhost:3002\") !== null && _process_env_NEXT_PUBLIC_GENERATION_URL !== void 0 ? _process_env_NEXT_PUBLIC_GENERATION_URL : \"http://localhost:3002\";\nvar _process_env_NEXT_PUBLIC_CURRICULUM_URL;\nconst CURRICULUM_URL = (_process_env_NEXT_PUBLIC_CURRICULUM_URL = \"http://localhost:3003\") !== null && _process_env_NEXT_PUBLIC_CURRICULUM_URL !== void 0 ? _process_env_NEXT_PUBLIC_CURRICULUM_URL : \"http://localhost:3003\";\nvar _process_env_NEXT_PUBLIC_PROGRESS_URL;\nconst PROGRESS_URL = (_process_env_NEXT_PUBLIC_PROGRESS_URL = \"http://localhost:3005\") !== null && _process_env_NEXT_PUBLIC_PROGRESS_URL !== void 0 ? _process_env_NEXT_PUBLIC_PROGRESS_URL : \"http://localhost:3005\";\nasync function handleResponse(res) {\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n return res.json();\n}\nasync function postIngest(payload) {\n const res = await fetch(\"\".concat(INGESTION_URL, \"/ingest\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getIngestionStatus(jobId) {\n const res = await fetch(\"\".concat(INGESTION_URL, \"/ingest/status/\").concat(encodeURIComponent(jobId)));\n return handleResponse(res);\n}\nasync function postGenerateAll(themeId) {\n const res = await fetch(\"\".concat(GENERATION_URL, \"/generate\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n themeId\n })\n });\n const data = await handleResponse(res);\n return {\n queued: data.totalItems\n };\n}\nasync function postComplete(payload) {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/complete\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getLeaderboard() {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/leaderboard\"));\n return handleResponse(res);\n}\nasync function getFeed() {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/feed\"));\n return handleResponse(res);\n}\nasync function postCurriculumConfirm(versionId) {\n const res = await fetch(\"\".concat(CURRICULUM_URL, \"/curriculum/versions/\").concat(encodeURIComponent(versionId), \"/confirm\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n}\nasync function patchCurriculumWeekOrder(weekId, position) {\n const res = await fetch(\"\".concat(CURRICULUM_URL, \"/curriculum/weeks/\").concat(encodeURIComponent(weekId), \"/order\"), {\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n position\n })\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n}\n\n\n;\n // Wrapped in an IIFE to avoid polluting the global scope\n ;\n (function () {\n var _a, _b;\n // Legacy CSS implementations will `eval` browser code in a Node.js context\n // to extract CSS. For backwards compatibility, we need to check we're in a\n // browser context before continuing.\n if (typeof self !== 'undefined' &&\n // AMP / No-JS mode does not inject these helpers:\n '$RefreshHelpers$' in self) {\n // @ts-ignore __webpack_module__ is global\n var currentExports = module.exports;\n // @ts-ignore __webpack_module__ is global\n var prevSignature = (_b = (_a = module.hot.data) === null || _a === void 0 ? void 0 : _a.prevSignature) !== null && _b !== void 0 ? _b : null;\n // This cannot happen in MainTemplate because the exports mismatch between\n // templating and execution.\n self.$RefreshHelpers$.registerExportsForReactRefresh(currentExports, module.id);\n // A module can be accepted automatically based on its exports, e.g. when\n // it is a Refresh Boundary.\n if (self.$RefreshHelpers$.isReactRefreshBoundary(currentExports)) {\n // Save the previous exports signature on update so we can compare the boundary\n // signatures. We avoid saving exports themselves since it causes memory leaks (https://github.com/vercel/next.js/pull/53797)\n module.hot.dispose(function (data) {\n data.prevSignature =\n self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports);\n });\n // Unconditionally accept an update to this module, we'll check if it's\n // still a Refresh Boundary later.\n // @ts-ignore importMeta is replaced in the loader\n module.hot.accept();\n // This field is set when the previous version of this module was a\n // Refresh Boundary, letting us know we need to check for invalidation or\n // enqueue an update.\n if (prevSignature !== null) {\n // A boundary can become ineligible if its exports are incompatible\n // with the previous exports.\n //\n // For example, if you add/remove/change exports, we'll want to\n // re-execute the importing modules, and force those components to\n // re-render. Similarly, if you convert a class component to a\n // function, we want to invalidate the boundary.\n if (self.$RefreshHelpers$.shouldInvalidateReactRefreshBoundary(prevSignature, self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports))) {\n module.hot.invalidate();\n }\n else {\n self.$RefreshHelpers$.scheduleUpdate();\n }\n }\n }\n else {\n // Since we just executed the code for the module, it's possible that the\n // new exports made it ineligible for being a boundary.\n // We only care about the case when we were _previously_ a boundary,\n // because we already accepted this update (accidental side effect).\n var isNoLongerABoundary = prevSignature !== null;\n if (isNoLongerABoundary) {\n module.hot.invalidate();\n }\n }\n }\n })();\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL3NyYy9saWIvc2VydmljZXMudHMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7SUFRc0JBO0FBQXRCLE1BQU1DLGdCQUFnQkQsQ0FBQUEseUNBQUFBLHVCQUFxQyxjQUFyQ0Esb0RBQUFBLHlDQUF5QztJQUN4Q0E7QUFBdkIsTUFBTUksaUJBQWlCSixDQUFBQSwwQ0FBQUEsdUJBQXNDLGNBQXRDQSxxREFBQUEsMENBQTBDO0lBQzFDQTtBQUF2QixNQUFNTSxpQkFBaUJOLENBQUFBLDBDQUFBQSx1QkFBc0MsY0FBdENBLHFEQUFBQSwwQ0FBMEM7SUFDNUNBO0FBQXJCLE1BQU1RLGVBQWVSLENBQUFBLHdDQUFBQSx1QkFBb0MsY0FBcENBLG1EQUFBQSx3Q0FBd0M7QUFFN0QsZUFBZVUsZUFBa0JDLEdBQWE7SUFDNUMsSUFBSSxDQUFDQSxJQUFJQyxFQUFFLEVBQUU7UUFDWCxNQUFNQyxPQUFPLE1BQU1GLElBQUlFLElBQUksR0FBR0MsS0FBSyxDQUFDLElBQU1ILElBQUlJLFVBQVU7UUFDeEQsTUFBTSxJQUFJQyxNQUFNLFFBQXVCSCxPQUFmRixJQUFJTSxNQUFNLEVBQUMsTUFBUyxPQUFMSjtJQUN6QztJQUNBLE9BQU9GLElBQUlPLElBQUk7QUFDakI7QUFFTyxlQUFlQyxXQUFXQyxPQUtoQztJQUNDLE1BQU1ULE1BQU0sTUFBTVUsTUFBTSxHQUFpQixPQUFkcEIsZUFBYyxZQUFVO1FBQ2pEcUIsUUFBUTtRQUNSQyxTQUFTO1lBQUUsZ0JBQWdCO1FBQW1CO1FBQzlDQyxNQUFNQyxLQUFLQyxTQUFTLENBQUNOO0lBQ3ZCO0lBQ0EsT0FBT1YsZUFBa0NDO0FBQzNDO0FBRU8sZUFBZWdCLG1CQUFtQkMsS0FBYTtJQUNwRCxNQUFNakIsTUFBTSxNQUFNVSxNQUFNLEdBQWtDUSxPQUEvQjVCLGVBQWMsbUJBQTJDLE9BQTFCNEIsbUJBQW1CRDtJQUM3RSxPQUFPbEIsZUFBbUNDO0FBQzVDO0FBRU8sZUFBZW1CLGdCQUFnQkMsT0FBZTtJQUNuRCxNQUFNcEIsTUFBTSxNQUFNVSxNQUFNLEdBQWtCLE9BQWZqQixnQkFBZSxjQUFZO1FBQ3BEa0IsUUFBUTtRQUNSQyxTQUFTO1lBQUUsZ0JBQWdCO1FBQW1CO1FBQzlDQyxNQUFNQyxLQUFLQyxTQUFTLENBQUM7WUFBRUs7UUFBUTtJQUNqQztJQUNBLE1BQU1DLE9BQU8sTUFBTXRCLGVBQXNEQztJQUN6RSxPQUFPO1FBQUVzQixRQUFRRCxLQUFLRSxVQUFVO0lBQUM7QUFDbkM7QUFFTyxlQUFlQyxhQUFhZixPQUF3QjtJQUN6RCxNQUFNVCxNQUFNLE1BQU1VLE1BQU0sR0FBZ0IsT0FBYmIsY0FBYSxjQUFZO1FBQ2xEYyxRQUFRO1FBQ1JDLFNBQVM7WUFBRSxnQkFBZ0I7UUFBbUI7UUFDOUNDLE1BQU1DLEtBQUtDLFNBQVMsQ0FBQ047SUFDdkI7SUFDQSxPQUFPVixlQUFpQ0M7QUFDMUM7QUFFTyxlQUFleUI7SUFDcEIsTUFBTXpCLE1BQU0sTUFBTVUsTUFBTSxHQUFnQixPQUFiYixjQUFhO0lBQ3hDLE9BQU9FLGVBQW1DQztBQUM1QztBQUVPLGVBQWUwQjtJQUNwQixNQUFNMUIsTUFBTSxNQUFNVSxNQUFNLEdBQWdCLE9BQWJiLGNBQWE7SUFDeEMsT0FBT0UsZUFBNEJDO0FBQ3JDO0FBRU8sZUFBZTJCLHNCQUFzQkMsU0FBaUI7SUFDM0QsTUFBTTVCLE1BQU0sTUFBTVUsTUFDaEIsR0FBeUNRLE9BQXRDdkIsZ0JBQWUseUJBQXFELE9BQTlCdUIsbUJBQW1CVSxZQUFXLGFBQ3ZFO1FBQ0VqQixRQUFRO1FBQ1JDLFNBQVM7WUFBRSxnQkFBZ0I7UUFBbUI7SUFDaEQ7SUFFRixJQUFJLENBQUNaLElBQUlDLEVBQUUsRUFBRTtRQUNYLE1BQU1DLE9BQU8sTUFBTUYsSUFBSUUsSUFBSSxHQUFHQyxLQUFLLENBQUMsSUFBTUgsSUFBSUksVUFBVTtRQUN4RCxNQUFNLElBQUlDLE1BQU0sUUFBdUJILE9BQWZGLElBQUlNLE1BQU0sRUFBQyxNQUFTLE9BQUxKO0lBQ3pDO0FBQ0Y7QUFFTyxlQUFlMkIseUJBQXlCQyxNQUFjLEVBQUVDLFFBQWdCO0lBQzdFLE1BQU0vQixNQUFNLE1BQU1VLE1BQ2hCLEdBQXNDUSxPQUFuQ3ZCLGdCQUFlLHNCQUErQyxPQUEzQnVCLG1CQUFtQlksU0FBUSxXQUNqRTtRQUNFbkIsUUFBUTtRQUNSQyxTQUFTO1lBQUUsZ0JBQWdCO1FBQW1CO1FBQzlDQyxNQUFNQyxLQUFLQyxTQUFTLENBQUM7WUFBRWdCO1FBQVM7SUFDbEM7SUFFRixJQUFJLENBQUMvQixJQUFJQyxFQUFFLEVBQUU7UUFDWCxNQUFNQyxPQUFPLE1BQU1GLElBQUlFLElBQUksR0FBR0MsS0FBSyxDQUFDLElBQU1ILElBQUlJLFVBQVU7UUFDeEQsTUFBTSxJQUFJQyxNQUFNLFFBQXVCSCxPQUFmRixJQUFJTSxNQUFNLEVBQUMsTUFBUyxPQUFMSjtJQUN6QztBQUNGIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL3NyYy9saWIvc2VydmljZXMudHM/MDcwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIEluZ2VzdGlvbkpvYlN0YXR1cyxcbiAgQ29tcGxldGVQYXlsb2FkLFxuICBDb21wbGV0ZVJlc3BvbnNlLFxuICBMZWFkZXJib2FyZEVudHJ5LFxuICBGZWVkRW50cnksXG59IGZyb20gJ0AvdHlwZXMnXG5cbmNvbnN0IElOR0VTVElPTl9VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19JTkdFU1RJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDEnXG5jb25zdCBHRU5FUkFUSU9OX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0dFTkVSQVRJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDInXG5jb25zdCBDVVJSSUNVTFVNX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDMnXG5jb25zdCBQUk9HUkVTU19VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19QUk9HUkVTU19VUkwgPz8gJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwNSdcblxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlUmVzcG9uc2U8VD4ocmVzOiBSZXNwb25zZSk6IFByb21pc2U8VD4ge1xuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxuICByZXR1cm4gcmVzLmpzb24oKSBhcyBQcm9taXNlPFQ+XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0SW5nZXN0KHBheWxvYWQ6IHtcbiAgZG9jdW1lbnRJZDogc3RyaW5nXG4gIGZpbGVuYW1lOiBzdHJpbmdcbiAgZm9ybWF0OiAncGRmJyB8ICdtZCcgfCAndHh0J1xuICBmaWxlVXJsOiBzdHJpbmdcbn0pOiBQcm9taXNlPHsgam9iSWQ6IHN0cmluZyB9PiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdGAsIHtcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICBib2R5OiBKU09OLnN0cmluZ2lmeShwYXlsb2FkKSxcbiAgfSlcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPHsgam9iSWQ6IHN0cmluZyB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRJbmdlc3Rpb25TdGF0dXMoam9iSWQ6IHN0cmluZyk6IFByb21pc2U8SW5nZXN0aW9uSm9iU3RhdHVzPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdC9zdGF0dXMvJHtlbmNvZGVVUklDb21wb25lbnQoam9iSWQpfWApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxJbmdlc3Rpb25Kb2JTdGF0dXM+KHJlcylcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHBvc3RHZW5lcmF0ZUFsbCh0aGVtZUlkOiBzdHJpbmcpOiBQcm9taXNlPHsgcXVldWVkOiBudW1iZXIgfT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtHRU5FUkFUSU9OX1VSTH0vZ2VuZXJhdGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkoeyB0aGVtZUlkIH0pLFxuICB9KVxuICBjb25zdCBkYXRhID0gYXdhaXQgaGFuZGxlUmVzcG9uc2U8eyBqb2JJZDogc3RyaW5nOyB0b3RhbEl0ZW1zOiBudW1iZXIgfT4ocmVzKVxuICByZXR1cm4geyBxdWV1ZWQ6IGRhdGEudG90YWxJdGVtcyB9XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0Q29tcGxldGUocGF5bG9hZDogQ29tcGxldGVQYXlsb2FkKTogUHJvbWlzZTxDb21wbGV0ZVJlc3BvbnNlPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vY29tcGxldGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkocGF5bG9hZCksXG4gIH0pXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxDb21wbGV0ZVJlc3BvbnNlPihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRMZWFkZXJib2FyZCgpOiBQcm9taXNlPExlYWRlcmJvYXJkRW50cnlbXT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtQUk9HUkVTU19VUkx9L2xlYWRlcmJvYXJkYClcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPExlYWRlcmJvYXJkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0RmVlZCgpOiBQcm9taXNlPEZlZWRFbnRyeVtdPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vZmVlZGApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxGZWVkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcG9zdEN1cnJpY3VsdW1Db25maXJtKHZlcnNpb25JZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3ZlcnNpb25zLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHZlcnNpb25JZCl9L2NvbmZpcm1gLFxuICAgIHtcbiAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyKHdlZWtJZDogc3RyaW5nLCBwb3NpdGlvbjogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3dlZWtzLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHdlZWtJZCl9L29yZGVyYCxcbiAgICB7XG4gICAgICBtZXRob2Q6ICdQQVRDSCcsXG4gICAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHsgcG9zaXRpb24gfSksXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuIl0sIm5hbWVzIjpbInByb2Nlc3MiLCJJTkdFU1RJT05fVVJMIiwiZW52IiwiTkVYVF9QVUJMSUNfSU5HRVNUSU9OX1VSTCIsIkdFTkVSQVRJT05fVVJMIiwiTkVYVF9QVUJMSUNfR0VORVJBVElPTl9VUkwiLCJDVVJSSUNVTFVNX1VSTCIsIk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMIiwiUFJPR1JFU1NfVVJMIiwiTkVYVF9QVUJMSUNfUFJPR1JFU1NfVVJMIiwiaGFuZGxlUmVzcG9uc2UiLCJyZXMiLCJvayIsInRleHQiLCJjYXRjaCIsInN0YXR1c1RleHQiLCJFcnJvciIsInN0YXR1cyIsImpzb24iLCJwb3N0SW5nZXN0IiwicGF5bG9hZCIsImZldGNoIiwibWV0aG9kIiwiaGVhZGVycyIsImJvZHkiLCJKU09OIiwic3RyaW5naWZ5IiwiZ2V0SW5nZXN0aW9uU3RhdHVzIiwiam9iSWQiLCJlbmNvZGVVUklDb21wb25lbnQiLCJwb3N0R2VuZXJhdGVBbGwiLCJ0aGVtZUlkIiwiZGF0YSIsInF1ZXVlZCIsInRvdGFsSXRlbXMiLCJwb3N0Q29tcGxldGUiLCJnZXRMZWFkZXJib2FyZCIsImdldEZlZWQiLCJwb3N0Q3VycmljdWx1bUNvbmZpcm0iLCJ2ZXJzaW9uSWQiLCJwYXRjaEN1cnJpY3VsdW1XZWVrT3JkZXIiLCJ3ZWVrSWQiLCJwb3NpdGlvbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/lib/services.ts\n")); + +/***/ }) + +}); \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/app/admin/knowledge/page.a7ccb1bd8466330b.hot-update.js b/app/frontend/.next/static/webpack/app/admin/knowledge/page.a7ccb1bd8466330b.hot-update.js new file mode 100644 index 0000000..32decab --- /dev/null +++ b/app/frontend/.next/static/webpack/app/admin/knowledge/page.a7ccb1bd8466330b.hot-update.js @@ -0,0 +1,22 @@ +"use strict"; +/* + * ATTENTION: An "eval-source-map" devtool has been used. + * This devtool is neither made for production nor for readable output files. + * It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools. + * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) + * or disable the default devtool with "devtool: false". + * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). + */ +self["webpackHotUpdate_N_E"]("app/admin/knowledge/page",{ + +/***/ "(app-pages-browser)/./src/lib/services.ts": +/*!*****************************!*\ + !*** ./src/lib/services.ts ***! + \*****************************/ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFeed: function() { return /* binding */ getFeed; },\n/* harmony export */ getIngestionStatus: function() { return /* binding */ getIngestionStatus; },\n/* harmony export */ getLeaderboard: function() { return /* binding */ getLeaderboard; },\n/* harmony export */ patchCurriculumWeekOrder: function() { return /* binding */ patchCurriculumWeekOrder; },\n/* harmony export */ postComplete: function() { return /* binding */ postComplete; },\n/* harmony export */ postCurriculumConfirm: function() { return /* binding */ postCurriculumConfirm; },\n/* harmony export */ postGenerateAll: function() { return /* binding */ postGenerateAll; },\n/* harmony export */ postIngest: function() { return /* binding */ postIngest; }\n/* harmony export */ });\nvar _process_env_NEXT_PUBLIC_INGESTION_URL;\nconst INGESTION_URL = (_process_env_NEXT_PUBLIC_INGESTION_URL = \"http://localhost:3001\") !== null && _process_env_NEXT_PUBLIC_INGESTION_URL !== void 0 ? _process_env_NEXT_PUBLIC_INGESTION_URL : \"http://localhost:3001\";\nvar _process_env_NEXT_PUBLIC_GENERATION_URL;\nconst GENERATION_URL = (_process_env_NEXT_PUBLIC_GENERATION_URL = \"http://localhost:3002\") !== null && _process_env_NEXT_PUBLIC_GENERATION_URL !== void 0 ? _process_env_NEXT_PUBLIC_GENERATION_URL : \"http://localhost:3002\";\nvar _process_env_NEXT_PUBLIC_CURRICULUM_URL;\nconst CURRICULUM_URL = (_process_env_NEXT_PUBLIC_CURRICULUM_URL = \"http://localhost:3003\") !== null && _process_env_NEXT_PUBLIC_CURRICULUM_URL !== void 0 ? _process_env_NEXT_PUBLIC_CURRICULUM_URL : \"http://localhost:3003\";\nvar _process_env_NEXT_PUBLIC_PROGRESS_URL;\nconst PROGRESS_URL = (_process_env_NEXT_PUBLIC_PROGRESS_URL = \"http://localhost:3005\") !== null && _process_env_NEXT_PUBLIC_PROGRESS_URL !== void 0 ? _process_env_NEXT_PUBLIC_PROGRESS_URL : \"http://localhost:3005\";\nasync function handleResponse(res) {\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n return res.json();\n}\nasync function postIngest(payload) {\n const res = await fetch(\"\".concat(INGESTION_URL, \"/ingest\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getIngestionStatus(jobId) {\n const res = await fetch(\"\".concat(INGESTION_URL, \"/ingest/status/\").concat(encodeURIComponent(jobId)));\n return handleResponse(res);\n}\nasync function postGenerateAll(themeId) {\n const res = await fetch(\"\".concat(GENERATION_URL, \"/generate\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n themeId\n })\n });\n const data = await handleResponse(res);\n return {\n queued: data.totalItems\n };\n}\nasync function postComplete(payload) {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/complete\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getLeaderboard() {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/leaderboard\"));\n return handleResponse(res);\n}\nasync function getFeed() {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/feed\"));\n return handleResponse(res);\n}\nasync function postCurriculumConfirm(versionId) {\n const res = await fetch(\"\".concat(CURRICULUM_URL, \"/curriculum/versions/\").concat(encodeURIComponent(versionId), \"/confirm\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n}\nasync function patchCurriculumWeekOrder(weekId, position) {\n const res = await fetch(\"\".concat(CURRICULUM_URL, \"/curriculum/weeks/\").concat(encodeURIComponent(weekId), \"/order\"), {\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n position\n })\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n}\n\n\n;\n // Wrapped in an IIFE to avoid polluting the global scope\n ;\n (function () {\n var _a, _b;\n // Legacy CSS implementations will `eval` browser code in a Node.js context\n // to extract CSS. For backwards compatibility, we need to check we're in a\n // browser context before continuing.\n if (typeof self !== 'undefined' &&\n // AMP / No-JS mode does not inject these helpers:\n '$RefreshHelpers$' in self) {\n // @ts-ignore __webpack_module__ is global\n var currentExports = module.exports;\n // @ts-ignore __webpack_module__ is global\n var prevSignature = (_b = (_a = module.hot.data) === null || _a === void 0 ? void 0 : _a.prevSignature) !== null && _b !== void 0 ? _b : null;\n // This cannot happen in MainTemplate because the exports mismatch between\n // templating and execution.\n self.$RefreshHelpers$.registerExportsForReactRefresh(currentExports, module.id);\n // A module can be accepted automatically based on its exports, e.g. when\n // it is a Refresh Boundary.\n if (self.$RefreshHelpers$.isReactRefreshBoundary(currentExports)) {\n // Save the previous exports signature on update so we can compare the boundary\n // signatures. We avoid saving exports themselves since it causes memory leaks (https://github.com/vercel/next.js/pull/53797)\n module.hot.dispose(function (data) {\n data.prevSignature =\n self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports);\n });\n // Unconditionally accept an update to this module, we'll check if it's\n // still a Refresh Boundary later.\n // @ts-ignore importMeta is replaced in the loader\n module.hot.accept();\n // This field is set when the previous version of this module was a\n // Refresh Boundary, letting us know we need to check for invalidation or\n // enqueue an update.\n if (prevSignature !== null) {\n // A boundary can become ineligible if its exports are incompatible\n // with the previous exports.\n //\n // For example, if you add/remove/change exports, we'll want to\n // re-execute the importing modules, and force those components to\n // re-render. Similarly, if you convert a class component to a\n // function, we want to invalidate the boundary.\n if (self.$RefreshHelpers$.shouldInvalidateReactRefreshBoundary(prevSignature, self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports))) {\n module.hot.invalidate();\n }\n else {\n self.$RefreshHelpers$.scheduleUpdate();\n }\n }\n }\n else {\n // Since we just executed the code for the module, it's possible that the\n // new exports made it ineligible for being a boundary.\n // We only care about the case when we were _previously_ a boundary,\n // because we already accepted this update (accidental side effect).\n var isNoLongerABoundary = prevSignature !== null;\n if (isNoLongerABoundary) {\n module.hot.invalidate();\n }\n }\n }\n })();\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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QXlCQyxNQUFjLEVBQUVDLFFBQWdCO0lBQzdFLE1BQU0vQixNQUFNLE1BQU1VLE1BQ2hCLEdBQXNDUSxPQUFuQ3ZCLGdCQUFlLHNCQUErQyxPQUEzQnVCLG1CQUFtQlksU0FBUSxXQUNqRTtRQUNFbkIsUUFBUTtRQUNSQyxTQUFTO1lBQUUsZ0JBQWdCO1FBQW1CO1FBQzlDQyxNQUFNQyxLQUFLQyxTQUFTLENBQUM7WUFBRWdCO1FBQVM7SUFDbEM7SUFFRixJQUFJLENBQUMvQixJQUFJQyxFQUFFLEVBQUU7UUFDWCxNQUFNQyxPQUFPLE1BQU1GLElBQUlFLElBQUksR0FBR0MsS0FBSyxDQUFDLElBQU1ILElBQUlJLFVBQVU7UUFDeEQsTUFBTSxJQUFJQyxNQUFNLFFBQXVCSCxPQUFmRixJQUFJTSxNQUFNLEVBQUMsTUFBUyxPQUFMSjtJQUN6QztBQUNGIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL3NyYy9saWIvc2VydmljZXMudHM/MDcwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIEluZ2VzdGlvbkpvYlN0YXR1cyxcbiAgQ29tcGxldGVQYXlsb2FkLFxuICBDb21wbGV0ZVJlc3BvbnNlLFxuICBMZWFkZXJib2FyZEVudHJ5LFxuICBGZWVkRW50cnksXG59IGZyb20gJ0AvdHlwZXMnXG5cbmNvbnN0IElOR0VTVElPTl9VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19JTkdFU1RJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDEnXG5jb25zdCBHRU5FUkFUSU9OX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0dFTkVSQVRJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDInXG5jb25zdCBDVVJSSUNVTFVNX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDMnXG5jb25zdCBQUk9HUkVTU19VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19QUk9HUkVTU19VUkwgPz8gJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwNSdcblxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlUmVzcG9uc2U8VD4ocmVzOiBSZXNwb25zZSk6IFByb21pc2U8VD4ge1xuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxuICByZXR1cm4gcmVzLmpzb24oKSBhcyBQcm9taXNlPFQ+XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0SW5nZXN0KHBheWxvYWQ6IHtcbiAgZG9jdW1lbnRJZDogc3RyaW5nXG4gIGZpbGVuYW1lOiBzdHJpbmdcbiAgZm9ybWF0OiAncGRmJyB8ICdtZCcgfCAndHh0J1xuICBmaWxlVXJsOiBzdHJpbmdcbn0pOiBQcm9taXNlPHsgam9iSWQ6IHN0cmluZyB9PiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdGAsIHtcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICBib2R5OiBKU09OLnN0cmluZ2lmeShwYXlsb2FkKSxcbiAgfSlcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPHsgam9iSWQ6IHN0cmluZyB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRJbmdlc3Rpb25TdGF0dXMoam9iSWQ6IHN0cmluZyk6IFByb21pc2U8SW5nZXN0aW9uSm9iU3RhdHVzPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdC9zdGF0dXMvJHtlbmNvZGVVUklDb21wb25lbnQoam9iSWQpfWApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxJbmdlc3Rpb25Kb2JTdGF0dXM+KHJlcylcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHBvc3RHZW5lcmF0ZUFsbCh0aGVtZUlkOiBzdHJpbmcpOiBQcm9taXNlPHsgcXVldWVkOiBudW1iZXIgfT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtHRU5FUkFUSU9OX1VSTH0vZ2VuZXJhdGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkoeyB0aGVtZUlkIH0pLFxuICB9KVxuICBjb25zdCBkYXRhID0gYXdhaXQgaGFuZGxlUmVzcG9uc2U8eyBqb2JJZDogc3RyaW5nOyB0b3RhbEl0ZW1zOiBudW1iZXIgfT4ocmVzKVxuICByZXR1cm4geyBxdWV1ZWQ6IGRhdGEudG90YWxJdGVtcyB9XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0Q29tcGxldGUocGF5bG9hZDogQ29tcGxldGVQYXlsb2FkKTogUHJvbWlzZTxDb21wbGV0ZVJlc3BvbnNlPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vY29tcGxldGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkocGF5bG9hZCksXG4gIH0pXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxDb21wbGV0ZVJlc3BvbnNlPihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRMZWFkZXJib2FyZCgpOiBQcm9taXNlPExlYWRlcmJvYXJkRW50cnlbXT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtQUk9HUkVTU19VUkx9L2xlYWRlcmJvYXJkYClcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPExlYWRlcmJvYXJkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0RmVlZCgpOiBQcm9taXNlPEZlZWRFbnRyeVtdPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vZmVlZGApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxGZWVkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcG9zdEN1cnJpY3VsdW1Db25maXJtKHZlcnNpb25JZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3ZlcnNpb25zLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHZlcnNpb25JZCl9L2NvbmZpcm1gLFxuICAgIHtcbiAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyKHdlZWtJZDogc3RyaW5nLCBwb3NpdGlvbjogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3dlZWtzLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHdlZWtJZCl9L29yZGVyYCxcbiAgICB7XG4gICAgICBtZXRob2Q6ICdQQVRDSCcsXG4gICAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHsgcG9zaXRpb24gfSksXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuIl0sIm5hbWVzIjpbInByb2Nlc3MiLCJJTkdFU1RJT05fVVJMIiwiZW52IiwiTkVYVF9QVUJMSUNfSU5HRVNUSU9OX1VSTCIsIkdFTkVSQVRJT05fVVJMIiwiTkVYVF9QVUJMSUNfR0VORVJBVElPTl9VUkwiLCJDVVJSSUNVTFVNX1VSTCIsIk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMIiwiUFJPR1JFU1NfVVJMIiwiTkVYVF9QVUJMSUNfUFJPR1JFU1NfVVJMIiwiaGFuZGxlUmVzcG9uc2UiLCJyZXMiLCJvayIsInRleHQiLCJjYXRjaCIsInN0YXR1c1RleHQiLCJFcnJvciIsInN0YXR1cyIsImpzb24iLCJwb3N0SW5nZXN0IiwicGF5bG9hZCIsImZldGNoIiwibWV0aG9kIiwiaGVhZGVycyIsImJvZHkiLCJKU09OIiwic3RyaW5naWZ5IiwiZ2V0SW5nZXN0aW9uU3RhdHVzIiwiam9iSWQiLCJlbmNvZGVVUklDb21wb25lbnQiLCJwb3N0R2VuZXJhdGVBbGwiLCJ0aGVtZUlkIiwiZGF0YSIsInF1ZXVlZCIsInRvdGFsSXRlbXMiLCJwb3N0Q29tcGxldGUiLCJnZXRMZWFkZXJib2FyZCIsImdldEZlZWQiLCJwb3N0Q3VycmljdWx1bUNvbmZpcm0iLCJ2ZXJzaW9uSWQiLCJwYXRjaEN1cnJpY3VsdW1XZWVrT3JkZXIiLCJ3ZWVrSWQiLCJwb3NpdGlvbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/lib/services.ts\n")); + +/***/ }) + +}); \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/app/app/library/[topicId]/page.a7ccb1bd8466330b.hot-update.js b/app/frontend/.next/static/webpack/app/app/library/[topicId]/page.a7ccb1bd8466330b.hot-update.js new file mode 100644 index 0000000..18bc1d3 --- /dev/null +++ b/app/frontend/.next/static/webpack/app/app/library/[topicId]/page.a7ccb1bd8466330b.hot-update.js @@ -0,0 +1,22 @@ +"use strict"; +/* + * ATTENTION: An "eval-source-map" devtool has been used. + * This devtool is neither made for production nor for readable output files. + * It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools. + * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) + * or disable the default devtool with "devtool: false". + * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). + */ +self["webpackHotUpdate_N_E"]("app/app/library/[topicId]/page",{ + +/***/ "(app-pages-browser)/./src/lib/services.ts": +/*!*****************************!*\ + !*** ./src/lib/services.ts ***! + \*****************************/ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFeed: function() { return /* binding */ getFeed; },\n/* harmony export */ getIngestionStatus: function() { return /* binding */ getIngestionStatus; },\n/* harmony export */ getLeaderboard: function() { return /* binding */ getLeaderboard; },\n/* harmony export */ patchCurriculumWeekOrder: function() { return /* binding */ patchCurriculumWeekOrder; },\n/* harmony export */ postComplete: function() { return /* binding */ postComplete; },\n/* harmony export */ postCurriculumConfirm: function() { return /* binding */ postCurriculumConfirm; },\n/* harmony export */ postGenerateAll: function() { return /* binding */ postGenerateAll; },\n/* harmony export */ postIngest: function() { return /* binding */ postIngest; }\n/* harmony export */ });\nvar _process_env_NEXT_PUBLIC_INGESTION_URL;\nconst INGESTION_URL = (_process_env_NEXT_PUBLIC_INGESTION_URL = \"http://localhost:3001\") !== null && _process_env_NEXT_PUBLIC_INGESTION_URL !== void 0 ? _process_env_NEXT_PUBLIC_INGESTION_URL : \"http://localhost:3001\";\nvar _process_env_NEXT_PUBLIC_GENERATION_URL;\nconst GENERATION_URL = (_process_env_NEXT_PUBLIC_GENERATION_URL = \"http://localhost:3002\") !== null && _process_env_NEXT_PUBLIC_GENERATION_URL !== void 0 ? _process_env_NEXT_PUBLIC_GENERATION_URL : \"http://localhost:3002\";\nvar _process_env_NEXT_PUBLIC_CURRICULUM_URL;\nconst CURRICULUM_URL = (_process_env_NEXT_PUBLIC_CURRICULUM_URL = \"http://localhost:3003\") !== null && _process_env_NEXT_PUBLIC_CURRICULUM_URL !== void 0 ? _process_env_NEXT_PUBLIC_CURRICULUM_URL : \"http://localhost:3003\";\nvar _process_env_NEXT_PUBLIC_PROGRESS_URL;\nconst PROGRESS_URL = (_process_env_NEXT_PUBLIC_PROGRESS_URL = \"http://localhost:3005\") !== null && _process_env_NEXT_PUBLIC_PROGRESS_URL !== void 0 ? _process_env_NEXT_PUBLIC_PROGRESS_URL : \"http://localhost:3005\";\nasync function handleResponse(res) {\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n return res.json();\n}\nasync function postIngest(payload) {\n const res = await fetch(\"\".concat(INGESTION_URL, \"/ingest\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getIngestionStatus(jobId) {\n const res = await fetch(\"\".concat(INGESTION_URL, \"/ingest/status/\").concat(encodeURIComponent(jobId)));\n return handleResponse(res);\n}\nasync function postGenerateAll(themeId) {\n const res = await fetch(\"\".concat(GENERATION_URL, \"/generate\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n themeId\n })\n });\n const data = await handleResponse(res);\n return {\n queued: data.totalItems\n };\n}\nasync function postComplete(payload) {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/complete\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getLeaderboard() {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/leaderboard\"));\n return handleResponse(res);\n}\nasync function getFeed() {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/feed\"));\n return handleResponse(res);\n}\nasync function postCurriculumConfirm(versionId) {\n const res = await fetch(\"\".concat(CURRICULUM_URL, \"/curriculum/versions/\").concat(encodeURIComponent(versionId), \"/confirm\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n}\nasync function patchCurriculumWeekOrder(weekId, position) {\n const res = await fetch(\"\".concat(CURRICULUM_URL, \"/curriculum/weeks/\").concat(encodeURIComponent(weekId), \"/order\"), {\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n position\n })\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n}\n\n\n;\n // Wrapped in an IIFE to avoid polluting the global scope\n ;\n (function () {\n var _a, _b;\n // Legacy CSS implementations will `eval` browser code in a Node.js context\n // to extract CSS. For backwards compatibility, we need to check we're in a\n // browser context before continuing.\n if (typeof self !== 'undefined' &&\n // AMP / No-JS mode does not inject these helpers:\n '$RefreshHelpers$' in self) {\n // @ts-ignore __webpack_module__ is global\n var currentExports = module.exports;\n // @ts-ignore __webpack_module__ is global\n var prevSignature = (_b = (_a = module.hot.data) === null || _a === void 0 ? void 0 : _a.prevSignature) !== null && _b !== void 0 ? _b : null;\n // This cannot happen in MainTemplate because the exports mismatch between\n // templating and execution.\n self.$RefreshHelpers$.registerExportsForReactRefresh(currentExports, module.id);\n // A module can be accepted automatically based on its exports, e.g. when\n // it is a Refresh Boundary.\n if (self.$RefreshHelpers$.isReactRefreshBoundary(currentExports)) {\n // Save the previous exports signature on update so we can compare the boundary\n // signatures. We avoid saving exports themselves since it causes memory leaks (https://github.com/vercel/next.js/pull/53797)\n module.hot.dispose(function (data) {\n data.prevSignature =\n self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports);\n });\n // Unconditionally accept an update to this module, we'll check if it's\n // still a Refresh Boundary later.\n // @ts-ignore importMeta is replaced in the loader\n module.hot.accept();\n // This field is set when the previous version of this module was a\n // Refresh Boundary, letting us know we need to check for invalidation or\n // enqueue an update.\n if (prevSignature !== null) {\n // A boundary can become ineligible if its exports are incompatible\n // with the previous exports.\n //\n // For example, if you add/remove/change exports, we'll want to\n // re-execute the importing modules, and force those components to\n // re-render. Similarly, if you convert a class component to a\n // function, we want to invalidate the boundary.\n if (self.$RefreshHelpers$.shouldInvalidateReactRefreshBoundary(prevSignature, self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports))) {\n module.hot.invalidate();\n }\n else {\n self.$RefreshHelpers$.scheduleUpdate();\n }\n }\n }\n else {\n // Since we just executed the code for the module, it's possible that the\n // new exports made it ineligible for being a boundary.\n // We only care about the case when we were _previously_ a boundary,\n // because we already accepted this update (accidental side effect).\n var isNoLongerABoundary = prevSignature !== null;\n if (isNoLongerABoundary) {\n module.hot.invalidate();\n }\n }\n }\n })();\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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QXlCQyxNQUFjLEVBQUVDLFFBQWdCO0lBQzdFLE1BQU0vQixNQUFNLE1BQU1VLE1BQ2hCLEdBQXNDUSxPQUFuQ3ZCLGdCQUFlLHNCQUErQyxPQUEzQnVCLG1CQUFtQlksU0FBUSxXQUNqRTtRQUNFbkIsUUFBUTtRQUNSQyxTQUFTO1lBQUUsZ0JBQWdCO1FBQW1CO1FBQzlDQyxNQUFNQyxLQUFLQyxTQUFTLENBQUM7WUFBRWdCO1FBQVM7SUFDbEM7SUFFRixJQUFJLENBQUMvQixJQUFJQyxFQUFFLEVBQUU7UUFDWCxNQUFNQyxPQUFPLE1BQU1GLElBQUlFLElBQUksR0FBR0MsS0FBSyxDQUFDLElBQU1ILElBQUlJLFVBQVU7UUFDeEQsTUFBTSxJQUFJQyxNQUFNLFFBQXVCSCxPQUFmRixJQUFJTSxNQUFNLEVBQUMsTUFBUyxPQUFMSjtJQUN6QztBQUNGIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL3NyYy9saWIvc2VydmljZXMudHM/MDcwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIEluZ2VzdGlvbkpvYlN0YXR1cyxcbiAgQ29tcGxldGVQYXlsb2FkLFxuICBDb21wbGV0ZVJlc3BvbnNlLFxuICBMZWFkZXJib2FyZEVudHJ5LFxuICBGZWVkRW50cnksXG59IGZyb20gJ0AvdHlwZXMnXG5cbmNvbnN0IElOR0VTVElPTl9VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19JTkdFU1RJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDEnXG5jb25zdCBHRU5FUkFUSU9OX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0dFTkVSQVRJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDInXG5jb25zdCBDVVJSSUNVTFVNX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDMnXG5jb25zdCBQUk9HUkVTU19VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19QUk9HUkVTU19VUkwgPz8gJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwNSdcblxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlUmVzcG9uc2U8VD4ocmVzOiBSZXNwb25zZSk6IFByb21pc2U8VD4ge1xuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxuICByZXR1cm4gcmVzLmpzb24oKSBhcyBQcm9taXNlPFQ+XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0SW5nZXN0KHBheWxvYWQ6IHtcbiAgZG9jdW1lbnRJZDogc3RyaW5nXG4gIGZpbGVuYW1lOiBzdHJpbmdcbiAgZm9ybWF0OiAncGRmJyB8ICdtZCcgfCAndHh0J1xuICBmaWxlVXJsOiBzdHJpbmdcbn0pOiBQcm9taXNlPHsgam9iSWQ6IHN0cmluZyB9PiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdGAsIHtcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICBib2R5OiBKU09OLnN0cmluZ2lmeShwYXlsb2FkKSxcbiAgfSlcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPHsgam9iSWQ6IHN0cmluZyB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRJbmdlc3Rpb25TdGF0dXMoam9iSWQ6IHN0cmluZyk6IFByb21pc2U8SW5nZXN0aW9uSm9iU3RhdHVzPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdC9zdGF0dXMvJHtlbmNvZGVVUklDb21wb25lbnQoam9iSWQpfWApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxJbmdlc3Rpb25Kb2JTdGF0dXM+KHJlcylcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHBvc3RHZW5lcmF0ZUFsbCh0aGVtZUlkOiBzdHJpbmcpOiBQcm9taXNlPHsgcXVldWVkOiBudW1iZXIgfT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtHRU5FUkFUSU9OX1VSTH0vZ2VuZXJhdGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkoeyB0aGVtZUlkIH0pLFxuICB9KVxuICBjb25zdCBkYXRhID0gYXdhaXQgaGFuZGxlUmVzcG9uc2U8eyBqb2JJZDogc3RyaW5nOyB0b3RhbEl0ZW1zOiBudW1iZXIgfT4ocmVzKVxuICByZXR1cm4geyBxdWV1ZWQ6IGRhdGEudG90YWxJdGVtcyB9XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0Q29tcGxldGUocGF5bG9hZDogQ29tcGxldGVQYXlsb2FkKTogUHJvbWlzZTxDb21wbGV0ZVJlc3BvbnNlPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vY29tcGxldGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkocGF5bG9hZCksXG4gIH0pXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxDb21wbGV0ZVJlc3BvbnNlPihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRMZWFkZXJib2FyZCgpOiBQcm9taXNlPExlYWRlcmJvYXJkRW50cnlbXT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtQUk9HUkVTU19VUkx9L2xlYWRlcmJvYXJkYClcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPExlYWRlcmJvYXJkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0RmVlZCgpOiBQcm9taXNlPEZlZWRFbnRyeVtdPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vZmVlZGApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxGZWVkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcG9zdEN1cnJpY3VsdW1Db25maXJtKHZlcnNpb25JZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3ZlcnNpb25zLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHZlcnNpb25JZCl9L2NvbmZpcm1gLFxuICAgIHtcbiAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyKHdlZWtJZDogc3RyaW5nLCBwb3NpdGlvbjogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3dlZWtzLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHdlZWtJZCl9L29yZGVyYCxcbiAgICB7XG4gICAgICBtZXRob2Q6ICdQQVRDSCcsXG4gICAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHsgcG9zaXRpb24gfSksXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuIl0sIm5hbWVzIjpbInByb2Nlc3MiLCJJTkdFU1RJT05fVVJMIiwiZW52IiwiTkVYVF9QVUJMSUNfSU5HRVNUSU9OX1VSTCIsIkdFTkVSQVRJT05fVVJMIiwiTkVYVF9QVUJMSUNfR0VORVJBVElPTl9VUkwiLCJDVVJSSUNVTFVNX1VSTCIsIk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMIiwiUFJPR1JFU1NfVVJMIiwiTkVYVF9QVUJMSUNfUFJPR1JFU1NfVVJMIiwiaGFuZGxlUmVzcG9uc2UiLCJyZXMiLCJvayIsInRleHQiLCJjYXRjaCIsInN0YXR1c1RleHQiLCJFcnJvciIsInN0YXR1cyIsImpzb24iLCJwb3N0SW5nZXN0IiwicGF5bG9hZCIsImZldGNoIiwibWV0aG9kIiwiaGVhZGVycyIsImJvZHkiLCJKU09OIiwic3RyaW5naWZ5IiwiZ2V0SW5nZXN0aW9uU3RhdHVzIiwiam9iSWQiLCJlbmNvZGVVUklDb21wb25lbnQiLCJwb3N0R2VuZXJhdGVBbGwiLCJ0aGVtZUlkIiwiZGF0YSIsInF1ZXVlZCIsInRvdGFsSXRlbXMiLCJwb3N0Q29tcGxldGUiLCJnZXRMZWFkZXJib2FyZCIsImdldEZlZWQiLCJwb3N0Q3VycmljdWx1bUNvbmZpcm0iLCJ2ZXJzaW9uSWQiLCJwYXRjaEN1cnJpY3VsdW1XZWVrT3JkZXIiLCJ3ZWVrSWQiLCJwb3NpdGlvbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/lib/services.ts\n")); + +/***/ }) + +}); \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/app/app/profile/page.a7ccb1bd8466330b.hot-update.js b/app/frontend/.next/static/webpack/app/app/profile/page.a7ccb1bd8466330b.hot-update.js new file mode 100644 index 0000000..ac82ce0 --- /dev/null +++ b/app/frontend/.next/static/webpack/app/app/profile/page.a7ccb1bd8466330b.hot-update.js @@ -0,0 +1,22 @@ +"use strict"; +/* + * ATTENTION: An "eval-source-map" devtool has been used. + * This devtool is neither made for production nor for readable output files. + * It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools. + * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) + * or disable the default devtool with "devtool: false". + * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). + */ +self["webpackHotUpdate_N_E"]("app/app/profile/page",{ + +/***/ "(app-pages-browser)/./src/lib/services.ts": +/*!*****************************!*\ + !*** ./src/lib/services.ts ***! + \*****************************/ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFeed: function() { return /* binding */ getFeed; },\n/* harmony export */ getIngestionStatus: function() { return /* binding */ getIngestionStatus; },\n/* harmony export */ getLeaderboard: function() { return /* binding */ getLeaderboard; },\n/* harmony export */ patchCurriculumWeekOrder: function() { return /* binding */ patchCurriculumWeekOrder; },\n/* harmony export */ postComplete: function() { return /* binding */ postComplete; },\n/* harmony export */ postCurriculumConfirm: function() { return /* binding */ postCurriculumConfirm; },\n/* harmony export */ postGenerateAll: function() { return /* binding */ postGenerateAll; },\n/* harmony export */ postIngest: function() { return /* binding */ postIngest; }\n/* harmony export */ });\nvar _process_env_NEXT_PUBLIC_INGESTION_URL;\nconst INGESTION_URL = (_process_env_NEXT_PUBLIC_INGESTION_URL = \"http://localhost:3001\") !== null && _process_env_NEXT_PUBLIC_INGESTION_URL !== void 0 ? _process_env_NEXT_PUBLIC_INGESTION_URL : \"http://localhost:3001\";\nvar _process_env_NEXT_PUBLIC_GENERATION_URL;\nconst GENERATION_URL = (_process_env_NEXT_PUBLIC_GENERATION_URL = \"http://localhost:3002\") !== null && _process_env_NEXT_PUBLIC_GENERATION_URL !== void 0 ? _process_env_NEXT_PUBLIC_GENERATION_URL : \"http://localhost:3002\";\nvar _process_env_NEXT_PUBLIC_CURRICULUM_URL;\nconst CURRICULUM_URL = (_process_env_NEXT_PUBLIC_CURRICULUM_URL = \"http://localhost:3003\") !== null && _process_env_NEXT_PUBLIC_CURRICULUM_URL !== void 0 ? _process_env_NEXT_PUBLIC_CURRICULUM_URL : \"http://localhost:3003\";\nvar _process_env_NEXT_PUBLIC_PROGRESS_URL;\nconst PROGRESS_URL = (_process_env_NEXT_PUBLIC_PROGRESS_URL = \"http://localhost:3005\") !== null && _process_env_NEXT_PUBLIC_PROGRESS_URL !== void 0 ? _process_env_NEXT_PUBLIC_PROGRESS_URL : \"http://localhost:3005\";\nasync function handleResponse(res) {\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n return res.json();\n}\nasync function postIngest(payload) {\n const res = await fetch(\"\".concat(INGESTION_URL, \"/ingest\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getIngestionStatus(jobId) {\n const res = await fetch(\"\".concat(INGESTION_URL, \"/ingest/status/\").concat(encodeURIComponent(jobId)));\n return handleResponse(res);\n}\nasync function postGenerateAll(themeId) {\n const res = await fetch(\"\".concat(GENERATION_URL, \"/generate\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n themeId\n })\n });\n const data = await handleResponse(res);\n return {\n queued: data.totalItems\n };\n}\nasync function postComplete(payload) {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/complete\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getLeaderboard() {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/leaderboard\"));\n return handleResponse(res);\n}\nasync function getFeed() {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/feed\"));\n return handleResponse(res);\n}\nasync function postCurriculumConfirm(versionId) {\n const res = await fetch(\"\".concat(CURRICULUM_URL, \"/curriculum/versions/\").concat(encodeURIComponent(versionId), \"/confirm\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n}\nasync function patchCurriculumWeekOrder(weekId, position) {\n const res = await fetch(\"\".concat(CURRICULUM_URL, \"/curriculum/weeks/\").concat(encodeURIComponent(weekId), \"/order\"), {\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n position\n })\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n}\n\n\n;\n // Wrapped in an IIFE to avoid polluting the global scope\n ;\n (function () {\n var _a, _b;\n // Legacy CSS implementations will `eval` browser code in a Node.js context\n // to extract CSS. For backwards compatibility, we need to check we're in a\n // browser context before continuing.\n if (typeof self !== 'undefined' &&\n // AMP / No-JS mode does not inject these helpers:\n '$RefreshHelpers$' in self) {\n // @ts-ignore __webpack_module__ is global\n var currentExports = module.exports;\n // @ts-ignore __webpack_module__ is global\n var prevSignature = (_b = (_a = module.hot.data) === null || _a === void 0 ? void 0 : _a.prevSignature) !== null && _b !== void 0 ? _b : null;\n // This cannot happen in MainTemplate because the exports mismatch between\n // templating and execution.\n self.$RefreshHelpers$.registerExportsForReactRefresh(currentExports, module.id);\n // A module can be accepted automatically based on its exports, e.g. when\n // it is a Refresh Boundary.\n if (self.$RefreshHelpers$.isReactRefreshBoundary(currentExports)) {\n // Save the previous exports signature on update so we can compare the boundary\n // signatures. We avoid saving exports themselves since it causes memory leaks (https://github.com/vercel/next.js/pull/53797)\n module.hot.dispose(function (data) {\n data.prevSignature =\n self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports);\n });\n // Unconditionally accept an update to this module, we'll check if it's\n // still a Refresh Boundary later.\n // @ts-ignore importMeta is replaced in the loader\n module.hot.accept();\n // This field is set when the previous version of this module was a\n // Refresh Boundary, letting us know we need to check for invalidation or\n // enqueue an update.\n if (prevSignature !== null) {\n // A boundary can become ineligible if its exports are incompatible\n // with the previous exports.\n //\n // For example, if you add/remove/change exports, we'll want to\n // re-execute the importing modules, and force those components to\n // re-render. Similarly, if you convert a class component to a\n // function, we want to invalidate the boundary.\n if (self.$RefreshHelpers$.shouldInvalidateReactRefreshBoundary(prevSignature, self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports))) {\n module.hot.invalidate();\n }\n else {\n self.$RefreshHelpers$.scheduleUpdate();\n }\n }\n }\n else {\n // Since we just executed the code for the module, it's possible that the\n // new exports made it ineligible for being a boundary.\n // We only care about the case when we were _previously_ a boundary,\n // because we already accepted this update (accidental side effect).\n var isNoLongerABoundary = prevSignature !== null;\n if (isNoLongerABoundary) {\n module.hot.invalidate();\n }\n }\n }\n })();\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL3NyYy9saWIvc2VydmljZXMudHMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7SUFRc0JBO0FBQXRCLE1BQU1DLGdCQUFnQkQsQ0FBQUEseUNBQUFBLHVCQUFxQyxjQUFyQ0Esb0RBQUFBLHlDQUF5QztJQUN4Q0E7QUFBdkIsTUFBTUksaUJBQWlCSixDQUFBQSwwQ0FBQUEsdUJBQXNDLGNBQXRDQSxxREFBQUEsMENBQTBDO0lBQzFDQTtBQUF2QixNQUFNTSxpQkFBaUJOLENBQUFBLDBDQUFBQSx1QkFBc0MsY0FBdENBLHFEQUFBQSwwQ0FBMEM7SUFDNUNBO0FBQXJCLE1BQU1RLGVBQWVSLENBQUFBLHdDQUFBQSx1QkFBb0MsY0FBcENBLG1EQUFBQSx3Q0FBd0M7QUFFN0QsZUFBZVUsZUFBa0JDLEdBQWE7SUFDNUMsSUFBSSxDQUFDQSxJQUFJQyxFQUFFLEVBQUU7UUFDWCxNQUFNQyxPQUFPLE1BQU1GLElBQUlFLElBQUksR0FBR0MsS0FBSyxDQUFDLElBQU1ILElBQUlJLFVBQVU7UUFDeEQsTUFBTSxJQUFJQyxNQUFNLFFBQXVCSCxPQUFmRixJQUFJTSxNQUFNLEVBQUMsTUFBUyxPQUFMSjtJQUN6QztJQUNBLE9BQU9GLElBQUlPLElBQUk7QUFDakI7QUFFTyxlQUFlQyxXQUFXQyxPQUtoQztJQUNDLE1BQU1ULE1BQU0sTUFBTVUsTUFBTSxHQUFpQixPQUFkcEIsZUFBYyxZQUFVO1FBQ2pEcUIsUUFBUTtRQUNSQyxTQUFTO1lBQUUsZ0JBQWdCO1FBQW1CO1FBQzlDQyxNQUFNQyxLQUFLQyxTQUFTLENBQUNOO0lBQ3ZCO0lBQ0EsT0FBT1YsZUFBa0NDO0FBQzNDO0FBRU8sZUFBZWdCLG1CQUFtQkMsS0FBYTtJQUNwRCxNQUFNakIsTUFBTSxNQUFNVSxNQUFNLEdBQWtDUSxPQUEvQjVCLGVBQWMsbUJBQTJDLE9BQTFCNEIsbUJBQW1CRDtJQUM3RSxPQUFPbEIsZUFBbUNDO0FBQzVDO0FBRU8sZUFBZW1CLGdCQUFnQkMsT0FBZTtJQUNuRCxNQUFNcEIsTUFBTSxNQUFNVSxNQUFNLEdBQWtCLE9BQWZqQixnQkFBZSxjQUFZO1FBQ3BEa0IsUUFBUTtRQUNSQyxTQUFTO1lBQUUsZ0JBQWdCO1FBQW1CO1FBQzlDQyxNQUFNQyxLQUFLQyxTQUFTLENBQUM7WUFBRUs7UUFBUTtJQUNqQztJQUNBLE1BQU1DLE9BQU8sTUFBTXRCLGVBQXNEQztJQUN6RSxPQUFPO1FBQUVzQixRQUFRRCxLQUFLRSxVQUFVO0lBQUM7QUFDbkM7QUFFTyxlQUFlQyxhQUFhZixPQUF3QjtJQUN6RCxNQUFNVCxNQUFNLE1BQU1VLE1BQU0sR0FBZ0IsT0FBYmIsY0FBYSxjQUFZO1FBQ2xEYyxRQUFRO1FBQ1JDLFNBQVM7WUFBRSxnQkFBZ0I7UUFBbUI7UUFDOUNDLE1BQU1DLEtBQUtDLFNBQVMsQ0FBQ047SUFDdkI7SUFDQSxPQUFPVixlQUFpQ0M7QUFDMUM7QUFFTyxlQUFleUI7SUFDcEIsTUFBTXpCLE1BQU0sTUFBTVUsTUFBTSxHQUFnQixPQUFiYixjQUFhO0lBQ3hDLE9BQU9FLGVBQW1DQztBQUM1QztBQUVPLGVBQWUwQjtJQUNwQixNQUFNMUIsTUFBTSxNQUFNVSxNQUFNLEdBQWdCLE9BQWJiLGNBQWE7SUFDeEMsT0FBT0UsZUFBNEJDO0FBQ3JDO0FBRU8sZUFBZTJCLHNCQUFzQkMsU0FBaUI7SUFDM0QsTUFBTTVCLE1BQU0sTUFBTVUsTUFDaEIsR0FBeUNRLE9BQXRDdkIsZ0JBQWUseUJBQXFELE9BQTlCdUIsbUJBQW1CVSxZQUFXLGFBQ3ZFO1FBQ0VqQixRQUFRO1FBQ1JDLFNBQVM7WUFBRSxnQkFBZ0I7UUFBbUI7SUFDaEQ7SUFFRixJQUFJLENBQUNaLElBQUlDLEVBQUUsRUFBRTtRQUNYLE1BQU1DLE9BQU8sTUFBTUYsSUFBSUUsSUFBSSxHQUFHQyxLQUFLLENBQUMsSUFBTUgsSUFBSUksVUFBVTtRQUN4RCxNQUFNLElBQUlDLE1BQU0sUUFBdUJILE9BQWZGLElBQUlNLE1BQU0sRUFBQyxNQUFTLE9BQUxKO0lBQ3pDO0FBQ0Y7QUFFTyxlQUFlMkIseUJBQXlCQyxNQUFjLEVBQUVDLFFBQWdCO0lBQzdFLE1BQU0vQixNQUFNLE1BQU1VLE1BQ2hCLEdBQXNDUSxPQUFuQ3ZCLGdCQUFlLHNCQUErQyxPQUEzQnVCLG1CQUFtQlksU0FBUSxXQUNqRTtRQUNFbkIsUUFBUTtRQUNSQyxTQUFTO1lBQUUsZ0JBQWdCO1FBQW1CO1FBQzlDQyxNQUFNQyxLQUFLQyxTQUFTLENBQUM7WUFBRWdCO1FBQVM7SUFDbEM7SUFFRixJQUFJLENBQUMvQixJQUFJQyxFQUFFLEVBQUU7UUFDWCxNQUFNQyxPQUFPLE1BQU1GLElBQUlFLElBQUksR0FBR0MsS0FBSyxDQUFDLElBQU1ILElBQUlJLFVBQVU7UUFDeEQsTUFBTSxJQUFJQyxNQUFNLFFBQXVCSCxPQUFmRixJQUFJTSxNQUFNLEVBQUMsTUFBUyxPQUFMSjtJQUN6QztBQUNGIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL3NyYy9saWIvc2VydmljZXMudHM/MDcwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIEluZ2VzdGlvbkpvYlN0YXR1cyxcbiAgQ29tcGxldGVQYXlsb2FkLFxuICBDb21wbGV0ZVJlc3BvbnNlLFxuICBMZWFkZXJib2FyZEVudHJ5LFxuICBGZWVkRW50cnksXG59IGZyb20gJ0AvdHlwZXMnXG5cbmNvbnN0IElOR0VTVElPTl9VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19JTkdFU1RJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDEnXG5jb25zdCBHRU5FUkFUSU9OX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0dFTkVSQVRJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDInXG5jb25zdCBDVVJSSUNVTFVNX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDMnXG5jb25zdCBQUk9HUkVTU19VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19QUk9HUkVTU19VUkwgPz8gJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwNSdcblxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlUmVzcG9uc2U8VD4ocmVzOiBSZXNwb25zZSk6IFByb21pc2U8VD4ge1xuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxuICByZXR1cm4gcmVzLmpzb24oKSBhcyBQcm9taXNlPFQ+XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0SW5nZXN0KHBheWxvYWQ6IHtcbiAgZG9jdW1lbnRJZDogc3RyaW5nXG4gIGZpbGVuYW1lOiBzdHJpbmdcbiAgZm9ybWF0OiAncGRmJyB8ICdtZCcgfCAndHh0J1xuICBmaWxlVXJsOiBzdHJpbmdcbn0pOiBQcm9taXNlPHsgam9iSWQ6IHN0cmluZyB9PiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdGAsIHtcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICBib2R5OiBKU09OLnN0cmluZ2lmeShwYXlsb2FkKSxcbiAgfSlcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPHsgam9iSWQ6IHN0cmluZyB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRJbmdlc3Rpb25TdGF0dXMoam9iSWQ6IHN0cmluZyk6IFByb21pc2U8SW5nZXN0aW9uSm9iU3RhdHVzPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdC9zdGF0dXMvJHtlbmNvZGVVUklDb21wb25lbnQoam9iSWQpfWApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxJbmdlc3Rpb25Kb2JTdGF0dXM+KHJlcylcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHBvc3RHZW5lcmF0ZUFsbCh0aGVtZUlkOiBzdHJpbmcpOiBQcm9taXNlPHsgcXVldWVkOiBudW1iZXIgfT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtHRU5FUkFUSU9OX1VSTH0vZ2VuZXJhdGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkoeyB0aGVtZUlkIH0pLFxuICB9KVxuICBjb25zdCBkYXRhID0gYXdhaXQgaGFuZGxlUmVzcG9uc2U8eyBqb2JJZDogc3RyaW5nOyB0b3RhbEl0ZW1zOiBudW1iZXIgfT4ocmVzKVxuICByZXR1cm4geyBxdWV1ZWQ6IGRhdGEudG90YWxJdGVtcyB9XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0Q29tcGxldGUocGF5bG9hZDogQ29tcGxldGVQYXlsb2FkKTogUHJvbWlzZTxDb21wbGV0ZVJlc3BvbnNlPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vY29tcGxldGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkocGF5bG9hZCksXG4gIH0pXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxDb21wbGV0ZVJlc3BvbnNlPihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRMZWFkZXJib2FyZCgpOiBQcm9taXNlPExlYWRlcmJvYXJkRW50cnlbXT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtQUk9HUkVTU19VUkx9L2xlYWRlcmJvYXJkYClcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPExlYWRlcmJvYXJkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0RmVlZCgpOiBQcm9taXNlPEZlZWRFbnRyeVtdPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vZmVlZGApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxGZWVkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcG9zdEN1cnJpY3VsdW1Db25maXJtKHZlcnNpb25JZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3ZlcnNpb25zLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHZlcnNpb25JZCl9L2NvbmZpcm1gLFxuICAgIHtcbiAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyKHdlZWtJZDogc3RyaW5nLCBwb3NpdGlvbjogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3dlZWtzLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHdlZWtJZCl9L29yZGVyYCxcbiAgICB7XG4gICAgICBtZXRob2Q6ICdQQVRDSCcsXG4gICAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHsgcG9zaXRpb24gfSksXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuIl0sIm5hbWVzIjpbInByb2Nlc3MiLCJJTkdFU1RJT05fVVJMIiwiZW52IiwiTkVYVF9QVUJMSUNfSU5HRVNUSU9OX1VSTCIsIkdFTkVSQVRJT05fVVJMIiwiTkVYVF9QVUJMSUNfR0VORVJBVElPTl9VUkwiLCJDVVJSSUNVTFVNX1VSTCIsIk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMIiwiUFJPR1JFU1NfVVJMIiwiTkVYVF9QVUJMSUNfUFJPR1JFU1NfVVJMIiwiaGFuZGxlUmVzcG9uc2UiLCJyZXMiLCJvayIsInRleHQiLCJjYXRjaCIsInN0YXR1c1RleHQiLCJFcnJvciIsInN0YXR1cyIsImpzb24iLCJwb3N0SW5nZXN0IiwicGF5bG9hZCIsImZldGNoIiwibWV0aG9kIiwiaGVhZGVycyIsImJvZHkiLCJKU09OIiwic3RyaW5naWZ5IiwiZ2V0SW5nZXN0aW9uU3RhdHVzIiwiam9iSWQiLCJlbmNvZGVVUklDb21wb25lbnQiLCJwb3N0R2VuZXJhdGVBbGwiLCJ0aGVtZUlkIiwiZGF0YSIsInF1ZXVlZCIsInRvdGFsSXRlbXMiLCJwb3N0Q29tcGxldGUiLCJnZXRMZWFkZXJib2FyZCIsImdldEZlZWQiLCJwb3N0Q3VycmljdWx1bUNvbmZpcm0iLCJ2ZXJzaW9uSWQiLCJwYXRjaEN1cnJpY3VsdW1XZWVrT3JkZXIiLCJ3ZWVrSWQiLCJwb3NpdGlvbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/lib/services.ts\n")); + +/***/ }) + +}); \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/app/app/session/page.a7ccb1bd8466330b.hot-update.js b/app/frontend/.next/static/webpack/app/app/session/page.a7ccb1bd8466330b.hot-update.js new file mode 100644 index 0000000..4382644 --- /dev/null +++ b/app/frontend/.next/static/webpack/app/app/session/page.a7ccb1bd8466330b.hot-update.js @@ -0,0 +1,22 @@ +"use strict"; +/* + * ATTENTION: An "eval-source-map" devtool has been used. + * This devtool is neither made for production nor for readable output files. + * It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools. + * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) + * or disable the default devtool with "devtool: false". + * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). + */ +self["webpackHotUpdate_N_E"]("app/app/session/page",{ + +/***/ "(app-pages-browser)/./src/lib/services.ts": +/*!*****************************!*\ + !*** ./src/lib/services.ts ***! + \*****************************/ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFeed: function() { return /* binding */ getFeed; },\n/* harmony export */ getIngestionStatus: function() { return /* binding */ getIngestionStatus; },\n/* harmony export */ getLeaderboard: function() { return /* binding */ getLeaderboard; },\n/* harmony export */ patchCurriculumWeekOrder: function() { return /* binding */ patchCurriculumWeekOrder; },\n/* harmony export */ postComplete: function() { return /* binding */ postComplete; },\n/* harmony export */ postCurriculumConfirm: function() { return /* binding */ postCurriculumConfirm; },\n/* harmony export */ postGenerateAll: function() { return /* binding */ postGenerateAll; },\n/* harmony export */ postIngest: function() { return /* binding */ postIngest; }\n/* harmony export */ });\nvar _process_env_NEXT_PUBLIC_INGESTION_URL;\nconst INGESTION_URL = (_process_env_NEXT_PUBLIC_INGESTION_URL = \"http://localhost:3001\") !== null && _process_env_NEXT_PUBLIC_INGESTION_URL !== void 0 ? _process_env_NEXT_PUBLIC_INGESTION_URL : \"http://localhost:3001\";\nvar _process_env_NEXT_PUBLIC_GENERATION_URL;\nconst GENERATION_URL = (_process_env_NEXT_PUBLIC_GENERATION_URL = \"http://localhost:3002\") !== null && _process_env_NEXT_PUBLIC_GENERATION_URL !== void 0 ? _process_env_NEXT_PUBLIC_GENERATION_URL : \"http://localhost:3002\";\nvar _process_env_NEXT_PUBLIC_CURRICULUM_URL;\nconst CURRICULUM_URL = (_process_env_NEXT_PUBLIC_CURRICULUM_URL = \"http://localhost:3003\") !== null && _process_env_NEXT_PUBLIC_CURRICULUM_URL !== void 0 ? _process_env_NEXT_PUBLIC_CURRICULUM_URL : \"http://localhost:3003\";\nvar _process_env_NEXT_PUBLIC_PROGRESS_URL;\nconst PROGRESS_URL = (_process_env_NEXT_PUBLIC_PROGRESS_URL = \"http://localhost:3005\") !== null && _process_env_NEXT_PUBLIC_PROGRESS_URL !== void 0 ? _process_env_NEXT_PUBLIC_PROGRESS_URL : \"http://localhost:3005\";\nasync function handleResponse(res) {\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n return res.json();\n}\nasync function postIngest(payload) {\n const res = await fetch(\"\".concat(INGESTION_URL, \"/ingest\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getIngestionStatus(jobId) {\n const res = await fetch(\"\".concat(INGESTION_URL, \"/ingest/status/\").concat(encodeURIComponent(jobId)));\n return handleResponse(res);\n}\nasync function postGenerateAll(themeId) {\n const res = await fetch(\"\".concat(GENERATION_URL, \"/generate\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n themeId\n })\n });\n const data = await handleResponse(res);\n return {\n queued: data.totalItems\n };\n}\nasync function postComplete(payload) {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/complete\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify(payload)\n });\n return handleResponse(res);\n}\nasync function getLeaderboard() {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/leaderboard\"));\n return handleResponse(res);\n}\nasync function getFeed() {\n const res = await fetch(\"\".concat(PROGRESS_URL, \"/feed\"));\n return handleResponse(res);\n}\nasync function postCurriculumConfirm(versionId) {\n const res = await fetch(\"\".concat(CURRICULUM_URL, \"/curriculum/versions/\").concat(encodeURIComponent(versionId), \"/confirm\"), {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n }\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n}\nasync function patchCurriculumWeekOrder(weekId, position) {\n const res = await fetch(\"\".concat(CURRICULUM_URL, \"/curriculum/weeks/\").concat(encodeURIComponent(weekId), \"/order\"), {\n method: \"PATCH\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n position\n })\n });\n if (!res.ok) {\n const text = await res.text().catch(()=>res.statusText);\n throw new Error(\"HTTP \".concat(res.status, \": \").concat(text));\n }\n}\n\n\n;\n // Wrapped in an IIFE to avoid polluting the global scope\n ;\n (function () {\n var _a, _b;\n // Legacy CSS implementations will `eval` browser code in a Node.js context\n // to extract CSS. For backwards compatibility, we need to check we're in a\n // browser context before continuing.\n if (typeof self !== 'undefined' &&\n // AMP / No-JS mode does not inject these helpers:\n '$RefreshHelpers$' in self) {\n // @ts-ignore __webpack_module__ is global\n var currentExports = module.exports;\n // @ts-ignore __webpack_module__ is global\n var prevSignature = (_b = (_a = module.hot.data) === null || _a === void 0 ? void 0 : _a.prevSignature) !== null && _b !== void 0 ? _b : null;\n // This cannot happen in MainTemplate because the exports mismatch between\n // templating and execution.\n self.$RefreshHelpers$.registerExportsForReactRefresh(currentExports, module.id);\n // A module can be accepted automatically based on its exports, e.g. when\n // it is a Refresh Boundary.\n if (self.$RefreshHelpers$.isReactRefreshBoundary(currentExports)) {\n // Save the previous exports signature on update so we can compare the boundary\n // signatures. We avoid saving exports themselves since it causes memory leaks (https://github.com/vercel/next.js/pull/53797)\n module.hot.dispose(function (data) {\n data.prevSignature =\n self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports);\n });\n // Unconditionally accept an update to this module, we'll check if it's\n // still a Refresh Boundary later.\n // @ts-ignore importMeta is replaced in the loader\n module.hot.accept();\n // This field is set when the previous version of this module was a\n // Refresh Boundary, letting us know we need to check for invalidation or\n // enqueue an update.\n if (prevSignature !== null) {\n // A boundary can become ineligible if its exports are incompatible\n // with the previous exports.\n //\n // For example, if you add/remove/change exports, we'll want to\n // re-execute the importing modules, and force those components to\n // re-render. Similarly, if you convert a class component to a\n // function, we want to invalidate the boundary.\n if (self.$RefreshHelpers$.shouldInvalidateReactRefreshBoundary(prevSignature, self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports))) {\n module.hot.invalidate();\n }\n else {\n self.$RefreshHelpers$.scheduleUpdate();\n }\n }\n }\n else {\n // Since we just executed the code for the module, it's possible that the\n // new exports made it ineligible for being a boundary.\n // We only care about the case when we were _previously_ a boundary,\n // because we already accepted this update (accidental side effect).\n var isNoLongerABoundary = prevSignature !== null;\n if (isNoLongerABoundary) {\n module.hot.invalidate();\n }\n }\n }\n })();\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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QXlCQyxNQUFjLEVBQUVDLFFBQWdCO0lBQzdFLE1BQU0vQixNQUFNLE1BQU1VLE1BQ2hCLEdBQXNDUSxPQUFuQ3ZCLGdCQUFlLHNCQUErQyxPQUEzQnVCLG1CQUFtQlksU0FBUSxXQUNqRTtRQUNFbkIsUUFBUTtRQUNSQyxTQUFTO1lBQUUsZ0JBQWdCO1FBQW1CO1FBQzlDQyxNQUFNQyxLQUFLQyxTQUFTLENBQUM7WUFBRWdCO1FBQVM7SUFDbEM7SUFFRixJQUFJLENBQUMvQixJQUFJQyxFQUFFLEVBQUU7UUFDWCxNQUFNQyxPQUFPLE1BQU1GLElBQUlFLElBQUksR0FBR0MsS0FBSyxDQUFDLElBQU1ILElBQUlJLFVBQVU7UUFDeEQsTUFBTSxJQUFJQyxNQUFNLFFBQXVCSCxPQUFmRixJQUFJTSxNQUFNLEVBQUMsTUFBUyxPQUFMSjtJQUN6QztBQUNGIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL3NyYy9saWIvc2VydmljZXMudHM/MDcwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIEluZ2VzdGlvbkpvYlN0YXR1cyxcbiAgQ29tcGxldGVQYXlsb2FkLFxuICBDb21wbGV0ZVJlc3BvbnNlLFxuICBMZWFkZXJib2FyZEVudHJ5LFxuICBGZWVkRW50cnksXG59IGZyb20gJ0AvdHlwZXMnXG5cbmNvbnN0IElOR0VTVElPTl9VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19JTkdFU1RJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDEnXG5jb25zdCBHRU5FUkFUSU9OX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0dFTkVSQVRJT05fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDInXG5jb25zdCBDVVJSSUNVTFVNX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMID8/ICdodHRwOi8vbG9jYWxob3N0OjMwMDMnXG5jb25zdCBQUk9HUkVTU19VUkwgPSBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19QUk9HUkVTU19VUkwgPz8gJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwNSdcblxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlUmVzcG9uc2U8VD4ocmVzOiBSZXNwb25zZSk6IFByb21pc2U8VD4ge1xuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxuICByZXR1cm4gcmVzLmpzb24oKSBhcyBQcm9taXNlPFQ+XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0SW5nZXN0KHBheWxvYWQ6IHtcbiAgZG9jdW1lbnRJZDogc3RyaW5nXG4gIGZpbGVuYW1lOiBzdHJpbmdcbiAgZm9ybWF0OiAncGRmJyB8ICdtZCcgfCAndHh0J1xuICBmaWxlVXJsOiBzdHJpbmdcbn0pOiBQcm9taXNlPHsgam9iSWQ6IHN0cmluZyB9PiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdGAsIHtcbiAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICBib2R5OiBKU09OLnN0cmluZ2lmeShwYXlsb2FkKSxcbiAgfSlcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPHsgam9iSWQ6IHN0cmluZyB9PihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRJbmdlc3Rpb25TdGF0dXMoam9iSWQ6IHN0cmluZyk6IFByb21pc2U8SW5nZXN0aW9uSm9iU3RhdHVzPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke0lOR0VTVElPTl9VUkx9L2luZ2VzdC9zdGF0dXMvJHtlbmNvZGVVUklDb21wb25lbnQoam9iSWQpfWApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxJbmdlc3Rpb25Kb2JTdGF0dXM+KHJlcylcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHBvc3RHZW5lcmF0ZUFsbCh0aGVtZUlkOiBzdHJpbmcpOiBQcm9taXNlPHsgcXVldWVkOiBudW1iZXIgfT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtHRU5FUkFUSU9OX1VSTH0vZ2VuZXJhdGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkoeyB0aGVtZUlkIH0pLFxuICB9KVxuICBjb25zdCBkYXRhID0gYXdhaXQgaGFuZGxlUmVzcG9uc2U8eyBqb2JJZDogc3RyaW5nOyB0b3RhbEl0ZW1zOiBudW1iZXIgfT4ocmVzKVxuICByZXR1cm4geyBxdWV1ZWQ6IGRhdGEudG90YWxJdGVtcyB9XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0Q29tcGxldGUocGF5bG9hZDogQ29tcGxldGVQYXlsb2FkKTogUHJvbWlzZTxDb21wbGV0ZVJlc3BvbnNlPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vY29tcGxldGVgLCB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgYm9keTogSlNPTi5zdHJpbmdpZnkocGF5bG9hZCksXG4gIH0pXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxDb21wbGV0ZVJlc3BvbnNlPihyZXMpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRMZWFkZXJib2FyZCgpOiBQcm9taXNlPExlYWRlcmJvYXJkRW50cnlbXT4ge1xuICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaChgJHtQUk9HUkVTU19VUkx9L2xlYWRlcmJvYXJkYClcbiAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlPExlYWRlcmJvYXJkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0RmVlZCgpOiBQcm9taXNlPEZlZWRFbnRyeVtdPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKGAke1BST0dSRVNTX1VSTH0vZmVlZGApXG4gIHJldHVybiBoYW5kbGVSZXNwb25zZTxGZWVkRW50cnlbXT4ocmVzKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcG9zdEN1cnJpY3VsdW1Db25maXJtKHZlcnNpb25JZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3ZlcnNpb25zLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHZlcnNpb25JZCl9L2NvbmZpcm1gLFxuICAgIHtcbiAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0sXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcGF0Y2hDdXJyaWN1bHVtV2Vla09yZGVyKHdlZWtJZDogc3RyaW5nLCBwb3NpdGlvbjogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKFxuICAgIGAke0NVUlJJQ1VMVU1fVVJMfS9jdXJyaWN1bHVtL3dlZWtzLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHdlZWtJZCl9L29yZGVyYCxcbiAgICB7XG4gICAgICBtZXRob2Q6ICdQQVRDSCcsXG4gICAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHsgcG9zaXRpb24gfSksXG4gICAgfSxcbiAgKVxuICBpZiAoIXJlcy5vaykge1xuICAgIGNvbnN0IHRleHQgPSBhd2FpdCByZXMudGV4dCgpLmNhdGNoKCgpID0+IHJlcy5zdGF0dXNUZXh0KVxuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCAke3Jlcy5zdGF0dXN9OiAke3RleHR9YClcbiAgfVxufVxuIl0sIm5hbWVzIjpbInByb2Nlc3MiLCJJTkdFU1RJT05fVVJMIiwiZW52IiwiTkVYVF9QVUJMSUNfSU5HRVNUSU9OX1VSTCIsIkdFTkVSQVRJT05fVVJMIiwiTkVYVF9QVUJMSUNfR0VORVJBVElPTl9VUkwiLCJDVVJSSUNVTFVNX1VSTCIsIk5FWFRfUFVCTElDX0NVUlJJQ1VMVU1fVVJMIiwiUFJPR1JFU1NfVVJMIiwiTkVYVF9QVUJMSUNfUFJPR1JFU1NfVVJMIiwiaGFuZGxlUmVzcG9uc2UiLCJyZXMiLCJvayIsInRleHQiLCJjYXRjaCIsInN0YXR1c1RleHQiLCJFcnJvciIsInN0YXR1cyIsImpzb24iLCJwb3N0SW5nZXN0IiwicGF5bG9hZCIsImZldGNoIiwibWV0aG9kIiwiaGVhZGVycyIsImJvZHkiLCJKU09OIiwic3RyaW5naWZ5IiwiZ2V0SW5nZXN0aW9uU3RhdHVzIiwiam9iSWQiLCJlbmNvZGVVUklDb21wb25lbnQiLCJwb3N0R2VuZXJhdGVBbGwiLCJ0aGVtZUlkIiwiZGF0YSIsInF1ZXVlZCIsInRvdGFsSXRlbXMiLCJwb3N0Q29tcGxldGUiLCJnZXRMZWFkZXJib2FyZCIsImdldEZlZWQiLCJwb3N0Q3VycmljdWx1bUNvbmZpcm0iLCJ2ZXJzaW9uSWQiLCJwYXRjaEN1cnJpY3VsdW1XZWVrT3JkZXIiLCJ3ZWVrSWQiLCJwb3NpdGlvbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/lib/services.ts\n")); + +/***/ }) + +}); \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/app/layout.38f8b09f63a7c0e6.hot-update.js b/app/frontend/.next/static/webpack/app/layout.38f8b09f63a7c0e6.hot-update.js new file mode 100644 index 0000000..4cd3984 --- /dev/null +++ b/app/frontend/.next/static/webpack/app/layout.38f8b09f63a7c0e6.hot-update.js @@ -0,0 +1,22 @@ +"use strict"; +/* + * ATTENTION: An "eval-source-map" devtool has been used. + * This devtool is neither made for production nor for readable output files. + * It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools. + * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) + * or disable the default devtool with "devtool: false". + * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). + */ +self["webpackHotUpdate_N_E"]("app/layout",{ + +/***/ "(app-pages-browser)/./src/app/globals.css": +/*!*****************************!*\ + !*** ./src/app/globals.css ***! + \*****************************/ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony default export */ __webpack_exports__[\"default\"] = (\"5a5be828788e\");\nif (true) { module.hot.accept() }\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL3NyYy9hcHAvZ2xvYmFscy5jc3MiLCJtYXBwaW5ncyI6IjtBQUFBLCtEQUFlLGNBQWM7QUFDN0IsSUFBSSxJQUFVLElBQUksaUJBQWlCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL3NyYy9hcHAvZ2xvYmFscy5jc3M/ZjYwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCBcIjVhNWJlODI4Nzg4ZVwiXG5pZiAobW9kdWxlLmhvdCkgeyBtb2R1bGUuaG90LmFjY2VwdCgpIH1cbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/app/globals.css\n")); + +/***/ }) + +}); \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/app/layout.6a9372aa2fa41344.hot-update.js b/app/frontend/.next/static/webpack/app/layout.6a9372aa2fa41344.hot-update.js new file mode 100644 index 0000000..dbab38e --- /dev/null +++ b/app/frontend/.next/static/webpack/app/layout.6a9372aa2fa41344.hot-update.js @@ -0,0 +1,22 @@ +"use strict"; +/* + * ATTENTION: An "eval-source-map" devtool has been used. + * This devtool is neither made for production nor for readable output files. + * It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools. + * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) + * or disable the default devtool with "devtool: false". + * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). + */ +self["webpackHotUpdate_N_E"]("app/layout",{ + +/***/ "(app-pages-browser)/./src/app/globals.css": +/*!*****************************!*\ + !*** ./src/app/globals.css ***! + \*****************************/ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony default export */ __webpack_exports__[\"default\"] = (\"e7a0d0e3dda2\");\nif (true) { module.hot.accept() }\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL3NyYy9hcHAvZ2xvYmFscy5jc3MiLCJtYXBwaW5ncyI6IjtBQUFBLCtEQUFlLGNBQWM7QUFDN0IsSUFBSSxJQUFVLElBQUksaUJBQWlCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL3NyYy9hcHAvZ2xvYmFscy5jc3M/ZjYwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCBcImU3YTBkMGUzZGRhMlwiXG5pZiAobW9kdWxlLmhvdCkgeyBtb2R1bGUuaG90LmFjY2VwdCgpIH1cbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/app/globals.css\n")); + +/***/ }) + +}); \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/app/layout.6e27bba267061be9.hot-update.js b/app/frontend/.next/static/webpack/app/layout.6e27bba267061be9.hot-update.js new file mode 100644 index 0000000..182a980 --- /dev/null +++ b/app/frontend/.next/static/webpack/app/layout.6e27bba267061be9.hot-update.js @@ -0,0 +1,22 @@ +"use strict"; +/* + * ATTENTION: An "eval-source-map" devtool has been used. + * This devtool is neither made for production nor for readable output files. + * It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools. + * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) + * or disable the default devtool with "devtool: false". + * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). + */ +self["webpackHotUpdate_N_E"]("app/layout",{ + +/***/ "(app-pages-browser)/./src/app/globals.css": +/*!*****************************!*\ + !*** ./src/app/globals.css ***! + \*****************************/ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony default export */ __webpack_exports__[\"default\"] = (\"c31929049cd1\");\nif (true) { module.hot.accept() }\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL3NyYy9hcHAvZ2xvYmFscy5jc3MiLCJtYXBwaW5ncyI6IjtBQUFBLCtEQUFlLGNBQWM7QUFDN0IsSUFBSSxJQUFVLElBQUksaUJBQWlCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL3NyYy9hcHAvZ2xvYmFscy5jc3M/ZjYwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCBcImMzMTkyOTA0OWNkMVwiXG5pZiAobW9kdWxlLmhvdCkgeyBtb2R1bGUuaG90LmFjY2VwdCgpIH1cbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/app/globals.css\n")); + +/***/ }) + +}); \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/app/layout.775dbecc63dc51f4.hot-update.js b/app/frontend/.next/static/webpack/app/layout.775dbecc63dc51f4.hot-update.js new file mode 100644 index 0000000..176ae11 --- /dev/null +++ b/app/frontend/.next/static/webpack/app/layout.775dbecc63dc51f4.hot-update.js @@ -0,0 +1,22 @@ +"use strict"; +/* + * ATTENTION: An "eval-source-map" devtool has been used. + * This devtool is neither made for production nor for readable output files. + * It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools. + * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) + * or disable the default devtool with "devtool: false". + * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). + */ +self["webpackHotUpdate_N_E"]("app/layout",{ + +/***/ "(app-pages-browser)/./src/app/globals.css": +/*!*****************************!*\ + !*** ./src/app/globals.css ***! + \*****************************/ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony default export */ __webpack_exports__[\"default\"] = (\"dbecd1d0d961\");\nif (true) { module.hot.accept() }\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL3NyYy9hcHAvZ2xvYmFscy5jc3MiLCJtYXBwaW5ncyI6IjtBQUFBLCtEQUFlLGNBQWM7QUFDN0IsSUFBSSxJQUFVLElBQUksaUJBQWlCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL3NyYy9hcHAvZ2xvYmFscy5jc3M/ZjYwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCBcImRiZWNkMWQwZDk2MVwiXG5pZiAobW9kdWxlLmhvdCkgeyBtb2R1bGUuaG90LmFjY2VwdCgpIH1cbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/app/globals.css\n")); + +/***/ }) + +}); \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/app/layout.955b7b26c8ad58eb.hot-update.js b/app/frontend/.next/static/webpack/app/layout.955b7b26c8ad58eb.hot-update.js new file mode 100644 index 0000000..4a32794 --- /dev/null +++ b/app/frontend/.next/static/webpack/app/layout.955b7b26c8ad58eb.hot-update.js @@ -0,0 +1,22 @@ +"use strict"; +/* + * ATTENTION: An "eval-source-map" devtool has been used. + * This devtool is neither made for production nor for readable output files. + * It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools. + * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) + * or disable the default devtool with "devtool: false". + * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). + */ +self["webpackHotUpdate_N_E"]("app/layout",{ + +/***/ "(app-pages-browser)/./src/app/globals.css": +/*!*****************************!*\ + !*** ./src/app/globals.css ***! + \*****************************/ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony default export */ __webpack_exports__[\"default\"] = (\"99d8df8a2b80\");\nif (true) { module.hot.accept() }\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL3NyYy9hcHAvZ2xvYmFscy5jc3MiLCJtYXBwaW5ncyI6IjtBQUFBLCtEQUFlLGNBQWM7QUFDN0IsSUFBSSxJQUFVLElBQUksaUJBQWlCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL3NyYy9hcHAvZ2xvYmFscy5jc3M/ZjYwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCBcIjk5ZDhkZjhhMmI4MFwiXG5pZiAobW9kdWxlLmhvdCkgeyBtb2R1bGUuaG90LmFjY2VwdCgpIH1cbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/app/globals.css\n")); + +/***/ }) + +}); \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/app/layout.c94c9b02f6b78f8f.hot-update.js b/app/frontend/.next/static/webpack/app/layout.c94c9b02f6b78f8f.hot-update.js new file mode 100644 index 0000000..c456fb4 --- /dev/null +++ b/app/frontend/.next/static/webpack/app/layout.c94c9b02f6b78f8f.hot-update.js @@ -0,0 +1,22 @@ +"use strict"; +/* + * ATTENTION: An "eval-source-map" devtool has been used. + * This devtool is neither made for production nor for readable output files. + * It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools. + * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) + * or disable the default devtool with "devtool: false". + * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). + */ +self["webpackHotUpdate_N_E"]("app/layout",{ + +/***/ "(app-pages-browser)/./src/app/globals.css": +/*!*****************************!*\ + !*** ./src/app/globals.css ***! + \*****************************/ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony default export */ __webpack_exports__[\"default\"] = (\"517f2b76f613\");\nif (true) { module.hot.accept() }\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL3NyYy9hcHAvZ2xvYmFscy5jc3MiLCJtYXBwaW5ncyI6IjtBQUFBLCtEQUFlLGNBQWM7QUFDN0IsSUFBSSxJQUFVLElBQUksaUJBQWlCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL3NyYy9hcHAvZ2xvYmFscy5jc3M/ZjYwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCBcIjUxN2YyYjc2ZjYxM1wiXG5pZiAobW9kdWxlLmhvdCkgeyBtb2R1bGUuaG90LmFjY2VwdCgpIH1cbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/app/globals.css\n")); + +/***/ }) + +}); \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/app/layout.effcf7a769bd9638.hot-update.js b/app/frontend/.next/static/webpack/app/layout.effcf7a769bd9638.hot-update.js new file mode 100644 index 0000000..c5cf9ea --- /dev/null +++ b/app/frontend/.next/static/webpack/app/layout.effcf7a769bd9638.hot-update.js @@ -0,0 +1,22 @@ +"use strict"; +/* + * ATTENTION: An "eval-source-map" devtool has been used. + * This devtool is neither made for production nor for readable output files. + * It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools. + * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) + * or disable the default devtool with "devtool: false". + * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). + */ +self["webpackHotUpdate_N_E"]("app/layout",{ + +/***/ "(app-pages-browser)/./src/app/globals.css": +/*!*****************************!*\ + !*** ./src/app/globals.css ***! + \*****************************/ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony default export */ __webpack_exports__[\"default\"] = (\"6673e0362ad5\");\nif (true) { module.hot.accept() }\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL3NyYy9hcHAvZ2xvYmFscy5jc3MiLCJtYXBwaW5ncyI6IjtBQUFBLCtEQUFlLGNBQWM7QUFDN0IsSUFBSSxJQUFVLElBQUksaUJBQWlCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL3NyYy9hcHAvZ2xvYmFscy5jc3M/ZjYwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCBcIjY2NzNlMDM2MmFkNVwiXG5pZiAobW9kdWxlLmhvdCkgeyBtb2R1bGUuaG90LmFjY2VwdCgpIH1cbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/app/globals.css\n")); + +/***/ }) + +}); \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/app/layout.f1602b3fe09abb71.hot-update.js b/app/frontend/.next/static/webpack/app/layout.f1602b3fe09abb71.hot-update.js new file mode 100644 index 0000000..190b590 --- /dev/null +++ b/app/frontend/.next/static/webpack/app/layout.f1602b3fe09abb71.hot-update.js @@ -0,0 +1,22 @@ +"use strict"; +/* + * ATTENTION: An "eval-source-map" devtool has been used. + * This devtool is neither made for production nor for readable output files. + * It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools. + * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) + * or disable the default devtool with "devtool: false". + * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). + */ +self["webpackHotUpdate_N_E"]("app/layout",{ + +/***/ "(app-pages-browser)/./src/app/globals.css": +/*!*****************************!*\ + !*** ./src/app/globals.css ***! + \*****************************/ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony default export */ __webpack_exports__[\"default\"] = (\"eeb5d2788eec\");\nif (true) { module.hot.accept() }\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL3NyYy9hcHAvZ2xvYmFscy5jc3MiLCJtYXBwaW5ncyI6IjtBQUFBLCtEQUFlLGNBQWM7QUFDN0IsSUFBSSxJQUFVLElBQUksaUJBQWlCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL3NyYy9hcHAvZ2xvYmFscy5jc3M/ZjYwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCBcImVlYjVkMjc4OGVlY1wiXG5pZiAobW9kdWxlLmhvdCkgeyBtb2R1bGUuaG90LmFjY2VwdCgpIH1cbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/app/globals.css\n")); + +/***/ }) + +}); \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/app/layout.fc8bb3f94fa533ff.hot-update.js b/app/frontend/.next/static/webpack/app/layout.fc8bb3f94fa533ff.hot-update.js new file mode 100644 index 0000000..8ecde55 --- /dev/null +++ b/app/frontend/.next/static/webpack/app/layout.fc8bb3f94fa533ff.hot-update.js @@ -0,0 +1,22 @@ +"use strict"; +/* + * ATTENTION: An "eval-source-map" devtool has been used. + * This devtool is neither made for production nor for readable output files. + * It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools. + * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) + * or disable the default devtool with "devtool: false". + * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). + */ +self["webpackHotUpdate_N_E"]("app/layout",{ + +/***/ "(app-pages-browser)/./src/app/globals.css": +/*!*****************************!*\ + !*** ./src/app/globals.css ***! + \*****************************/ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony default export */ __webpack_exports__[\"default\"] = (\"13fbb2c41b9b\");\nif (true) { module.hot.accept() }\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL3NyYy9hcHAvZ2xvYmFscy5jc3MiLCJtYXBwaW5ncyI6IjtBQUFBLCtEQUFlLGNBQWM7QUFDN0IsSUFBSSxJQUFVLElBQUksaUJBQWlCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL3NyYy9hcHAvZ2xvYmFscy5jc3M/ZjYwMSJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCBcIjEzZmJiMmM0MWI5YlwiXG5pZiAobW9kdWxlLmhvdCkgeyBtb2R1bGUuaG90LmFjY2VwdCgpIH1cbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/app/globals.css\n")); + +/***/ }) + +}); \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/c94c9b02f6b78f8f.webpack.hot-update.json b/app/frontend/.next/static/webpack/c94c9b02f6b78f8f.webpack.hot-update.json new file mode 100644 index 0000000..5c82546 --- /dev/null +++ b/app/frontend/.next/static/webpack/c94c9b02f6b78f8f.webpack.hot-update.json @@ -0,0 +1 @@ +{"c":["app/layout","webpack"],"r":[],"m":[]} \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/d141bd272079e7b3.webpack.hot-update.json b/app/frontend/.next/static/webpack/d141bd272079e7b3.webpack.hot-update.json new file mode 100644 index 0000000..3823c4c --- /dev/null +++ b/app/frontend/.next/static/webpack/d141bd272079e7b3.webpack.hot-update.json @@ -0,0 +1 @@ +{"c":["webpack"],"r":[],"m":[]} \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/dd83b9be2409a853.webpack.hot-update.json b/app/frontend/.next/static/webpack/dd83b9be2409a853.webpack.hot-update.json new file mode 100644 index 0000000..3823c4c --- /dev/null +++ b/app/frontend/.next/static/webpack/dd83b9be2409a853.webpack.hot-update.json @@ -0,0 +1 @@ +{"c":["webpack"],"r":[],"m":[]} \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/effcf7a769bd9638.webpack.hot-update.json b/app/frontend/.next/static/webpack/effcf7a769bd9638.webpack.hot-update.json new file mode 100644 index 0000000..5c82546 --- /dev/null +++ b/app/frontend/.next/static/webpack/effcf7a769bd9638.webpack.hot-update.json @@ -0,0 +1 @@ +{"c":["app/layout","webpack"],"r":[],"m":[]} \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/f1602b3fe09abb71.webpack.hot-update.json b/app/frontend/.next/static/webpack/f1602b3fe09abb71.webpack.hot-update.json new file mode 100644 index 0000000..5c82546 --- /dev/null +++ b/app/frontend/.next/static/webpack/f1602b3fe09abb71.webpack.hot-update.json @@ -0,0 +1 @@ +{"c":["app/layout","webpack"],"r":[],"m":[]} \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/fc8bb3f94fa533ff.webpack.hot-update.json b/app/frontend/.next/static/webpack/fc8bb3f94fa533ff.webpack.hot-update.json new file mode 100644 index 0000000..9f5a0d8 --- /dev/null +++ b/app/frontend/.next/static/webpack/fc8bb3f94fa533ff.webpack.hot-update.json @@ -0,0 +1 @@ +{"c":["app/layout","webpack"],"r":["app/_not-found/page"],"m":["(app-pages-browser)/./node_modules/next/dist/build/webpack/loaders/next-client-pages-loader.js?absolutePagePath=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Cnode_modules%5Cnext%5Cdist%5Cclient%5Ccomponents%5Cnot-found-error.js&page=%2F_not-found%2Fpage!","(app-pages-browser)/./node_modules/next/dist/client/components/not-found-error.js"]} \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/webpack.38f8b09f63a7c0e6.hot-update.js b/app/frontend/.next/static/webpack/webpack.38f8b09f63a7c0e6.hot-update.js new file mode 100644 index 0000000..a7d7447 --- /dev/null +++ b/app/frontend/.next/static/webpack/webpack.38f8b09f63a7c0e6.hot-update.js @@ -0,0 +1,18 @@ +"use strict"; +/* + * ATTENTION: An "eval-source-map" devtool has been used. + * This devtool is neither made for production nor for readable output files. + * It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools. + * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) + * or disable the default devtool with "devtool: false". + * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). + */ +self["webpackHotUpdate_N_E"]("webpack",{}, +/******/ function(__webpack_require__) { // webpackRuntimeModules +/******/ /* webpack/runtime/getFullHash */ +/******/ !function() { +/******/ __webpack_require__.h = function() { return "904051da550a6daf"; } +/******/ }(); +/******/ +/******/ } +); \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/webpack.6a9372aa2fa41344.hot-update.js b/app/frontend/.next/static/webpack/webpack.6a9372aa2fa41344.hot-update.js new file mode 100644 index 0000000..1f11ec1 --- /dev/null +++ b/app/frontend/.next/static/webpack/webpack.6a9372aa2fa41344.hot-update.js @@ -0,0 +1,18 @@ +"use strict"; +/* + * ATTENTION: An "eval-source-map" devtool has been used. + * This devtool is neither made for production nor for readable output files. + * It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools. + * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) + * or disable the default devtool with "devtool: false". + * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). + */ +self["webpackHotUpdate_N_E"]("webpack",{}, +/******/ function(__webpack_require__) { // webpackRuntimeModules +/******/ /* webpack/runtime/getFullHash */ +/******/ !function() { +/******/ __webpack_require__.h = function() { return "dd83b9be2409a853"; } +/******/ }(); +/******/ +/******/ } +); \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/webpack.6e27bba267061be9.hot-update.js b/app/frontend/.next/static/webpack/webpack.6e27bba267061be9.hot-update.js new file mode 100644 index 0000000..04e6351 --- /dev/null +++ b/app/frontend/.next/static/webpack/webpack.6e27bba267061be9.hot-update.js @@ -0,0 +1,18 @@ +"use strict"; +/* + * ATTENTION: An "eval-source-map" devtool has been used. + * This devtool is neither made for production nor for readable output files. + * It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools. + * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) + * or disable the default devtool with "devtool: false". + * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). + */ +self["webpackHotUpdate_N_E"]("webpack",{}, +/******/ function(__webpack_require__) { // webpackRuntimeModules +/******/ /* webpack/runtime/getFullHash */ +/******/ !function() { +/******/ __webpack_require__.h = function() { return "38f8b09f63a7c0e6"; } +/******/ }(); +/******/ +/******/ } +); \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/webpack.775dbecc63dc51f4.hot-update.js b/app/frontend/.next/static/webpack/webpack.775dbecc63dc51f4.hot-update.js new file mode 100644 index 0000000..7e45bc8 --- /dev/null +++ b/app/frontend/.next/static/webpack/webpack.775dbecc63dc51f4.hot-update.js @@ -0,0 +1,18 @@ +"use strict"; +/* + * ATTENTION: An "eval-source-map" devtool has been used. + * This devtool is neither made for production nor for readable output files. + * It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools. + * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) + * or disable the default devtool with "devtool: false". + * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). + */ +self["webpackHotUpdate_N_E"]("webpack",{}, +/******/ function(__webpack_require__) { // webpackRuntimeModules +/******/ /* webpack/runtime/getFullHash */ +/******/ !function() { +/******/ __webpack_require__.h = function() { return "f1602b3fe09abb71"; } +/******/ }(); +/******/ +/******/ } +); \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/webpack.955b7b26c8ad58eb.hot-update.js b/app/frontend/.next/static/webpack/webpack.955b7b26c8ad58eb.hot-update.js new file mode 100644 index 0000000..2a65471 --- /dev/null +++ b/app/frontend/.next/static/webpack/webpack.955b7b26c8ad58eb.hot-update.js @@ -0,0 +1,18 @@ +"use strict"; +/* + * ATTENTION: An "eval-source-map" devtool has been used. + * This devtool is neither made for production nor for readable output files. + * It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools. + * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) + * or disable the default devtool with "devtool: false". + * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). + */ +self["webpackHotUpdate_N_E"]("webpack",{}, +/******/ function(__webpack_require__) { // webpackRuntimeModules +/******/ /* webpack/runtime/getFullHash */ +/******/ !function() { +/******/ __webpack_require__.h = function() { return "c94c9b02f6b78f8f"; } +/******/ }(); +/******/ +/******/ } +); \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/webpack.a7ccb1bd8466330b.hot-update.js b/app/frontend/.next/static/webpack/webpack.a7ccb1bd8466330b.hot-update.js new file mode 100644 index 0000000..73b356b --- /dev/null +++ b/app/frontend/.next/static/webpack/webpack.a7ccb1bd8466330b.hot-update.js @@ -0,0 +1,18 @@ +"use strict"; +/* + * ATTENTION: An "eval-source-map" devtool has been used. + * This devtool is neither made for production nor for readable output files. + * It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools. + * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) + * or disable the default devtool with "devtool: false". + * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). + */ +self["webpackHotUpdate_N_E"]("webpack",{}, +/******/ function(__webpack_require__) { // webpackRuntimeModules +/******/ /* webpack/runtime/getFullHash */ +/******/ !function() { +/******/ __webpack_require__.h = function() { return "d141bd272079e7b3"; } +/******/ }(); +/******/ +/******/ } +); \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/webpack.c94c9b02f6b78f8f.hot-update.js b/app/frontend/.next/static/webpack/webpack.c94c9b02f6b78f8f.hot-update.js new file mode 100644 index 0000000..6f087fb --- /dev/null +++ b/app/frontend/.next/static/webpack/webpack.c94c9b02f6b78f8f.hot-update.js @@ -0,0 +1,18 @@ +"use strict"; +/* + * ATTENTION: An "eval-source-map" devtool has been used. + * This devtool is neither made for production nor for readable output files. + * It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools. + * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) + * or disable the default devtool with "devtool: false". + * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). + */ +self["webpackHotUpdate_N_E"]("webpack",{}, +/******/ function(__webpack_require__) { // webpackRuntimeModules +/******/ /* webpack/runtime/getFullHash */ +/******/ !function() { +/******/ __webpack_require__.h = function() { return "effcf7a769bd9638"; } +/******/ }(); +/******/ +/******/ } +); \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/webpack.d141bd272079e7b3.hot-update.js b/app/frontend/.next/static/webpack/webpack.d141bd272079e7b3.hot-update.js new file mode 100644 index 0000000..1796a68 --- /dev/null +++ b/app/frontend/.next/static/webpack/webpack.d141bd272079e7b3.hot-update.js @@ -0,0 +1,18 @@ +"use strict"; +/* + * ATTENTION: An "eval-source-map" devtool has been used. + * This devtool is neither made for production nor for readable output files. + * It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools. + * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) + * or disable the default devtool with "devtool: false". + * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). + */ +self["webpackHotUpdate_N_E"]("webpack",{}, +/******/ function(__webpack_require__) { // webpackRuntimeModules +/******/ /* webpack/runtime/getFullHash */ +/******/ !function() { +/******/ __webpack_require__.h = function() { return "fc8bb3f94fa533ff"; } +/******/ }(); +/******/ +/******/ } +); \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/webpack.dd83b9be2409a853.hot-update.js b/app/frontend/.next/static/webpack/webpack.dd83b9be2409a853.hot-update.js new file mode 100644 index 0000000..ebfa3ae --- /dev/null +++ b/app/frontend/.next/static/webpack/webpack.dd83b9be2409a853.hot-update.js @@ -0,0 +1,18 @@ +"use strict"; +/* + * ATTENTION: An "eval-source-map" devtool has been used. + * This devtool is neither made for production nor for readable output files. + * It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools. + * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) + * or disable the default devtool with "devtool: false". + * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). + */ +self["webpackHotUpdate_N_E"]("webpack",{}, +/******/ function(__webpack_require__) { // webpackRuntimeModules +/******/ /* webpack/runtime/getFullHash */ +/******/ !function() { +/******/ __webpack_require__.h = function() { return "775dbecc63dc51f4"; } +/******/ }(); +/******/ +/******/ } +); \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/webpack.effcf7a769bd9638.hot-update.js b/app/frontend/.next/static/webpack/webpack.effcf7a769bd9638.hot-update.js new file mode 100644 index 0000000..12180ff --- /dev/null +++ b/app/frontend/.next/static/webpack/webpack.effcf7a769bd9638.hot-update.js @@ -0,0 +1,18 @@ +"use strict"; +/* + * ATTENTION: An "eval-source-map" devtool has been used. + * This devtool is neither made for production nor for readable output files. + * It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools. + * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) + * or disable the default devtool with "devtool: false". + * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). + */ +self["webpackHotUpdate_N_E"]("webpack",{}, +/******/ function(__webpack_require__) { // webpackRuntimeModules +/******/ /* webpack/runtime/getFullHash */ +/******/ !function() { +/******/ __webpack_require__.h = function() { return "6e27bba267061be9"; } +/******/ }(); +/******/ +/******/ } +); \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/webpack.f1602b3fe09abb71.hot-update.js b/app/frontend/.next/static/webpack/webpack.f1602b3fe09abb71.hot-update.js new file mode 100644 index 0000000..0e7e977 --- /dev/null +++ b/app/frontend/.next/static/webpack/webpack.f1602b3fe09abb71.hot-update.js @@ -0,0 +1,18 @@ +"use strict"; +/* + * ATTENTION: An "eval-source-map" devtool has been used. + * This devtool is neither made for production nor for readable output files. + * It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools. + * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) + * or disable the default devtool with "devtool: false". + * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). + */ +self["webpackHotUpdate_N_E"]("webpack",{}, +/******/ function(__webpack_require__) { // webpackRuntimeModules +/******/ /* webpack/runtime/getFullHash */ +/******/ !function() { +/******/ __webpack_require__.h = function() { return "955b7b26c8ad58eb"; } +/******/ }(); +/******/ +/******/ } +); \ No newline at end of file diff --git a/app/frontend/.next/static/webpack/webpack.fc8bb3f94fa533ff.hot-update.js b/app/frontend/.next/static/webpack/webpack.fc8bb3f94fa533ff.hot-update.js new file mode 100644 index 0000000..ba00f0d --- /dev/null +++ b/app/frontend/.next/static/webpack/webpack.fc8bb3f94fa533ff.hot-update.js @@ -0,0 +1,18 @@ +"use strict"; +/* + * ATTENTION: An "eval-source-map" devtool has been used. + * This devtool is neither made for production nor for readable output files. + * It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools. + * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) + * or disable the default devtool with "devtool: false". + * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). + */ +self["webpackHotUpdate_N_E"]("webpack",{}, +/******/ function(__webpack_require__) { // webpackRuntimeModules +/******/ /* webpack/runtime/getFullHash */ +/******/ !function() { +/******/ __webpack_require__.h = function() { return "6a9372aa2fa41344"; } +/******/ }(); +/******/ +/******/ } +); \ No newline at end of file diff --git a/app/frontend/.next/trace b/app/frontend/.next/trace index f9261d5..4077f19 100644 --- a/app/frontend/.next/trace +++ b/app/frontend/.next/trace @@ -35,3 +35,40 @@ [{"name":"handle-request","duration":922790,"timestamp":294909277464,"id":2787,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779566866548,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":3,"timestamp":294910200325,"id":2895,"parentId":2787,"tags":{"url":"/icons/192.png","memory.rss":"529444864","memory.heapUsed":"263580936","memory.heapTotal":"294219776"},"startTime":1779566867471,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":132701,"timestamp":294960715057,"id":2902,"parentId":2900,"tags":{"request":"next-app-loader?name=app%2Fauth%2Fpage&page=%2Fauth%2Fpage&appPaths=%2Fauth%2Fpage&pagePath=private-next-app-dir%2Fauth%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779566917985,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":132749,"timestamp":294960715076,"id":2903,"parentId":2900,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fsession%2Fpage&page=%2Fapp%2Fsession%2Fpage&appPaths=%2Fapp%2Fsession%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fsession%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779566917985,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":132766,"timestamp":294960715091,"id":2904,"parentId":2900,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fcurriculum%2Fpage&page=%2Fadmin%2Fcurriculum%2Fpage&appPaths=%2Fadmin%2Fcurriculum%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fcurriculum%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779566917985,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":132771,"timestamp":294960715108,"id":2905,"parentId":2900,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fprofile%2Fpage&page=%2Fapp%2Fprofile%2Fpage&appPaths=%2Fapp%2Fprofile%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fprofile%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779566917985,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":132778,"timestamp":294960715124,"id":2906,"parentId":2900,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2Fpage&page=%2Fapp%2Flibrary%2Fpage&appPaths=%2Fapp%2Flibrary%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779566917985,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":150959,"timestamp":294960714972,"id":2901,"parentId":2900,"tags":{"request":"next-app-loader?name=app%2F_not-found%2Fpage&page=%2F_not-found%2Fpage&appPaths=&pagePath=..%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fnot-found-error.js&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779566917985,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":150851,"timestamp":294960715138,"id":2907,"parentId":2900,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fpage&page=%2Fadmin%2Fpage&appPaths=%2Fadmin%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779566917985,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":344468,"timestamp":294960683392,"id":2900,"parentId":2899,"tags":{},"startTime":1779566917954,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":6932,"timestamp":294961033722,"id":2934,"parentId":2933,"tags":{},"startTime":1779566918304,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":23,"timestamp":294961040756,"id":2936,"parentId":2933,"tags":{},"startTime":1779566918311,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":11070,"timestamp":294961040828,"id":2937,"parentId":2933,"tags":{},"startTime":1779566918311,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":57,"timestamp":294961052014,"id":2938,"parentId":2933,"tags":{},"startTime":1779566918322,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":19,"timestamp":294961052164,"id":2939,"parentId":2933,"tags":{},"startTime":1779566918322,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":14018,"timestamp":294961040728,"id":2935,"parentId":2933,"tags":{},"startTime":1779566918311,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":955,"timestamp":294961058546,"id":2940,"parentId":2933,"tags":{},"startTime":1779566918329,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":6952,"timestamp":294961059554,"id":2941,"parentId":2933,"tags":{},"startTime":1779566918330,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":3112,"timestamp":294961070050,"id":2942,"parentId":2933,"tags":{},"startTime":1779566918340,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":302,"timestamp":294961073158,"id":2943,"parentId":2933,"tags":{},"startTime":1779566918343,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":116,"timestamp":294961073435,"id":2944,"parentId":2933,"tags":{},"startTime":1779566918344,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":2688,"timestamp":294961073568,"id":2945,"parentId":2933,"tags":{},"startTime":1779566918344,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":51562,"timestamp":294961031866,"id":2933,"parentId":2899,"tags":{},"startTime":1779566918302,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":416338,"timestamp":294960682766,"id":2899,"parentId":2897,"tags":{"name":"server"},"startTime":1779566917953,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":28316,"timestamp":294961099227,"id":2946,"parentId":2897,"tags":{},"startTime":1779566918369,"traceId":"0ca0f7fe408e086a"},{"name":"compile-path","duration":451531,"timestamp":294960677605,"id":2898,"tags":{"trigger":"/admin","isTurbopack":false},"startTime":1779566917948,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-server","duration":451891,"timestamp":294960677523,"id":2897,"parentId":3,"tags":{"trigger":"manual"},"startTime":1779566917948,"traceId":"0ca0f7fe408e086a"}] [{"name":"handle-request","duration":545413,"timestamp":294960669750,"id":2896,"tags":{"url":"/admin?_rsc=1rqwo","isTurbopack":false},"startTime":1779566917940,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":3,"timestamp":294961215256,"id":2947,"parentId":2896,"tags":{"url":"/admin?_rsc=1rqwo","memory.rss":"484032512","memory.heapUsed":"249481408","memory.heapTotal":"283598848"},"startTime":1779566918485,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":45489,"timestamp":294961220142,"id":2948,"tags":{"url":"/admin?_rsc=d43c0","isTurbopack":false},"startTime":1779566918490,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":4,"timestamp":294961265684,"id":2949,"parentId":2948,"tags":{"url":"/admin?_rsc=d43c0","memory.rss":"484032512","memory.heapUsed":"250467904","memory.heapTotal":"283598848"},"startTime":1779566918536,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":38738,"timestamp":294961381183,"id":2958,"parentId":2954,"tags":{"request":"next-app-loader?name=app%2Fauth%2Fpage&page=%2Fauth%2Fpage&appPaths=%2Fauth%2Fpage&pagePath=private-next-app-dir%2Fauth%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779566918651,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":38746,"timestamp":294961381207,"id":2959,"parentId":2954,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fcurriculum%2Fpage&page=%2Fadmin%2Fcurriculum%2Fpage&appPaths=%2Fadmin%2Fcurriculum%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fcurriculum%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779566918651,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":38739,"timestamp":294961381228,"id":2960,"parentId":2954,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fprofile%2Fpage&page=%2Fapp%2Fprofile%2Fpage&appPaths=%2Fapp%2Fprofile%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fprofile%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779566918651,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":38729,"timestamp":294961381247,"id":2961,"parentId":2954,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fsession%2Fpage&page=%2Fapp%2Fsession%2Fpage&appPaths=%2Fapp%2Fsession%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fsession%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779566918651,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":38719,"timestamp":294961381264,"id":2962,"parentId":2954,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2Fpage&page=%2Fapp%2Flibrary%2Fpage&appPaths=%2Fapp%2Flibrary%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779566918651,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":51541,"timestamp":294961381296,"id":2964,"parentId":2954,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fpage&page=%2Fadmin%2Fpage&appPaths=%2Fadmin%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779566918651,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":63227,"timestamp":294961381053,"id":2957,"parentId":2954,"tags":{"request":"next-app-loader?name=app%2F_not-found%2Fpage&page=%2F_not-found%2Fpage&appPaths=&pagePath=..%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fnot-found-error.js&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779566918651,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":69177,"timestamp":294961381281,"id":2963,"parentId":2954,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fdocuments%2Fpage&page=%2Fadmin%2Fdocuments%2Fpage&appPaths=%2Fadmin%2Fdocuments%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fdocuments%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779566918651,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":164138,"timestamp":294961358774,"id":2954,"parentId":2953,"tags":{},"startTime":1779566918629,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":9039,"timestamp":294961597884,"id":2995,"parentId":2994,"tags":{},"startTime":1779566918868,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":25,"timestamp":294961607127,"id":2997,"parentId":2994,"tags":{},"startTime":1779566918877,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":17567,"timestamp":294961607238,"id":2998,"parentId":2994,"tags":{},"startTime":1779566918877,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":35,"timestamp":294961624983,"id":2999,"parentId":2994,"tags":{},"startTime":1779566918895,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":24,"timestamp":294961625097,"id":3000,"parentId":2994,"tags":{},"startTime":1779566918895,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":20351,"timestamp":294961607043,"id":2996,"parentId":2994,"tags":{},"startTime":1779566918877,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":2801,"timestamp":294961633146,"id":3001,"parentId":2994,"tags":{},"startTime":1779566918903,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":9541,"timestamp":294961636089,"id":3002,"parentId":2994,"tags":{},"startTime":1779566918906,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":6153,"timestamp":294961650898,"id":3003,"parentId":2994,"tags":{},"startTime":1779566918921,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":800,"timestamp":294961657043,"id":3004,"parentId":2994,"tags":{},"startTime":1779566918927,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":416,"timestamp":294961657737,"id":3005,"parentId":2994,"tags":{},"startTime":1779566918928,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":2397,"timestamp":294961658215,"id":3006,"parentId":2994,"tags":{},"startTime":1779566918928,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":93546,"timestamp":294961593936,"id":2994,"parentId":2953,"tags":{},"startTime":1779566918864,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":386851,"timestamp":294961358292,"id":2953,"parentId":2951,"tags":{"name":"server"},"startTime":1779566918628,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":38333,"timestamp":294961745414,"id":3007,"parentId":2951,"tags":{},"startTime":1779566919016,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-server","duration":47,"timestamp":294961786075,"id":3008,"parentId":3,"tags":{"trigger":"manual"},"startTime":1779566919056,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":5944,"timestamp":294961824587,"id":3013,"parentId":3010,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779566919095,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":5889,"timestamp":294961824662,"id":3017,"parentId":3010,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779566919095,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":5794,"timestamp":294961824760,"id":3022,"parentId":3010,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779566919095,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":8097,"timestamp":294961824800,"id":3025,"parentId":3010,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779566919095,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":8205,"timestamp":294961824826,"id":3027,"parentId":3010,"tags":{"request":"next-client-pages-loader?absolutePagePath=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Cnode_modules%5Cnext%5Cdist%5Cclient%5Ccomponents%5Cnot-found-error.js&page=%2F_not-found%2Fpage!"},"startTime":1779566919095,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":9123,"timestamp":294961824307,"id":3011,"parentId":3010,"tags":{"request":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\compiled\\@next\\react-refresh-utils\\dist\\runtime.js"},"startTime":1779566919094,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":9926,"timestamp":294961824727,"id":3020,"parentId":3010,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cknowledge%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779566919095,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":9952,"timestamp":294961824743,"id":3021,"parentId":3010,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Ccurriculum%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779566919095,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":9965,"timestamp":294961824773,"id":3023,"parentId":3010,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779566919095,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":10034,"timestamp":294961824813,"id":3026,"parentId":3010,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Cprofile%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779566919095,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":11483,"timestamp":294961824693,"id":3019,"parentId":3010,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cdocuments%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779566919095,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":11708,"timestamp":294961824608,"id":3014,"parentId":3010,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Cstylesheet.css%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cglobals.css%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779566919095,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":11689,"timestamp":294961824642,"id":3016,"parentId":3010,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cauth%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779566919095,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":13120,"timestamp":294961824787,"id":3024,"parentId":3010,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Csession%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779566919095,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":15067,"timestamp":294961824625,"id":3015,"parentId":3010,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Capp-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cclient-page.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cerror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Clayout-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cnot-found-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Crender-from-template-context.js%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779566919095,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":15270,"timestamp":294961824556,"id":3012,"parentId":3010,"tags":{"request":"./node_modules/next/dist/client/app-next-dev.js"},"startTime":1779566919095,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":15159,"timestamp":294961824677,"id":3018,"parentId":3010,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779566919095,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":47429,"timestamp":294961792745,"id":3010,"parentId":3009,"tags":{},"startTime":1779566919063,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":1257,"timestamp":294961849377,"id":3029,"parentId":3028,"tags":{},"startTime":1779566919120,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":10,"timestamp":294961850675,"id":3031,"parentId":3028,"tags":{},"startTime":1779566919121,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":68,"timestamp":294961850867,"id":3032,"parentId":3028,"tags":{},"startTime":1779566919121,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":23,"timestamp":294961850985,"id":3033,"parentId":3028,"tags":{},"startTime":1779566919121,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":6,"timestamp":294961851031,"id":3034,"parentId":3028,"tags":{},"startTime":1779566919121,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":1627,"timestamp":294961850664,"id":3030,"parentId":3028,"tags":{},"startTime":1779566919121,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":198,"timestamp":294961853427,"id":3035,"parentId":3028,"tags":{},"startTime":1779566919124,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":5704,"timestamp":294961853643,"id":3036,"parentId":3028,"tags":{},"startTime":1779566919124,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":7387,"timestamp":294961868705,"id":3037,"parentId":3028,"tags":{},"startTime":1779566919139,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":314,"timestamp":294961876088,"id":3038,"parentId":3028,"tags":{},"startTime":1779566919146,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":112,"timestamp":294961876378,"id":3039,"parentId":3028,"tags":{},"startTime":1779566919147,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":11464,"timestamp":294961876503,"id":3040,"parentId":3028,"tags":{},"startTime":1779566919147,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-generateClientManifest","duration":280,"timestamp":294961889131,"id":3042,"parentId":3009,"tags":{},"startTime":1779566919159,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-createassets","duration":456,"timestamp":294961888975,"id":3041,"parentId":3009,"tags":{},"startTime":1779566919159,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":47652,"timestamp":294961847063,"id":3028,"parentId":3009,"tags":{},"startTime":1779566919117,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":102953,"timestamp":294961791828,"id":3009,"parentId":2956,"tags":{"name":"client"},"startTime":1779566919062,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":35611,"timestamp":294961894829,"id":3043,"parentId":2956,"tags":{},"startTime":1779566919165,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-client","duration":560636,"timestamp":294961375459,"id":2956,"parentId":3,"tags":{"trigger":"manual"},"startTime":1779566918646,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":16,"timestamp":294961946179,"id":3046,"parentId":3,"tags":{},"startTime":1779566919216,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":2,"timestamp":294961946358,"id":3047,"parentId":3,"tags":{},"startTime":1779566919217,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":31644,"timestamp":294961969349,"id":3049,"parentId":3045,"tags":{"request":"next-app-loader?name=app%2Fauth%2Fpage&page=%2Fauth%2Fpage&appPaths=%2Fauth%2Fpage&pagePath=private-next-app-dir%2Fauth%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779566919240,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":31660,"timestamp":294961969365,"id":3050,"parentId":3045,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fcurriculum%2Fpage&page=%2Fadmin%2Fcurriculum%2Fpage&appPaths=%2Fadmin%2Fcurriculum%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fcurriculum%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779566919240,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":31662,"timestamp":294961969377,"id":3051,"parentId":3045,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fsession%2Fpage&page=%2Fapp%2Fsession%2Fpage&appPaths=%2Fapp%2Fsession%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fsession%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779566919240,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":31657,"timestamp":294961969390,"id":3052,"parentId":3045,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fprofile%2Fpage&page=%2Fapp%2Fprofile%2Fpage&appPaths=%2Fapp%2Fprofile%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fprofile%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779566919240,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":31654,"timestamp":294961969402,"id":3053,"parentId":3045,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2Fpage&page=%2Fapp%2Flibrary%2Fpage&appPaths=%2Fapp%2Flibrary%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779566919240,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":31660,"timestamp":294961969425,"id":3055,"parentId":3045,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fdocuments%2Fpage&page=%2Fadmin%2Fdocuments%2Fpage&appPaths=%2Fadmin%2Fdocuments%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fdocuments%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779566919240,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":32782,"timestamp":294961969249,"id":3048,"parentId":3045,"tags":{"request":"next-app-loader?name=app%2F_not-found%2Fpage&page=%2F_not-found%2Fpage&appPaths=&pagePath=..%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fnot-found-error.js&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779566919239,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":32727,"timestamp":294961969412,"id":3054,"parentId":3045,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fpage&page=%2Fadmin%2Fpage&appPaths=%2Fadmin%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779566919240,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":133960,"timestamp":294961941629,"id":3045,"parentId":3044,"tags":{},"startTime":1779566919212,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":2747,"timestamp":294962080466,"id":3086,"parentId":3085,"tags":{},"startTime":1779566919351,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":13,"timestamp":294962083272,"id":3088,"parentId":3085,"tags":{},"startTime":1779566919353,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":10037,"timestamp":294962083328,"id":3089,"parentId":3085,"tags":{},"startTime":1779566919354,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":16,"timestamp":294962093446,"id":3090,"parentId":3085,"tags":{},"startTime":1779566919364,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":10,"timestamp":294962093509,"id":3091,"parentId":3085,"tags":{},"startTime":1779566919364,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":11394,"timestamp":294962083255,"id":3087,"parentId":3085,"tags":{},"startTime":1779566919353,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":334,"timestamp":294962096698,"id":3092,"parentId":3085,"tags":{},"startTime":1779566919367,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":4556,"timestamp":294962097067,"id":3093,"parentId":3085,"tags":{},"startTime":1779566919367,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":5175,"timestamp":294962104022,"id":3094,"parentId":3085,"tags":{},"startTime":1779566919374,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":422,"timestamp":294962109191,"id":3095,"parentId":3085,"tags":{},"startTime":1779566919379,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":175,"timestamp":294962109577,"id":3096,"parentId":3085,"tags":{},"startTime":1779566919380,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":822,"timestamp":294962109768,"id":3097,"parentId":3085,"tags":{},"startTime":1779566919380,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":38044,"timestamp":294962078817,"id":3085,"parentId":3044,"tags":{},"startTime":1779566919349,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":188305,"timestamp":294961941192,"id":3044,"parentId":3,"tags":{"name":"server"},"startTime":1779566919211,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":21669,"timestamp":294962129684,"id":3098,"parentId":3,"tags":{},"startTime":1779566919400,"traceId":"0ca0f7fe408e086a"},{"name":"compile-path","duration":797802,"timestamp":294961354478,"id":2952,"tags":{"trigger":"/admin/documents","isTurbopack":false},"startTime":1779566918625,"traceId":"0ca0f7fe408e086a"}] [{"name":"handle-request","duration":900205,"timestamp":294961346712,"id":2950,"tags":{"url":"/admin/documents?_rsc=r08mk","isTurbopack":false},"startTime":1779566918617,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":6,"timestamp":294962247006,"id":3099,"parentId":2950,"tags":{"url":"/admin/documents?_rsc=r08mk","memory.rss":"489410560","memory.heapUsed":"269704936","memory.heapTotal":"299487232"},"startTime":1779566919517,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":883129,"timestamp":294961367027,"id":2955,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779566918637,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":3,"timestamp":294962250246,"id":3100,"parentId":2955,"tags":{"url":"/icons/192.png","memory.rss":"489422848","memory.heapUsed":"269841784","memory.heapTotal":"299487232"},"startTime":1779566919520,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":46573,"timestamp":294962253370,"id":3101,"tags":{"url":"/admin/documents?_rsc=1s5w9","isTurbopack":false},"startTime":1779566919524,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":3,"timestamp":294962300000,"id":3102,"parentId":3101,"tags":{"url":"/admin/documents?_rsc=1s5w9","memory.rss":"491851776","memory.heapUsed":"264127344","memory.heapTotal":"302534656"},"startTime":1779566919570,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":63633,"timestamp":294962375476,"id":3103,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779566919646,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":294962439166,"id":3104,"parentId":3103,"tags":{"url":"/icons/192.png","memory.rss":"491851776","memory.heapUsed":"270646704","memory.heapTotal":"302534656"},"startTime":1779566919709,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":98068,"timestamp":295010864905,"id":3111,"parentId":3109,"tags":{"request":"next-app-loader?name=app%2Fauth%2Fpage&page=%2Fauth%2Fpage&appPaths=%2Fauth%2Fpage&pagePath=private-next-app-dir%2Fauth%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779566968136,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":98085,"timestamp":295010864926,"id":3113,"parentId":3109,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fsession%2Fpage&page=%2Fapp%2Fsession%2Fpage&appPaths=%2Fapp%2Fsession%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fsession%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779566968136,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":98109,"timestamp":295010864940,"id":3115,"parentId":3109,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fprofile%2Fpage&page=%2Fapp%2Fprofile%2Fpage&appPaths=%2Fapp%2Fprofile%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fprofile%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779566968136,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":98115,"timestamp":295010864947,"id":3116,"parentId":3109,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2Fpage&page=%2Fapp%2Flibrary%2Fpage&appPaths=%2Fapp%2Flibrary%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779566968136,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":98115,"timestamp":295010864957,"id":3117,"parentId":3109,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fdocuments%2Fpage&page=%2Fadmin%2Fdocuments%2Fpage&appPaths=%2Fadmin%2Fdocuments%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fdocuments%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779566968136,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":101273,"timestamp":295010864934,"id":3114,"parentId":3109,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fpage&page=%2Fadmin%2Fpage&appPaths=%2Fadmin%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779566968136,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":101712,"timestamp":295010864919,"id":3112,"parentId":3109,"tags":{"request":"next-app-loader?name=app%2Fpage&page=%2Fpage&appPaths=%2Fpage&pagePath=private-next-app-dir%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779566968136,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":102424,"timestamp":295010864763,"id":3110,"parentId":3109,"tags":{"request":"next-app-loader?name=app%2F_not-found%2Fpage&page=%2F_not-found%2Fpage&appPaths=&pagePath=..%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fnot-found-error.js&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779566968136,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":162112,"timestamp":295010852849,"id":3109,"parentId":3108,"tags":{},"startTime":1779566968124,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":2591,"timestamp":295011016793,"id":3147,"parentId":3146,"tags":{},"startTime":1779566968288,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":5,"timestamp":295011019412,"id":3149,"parentId":3146,"tags":{},"startTime":1779566968291,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":3263,"timestamp":295011019431,"id":3150,"parentId":3146,"tags":{},"startTime":1779566968291,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":9,"timestamp":295011022726,"id":3151,"parentId":3146,"tags":{},"startTime":1779566968294,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":3,"timestamp":295011022746,"id":3152,"parentId":3146,"tags":{},"startTime":1779566968294,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":4023,"timestamp":295011019405,"id":3148,"parentId":3146,"tags":{},"startTime":1779566968291,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":384,"timestamp":295011024344,"id":3153,"parentId":3146,"tags":{},"startTime":1779566968296,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":1110,"timestamp":295011024742,"id":3154,"parentId":3146,"tags":{},"startTime":1779566968296,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":1341,"timestamp":295011027086,"id":3155,"parentId":3146,"tags":{},"startTime":1779566968298,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":131,"timestamp":295011028424,"id":3156,"parentId":3146,"tags":{},"startTime":1779566968300,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":45,"timestamp":295011028546,"id":3157,"parentId":3146,"tags":{},"startTime":1779566968300,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":345,"timestamp":295011028595,"id":3158,"parentId":3146,"tags":{},"startTime":1779566968300,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":15456,"timestamp":295011016170,"id":3146,"parentId":3108,"tags":{},"startTime":1779566968287,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":186763,"timestamp":295010852302,"id":3108,"parentId":3106,"tags":{"name":"server"},"startTime":1779566968124,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":7614,"timestamp":295011039336,"id":3159,"parentId":3106,"tags":{},"startTime":1779566968311,"traceId":"0ca0f7fe408e086a"},{"name":"compile-path","duration":199489,"timestamp":295010848011,"id":3107,"tags":{"trigger":"/","isTurbopack":false},"startTime":1779566968119,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-server","duration":199665,"timestamp":295010847957,"id":3106,"parentId":3,"tags":{"trigger":"manual"},"startTime":1779566968119,"traceId":"0ca0f7fe408e086a"}] +[{"name":"handle-request","duration":342725,"timestamp":295010833300,"id":3105,"tags":{"url":"/","isTurbopack":false},"startTime":1779566968105,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":3,"timestamp":295011176098,"id":3161,"parentId":3105,"tags":{"url":"/","memory.rss":"481464320","memory.heapUsed":"255875088","memory.heapTotal":"284712960"},"startTime":1779566968447,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":61286,"timestamp":295011164391,"id":3160,"tags":{"url":"/auth","isTurbopack":false},"startTime":1779566968436,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":0,"timestamp":295011225713,"id":3162,"parentId":3160,"tags":{"url":"/auth","memory.rss":"484245504","memory.heapUsed":"251838120","memory.heapTotal":"287682560"},"startTime":1779566968497,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":7,"timestamp":295011548018,"id":3163,"parentId":3,"tags":{},"startTime":1779566968819,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":1,"timestamp":295011548231,"id":3164,"parentId":3,"tags":{},"startTime":1779566968820,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":23012,"timestamp":295032793945,"id":3165,"tags":{"url":"/admin?_rsc=1rqwo","isTurbopack":false},"startTime":1779566990065,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":295032816994,"id":3166,"parentId":3165,"tags":{"url":"/admin?_rsc=1rqwo","memory.rss":"497082368","memory.heapUsed":"238847464","memory.heapTotal":"287522816"},"startTime":1779566990088,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":12276,"timestamp":295032821324,"id":3167,"tags":{"url":"/admin?_rsc=d43c0","isTurbopack":false},"startTime":1779566990092,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":295032833663,"id":3168,"parentId":3167,"tags":{"url":"/admin?_rsc=d43c0","memory.rss":"497082368","memory.heapUsed":"243118600","memory.heapTotal":"287522816"},"startTime":1779566990105,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":24596,"timestamp":295032861773,"id":3169,"tags":{"url":"/admin/documents?_rsc=r08mk","isTurbopack":false},"startTime":1779566990133,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":295032886410,"id":3170,"parentId":3169,"tags":{"url":"/admin/documents?_rsc=r08mk","memory.rss":"497491968","memory.heapUsed":"247477280","memory.heapTotal":"287928320"},"startTime":1779566990157,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":13188,"timestamp":295032889957,"id":3171,"tags":{"url":"/admin/documents?_rsc=1s5w9","isTurbopack":false},"startTime":1779566990161,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":295032903172,"id":3172,"parentId":3171,"tags":{"url":"/admin/documents?_rsc=1s5w9","memory.rss":"496889856","memory.heapUsed":"237929424","memory.heapTotal":"287326208"},"startTime":1779566990174,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":69608,"timestamp":295170800524,"id":3173,"tags":{"url":"/admin/documents","isTurbopack":false},"startTime":1779567128072,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":295170870188,"id":3174,"parentId":3173,"tags":{"url":"/admin/documents","memory.rss":"379850752","memory.heapUsed":"226362696","memory.heapTotal":"241065984"},"startTime":1779567128141,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":8,"timestamp":295171267382,"id":3175,"parentId":3,"tags":{},"startTime":1779567128539,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":8,"timestamp":295171271487,"id":3176,"parentId":3,"tags":{},"startTime":1779567128543,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":80376,"timestamp":295227047939,"id":3177,"tags":{"url":"/admin/documents","isTurbopack":false},"startTime":1779567184319,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":295227128408,"id":3178,"parentId":3177,"tags":{"url":"/admin/documents","memory.rss":"371687424","memory.heapUsed":"227537864","memory.heapTotal":"244211712"},"startTime":1779567184399,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":8,"timestamp":295227578314,"id":3179,"parentId":3,"tags":{},"startTime":1779567184849,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":10,"timestamp":295227581947,"id":3180,"parentId":3,"tags":{},"startTime":1779567184853,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":52454,"timestamp":295240054381,"id":3181,"tags":{"url":"/admin/documents","isTurbopack":false},"startTime":1779567197325,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":0,"timestamp":295240106864,"id":3182,"parentId":3181,"tags":{"url":"/admin/documents","memory.rss":"372387840","memory.heapUsed":"228451744","memory.heapTotal":"242376704"},"startTime":1779567197378,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":9,"timestamp":295240483763,"id":3183,"parentId":3,"tags":{},"startTime":1779567197755,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":6,"timestamp":295240490155,"id":3184,"parentId":3,"tags":{},"startTime":1779567197761,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":76591,"timestamp":295279091679,"id":3191,"parentId":3189,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2Fpage&page=%2Fapp%2Flibrary%2Fpage&appPaths=%2Fapp%2Flibrary%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567236363,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":76620,"timestamp":295279091694,"id":3193,"parentId":3189,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fprofile%2Fpage&page=%2Fapp%2Fprofile%2Fpage&appPaths=%2Fapp%2Fprofile%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fprofile%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567236363,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":76682,"timestamp":295279091701,"id":3194,"parentId":3189,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fsession%2Fpage&page=%2Fapp%2Fsession%2Fpage&appPaths=%2Fapp%2Fsession%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fsession%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567236363,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":76698,"timestamp":295279091711,"id":3195,"parentId":3189,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fdocuments%2Fpage&page=%2Fadmin%2Fdocuments%2Fpage&appPaths=%2Fadmin%2Fdocuments%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fdocuments%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567236363,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":111282,"timestamp":295279091596,"id":3190,"parentId":3189,"tags":{"request":"next-app-loader?name=app%2Fauth%2Fpage&page=%2Fauth%2Fpage&appPaths=%2Fauth%2Fpage&pagePath=private-next-app-dir%2Fauth%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567236362,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":123863,"timestamp":295279091688,"id":3192,"parentId":3189,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fknowledge%2Fpage&page=%2Fadmin%2Fknowledge%2Fpage&appPaths=%2Fadmin%2Fknowledge%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fknowledge%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567236363,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":268635,"timestamp":295279084825,"id":3189,"parentId":3188,"tags":{},"startTime":1779567236356,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":3528,"timestamp":295279356848,"id":3220,"parentId":3219,"tags":{},"startTime":1779567236628,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":6,"timestamp":295279360414,"id":3222,"parentId":3219,"tags":{},"startTime":1779567236631,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":2613,"timestamp":295279360435,"id":3223,"parentId":3219,"tags":{},"startTime":1779567236631,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":15,"timestamp":295279363087,"id":3224,"parentId":3219,"tags":{},"startTime":1779567236634,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":4,"timestamp":295279363124,"id":3225,"parentId":3219,"tags":{},"startTime":1779567236634,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":3429,"timestamp":295279360402,"id":3221,"parentId":3219,"tags":{},"startTime":1779567236631,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":453,"timestamp":295279364798,"id":3226,"parentId":3219,"tags":{},"startTime":1779567236636,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":1406,"timestamp":295279365267,"id":3227,"parentId":3219,"tags":{},"startTime":1779567236636,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":1355,"timestamp":295279367708,"id":3228,"parentId":3219,"tags":{},"startTime":1779567236639,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":128,"timestamp":295279369061,"id":3229,"parentId":3219,"tags":{},"startTime":1779567236640,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":45,"timestamp":295279369180,"id":3230,"parentId":3219,"tags":{},"startTime":1779567236640,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":7418,"timestamp":295279369229,"id":3231,"parentId":3219,"tags":{},"startTime":1779567236640,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":24970,"timestamp":295279355322,"id":3219,"parentId":3188,"tags":{},"startTime":1779567236626,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":300843,"timestamp":295279083925,"id":3188,"parentId":3186,"tags":{"name":"server"},"startTime":1779567236355,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":17902,"timestamp":295279384835,"id":3232,"parentId":3186,"tags":{},"startTime":1779567236656,"traceId":"0ca0f7fe408e086a"},{"name":"compile-path","duration":323073,"timestamp":295279081021,"id":3187,"tags":{"trigger":"/admin/knowledge","isTurbopack":false},"startTime":1779567236352,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-server","duration":323486,"timestamp":295279080992,"id":3186,"parentId":3,"tags":{"trigger":"manual"},"startTime":1779567236352,"traceId":"0ca0f7fe408e086a"}] +[{"name":"handle-request","duration":374184,"timestamp":295279076380,"id":3185,"tags":{"url":"/admin/knowledge?_rsc=15z2o","isTurbopack":false},"startTime":1779567236347,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":295279450637,"id":3233,"parentId":3185,"tags":{"url":"/admin/knowledge?_rsc=15z2o","memory.rss":"362295296","memory.heapUsed":"240425472","memory.heapTotal":"281808896"},"startTime":1779567236722,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":16152,"timestamp":295279456450,"id":3234,"tags":{"url":"/admin/knowledge?_rsc=g58oh","isTurbopack":false},"startTime":1779567236727,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":64,"timestamp":295279472647,"id":3235,"parentId":3234,"tags":{"url":"/admin/knowledge?_rsc=g58oh","memory.rss":"362303488","memory.heapUsed":"244775456","memory.heapTotal":"281808896"},"startTime":1779567236744,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":83664,"timestamp":295284278363,"id":3236,"tags":{"url":"/admin/knowledge","isTurbopack":false},"startTime":1779567241549,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":0,"timestamp":295284362059,"id":3237,"parentId":3236,"tags":{"url":"/admin/knowledge","memory.rss":"363106304","memory.heapUsed":"245592760","memory.heapTotal":"284168192"},"startTime":1779567241633,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":11,"timestamp":295284727966,"id":3238,"parentId":3,"tags":{},"startTime":1779567241999,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":10,"timestamp":295284736875,"id":3239,"parentId":3,"tags":{},"startTime":1779567242008,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":13290,"timestamp":295288368872,"id":3246,"parentId":3244,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fprofile%2Fpage&page=%2Fapp%2Fprofile%2Fpage&appPaths=%2Fapp%2Fprofile%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fprofile%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567245640,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":13306,"timestamp":295288368878,"id":3247,"parentId":3244,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fdocuments%2Fpage&page=%2Fadmin%2Fdocuments%2Fpage&appPaths=%2Fadmin%2Fdocuments%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fdocuments%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567245640,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":13307,"timestamp":295288368882,"id":3248,"parentId":3244,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2Fpage&page=%2Fapp%2Flibrary%2Fpage&appPaths=%2Fapp%2Flibrary%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567245640,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":13303,"timestamp":295288368890,"id":3250,"parentId":3244,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fknowledge%2Fpage&page=%2Fadmin%2Fknowledge%2Fpage&appPaths=%2Fadmin%2Fknowledge%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fknowledge%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567245640,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":16951,"timestamp":295288368793,"id":3245,"parentId":3244,"tags":{"request":"next-app-loader?name=app%2Fauth%2Fpage&page=%2Fauth%2Fpage&appPaths=%2Fauth%2Fpage&pagePath=private-next-app-dir%2Fauth%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567245640,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":18108,"timestamp":295288368886,"id":3249,"parentId":3244,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fcurriculum%2Fpage&page=%2Fadmin%2Fcurriculum%2Fpage&appPaths=%2Fadmin%2Fcurriculum%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fcurriculum%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567245640,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":54848,"timestamp":295288363325,"id":3244,"parentId":3243,"tags":{},"startTime":1779567245634,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":2245,"timestamp":295288420527,"id":3275,"parentId":3274,"tags":{},"startTime":1779567245691,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":2,"timestamp":295288422802,"id":3277,"parentId":3274,"tags":{},"startTime":1779567245694,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":2599,"timestamp":295288422907,"id":3278,"parentId":3274,"tags":{},"startTime":1779567245694,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":27,"timestamp":295288425571,"id":3279,"parentId":3274,"tags":{},"startTime":1779567245696,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":4,"timestamp":295288425635,"id":3280,"parentId":3274,"tags":{},"startTime":1779567245697,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":3411,"timestamp":295288422794,"id":3276,"parentId":3274,"tags":{},"startTime":1779567245694,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":617,"timestamp":295288427063,"id":3281,"parentId":3274,"tags":{},"startTime":1779567245698,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":2414,"timestamp":295288427708,"id":3282,"parentId":3274,"tags":{},"startTime":1779567245699,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":1798,"timestamp":295288432214,"id":3283,"parentId":3274,"tags":{},"startTime":1779567245703,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":306,"timestamp":295288434010,"id":3284,"parentId":3274,"tags":{},"startTime":1779567245705,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":55,"timestamp":295288434304,"id":3285,"parentId":3274,"tags":{},"startTime":1779567245705,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":766,"timestamp":295288434364,"id":3286,"parentId":3274,"tags":{},"startTime":1779567245705,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":17996,"timestamp":295288419913,"id":3274,"parentId":3243,"tags":{},"startTime":1779567245691,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":78154,"timestamp":295288363084,"id":3243,"parentId":3241,"tags":{"name":"server"},"startTime":1779567245634,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":7329,"timestamp":295288441293,"id":3287,"parentId":3241,"tags":{},"startTime":1779567245712,"traceId":"0ca0f7fe408e086a"},{"name":"compile-path","duration":87468,"timestamp":295288361577,"id":3242,"tags":{"trigger":"/admin/curriculum","isTurbopack":false},"startTime":1779567245632,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-server","duration":87607,"timestamp":295288361556,"id":3241,"parentId":3,"tags":{"trigger":"manual"},"startTime":1779567245632,"traceId":"0ca0f7fe408e086a"}] +[{"name":"handle-request","duration":129234,"timestamp":295288358862,"id":3240,"tags":{"url":"/admin/curriculum?_rsc=1est4","isTurbopack":false},"startTime":1779567245630,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":295288488152,"id":3288,"parentId":3240,"tags":{"url":"/admin/curriculum?_rsc=1est4","memory.rss":"368717824","memory.heapUsed":"256349176","memory.heapTotal":"291454976"},"startTime":1779567245759,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":13676,"timestamp":295288493025,"id":3289,"tags":{"url":"/admin/curriculum?_rsc=90jz0","isTurbopack":false},"startTime":1779567245764,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":295288506732,"id":3290,"parentId":3289,"tags":{"url":"/admin/curriculum?_rsc=90jz0","memory.rss":"368713728","memory.heapUsed":"260668848","memory.heapTotal":"291454976"},"startTime":1779567245778,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":13861,"timestamp":295289675095,"id":3291,"tags":{"url":"/admin/documents?_rsc=e47e7","isTurbopack":false},"startTime":1779567246946,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":295289688989,"id":3292,"parentId":3291,"tags":{"url":"/admin/documents?_rsc=e47e7","memory.rss":"370053120","memory.heapUsed":"254272032","memory.heapTotal":"294645760"},"startTime":1779567246960,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":11791,"timestamp":295289692798,"id":3293,"tags":{"url":"/admin/documents?_rsc=1s5w9","isTurbopack":false},"startTime":1779567246964,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":295289704643,"id":3294,"parentId":3293,"tags":{"url":"/admin/documents?_rsc=1s5w9","memory.rss":"370122752","memory.heapUsed":"258357768","memory.heapTotal":"294645760"},"startTime":1779567246976,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":101996,"timestamp":295291733337,"id":3295,"tags":{"url":"/admin/documents","isTurbopack":false},"startTime":1779567249004,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":295291835394,"id":3296,"parentId":3295,"tags":{"url":"/admin/documents","memory.rss":"371834880","memory.heapUsed":"255980872","memory.heapTotal":"296742912"},"startTime":1779567249106,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":8,"timestamp":295292183759,"id":3297,"parentId":3,"tags":{},"startTime":1779567249455,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":5,"timestamp":295292185280,"id":3298,"parentId":3,"tags":{},"startTime":1779567249456,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":96026,"timestamp":295331944826,"id":3304,"parentId":3301,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fprofile%2Fpage&page=%2Fapp%2Fprofile%2Fpage&appPaths=%2Fapp%2Fprofile%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fprofile%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567289216,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":96036,"timestamp":295331944855,"id":3305,"parentId":3301,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2Fpage&page=%2Fapp%2Flibrary%2Fpage&appPaths=%2Fapp%2Flibrary%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567289216,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":96042,"timestamp":295331944869,"id":3306,"parentId":3301,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fdocuments%2Fpage&page=%2Fadmin%2Fdocuments%2Fpage&appPaths=%2Fadmin%2Fdocuments%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fdocuments%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567289216,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":96049,"timestamp":295331944882,"id":3307,"parentId":3301,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fknowledge%2Fpage&page=%2Fadmin%2Fknowledge%2Fpage&appPaths=%2Fadmin%2Fknowledge%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fknowledge%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567289216,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":98096,"timestamp":295331944895,"id":3308,"parentId":3301,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fcurriculum%2Fpage&page=%2Fadmin%2Fcurriculum%2Fpage&appPaths=%2Fadmin%2Fcurriculum%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fcurriculum%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567289216,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":101292,"timestamp":295331944483,"id":3303,"parentId":3301,"tags":{"request":"next-app-loader?name=app%2Fauth%2Fpage&page=%2Fauth%2Fpage&appPaths=%2Fauth%2Fpage&pagePath=private-next-app-dir%2Fauth%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567289215,"traceId":"0ca0f7fe408e086a"},{"name":"next-swc-transform","duration":4135,"timestamp":295332141803,"id":3334,"parentId":3333,"tags":{},"startTime":1779567289413,"traceId":"0ca0f7fe408e086a"},{"name":"next-swc-loader","duration":4416,"timestamp":295332141546,"id":3333,"parentId":3332,"tags":{},"startTime":1779567289412,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-ts","duration":14014,"timestamp":295332140819,"id":3332,"parentId":3300,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\lib\\services.ts","layer":"ssr"},"startTime":1779567289412,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":262686,"timestamp":295331897115,"id":3301,"parentId":3300,"tags":{},"startTime":1779567289168,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":4367,"timestamp":295332164193,"id":3336,"parentId":3335,"tags":{},"startTime":1779567289435,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":27,"timestamp":295332168677,"id":3338,"parentId":3335,"tags":{},"startTime":1779567289440,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":17121,"timestamp":295332168762,"id":3339,"parentId":3335,"tags":{},"startTime":1779567289440,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":172,"timestamp":295332186048,"id":3340,"parentId":3335,"tags":{},"startTime":1779567289457,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":49,"timestamp":295332186449,"id":3341,"parentId":3335,"tags":{},"startTime":1779567289457,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":20630,"timestamp":295332168646,"id":3337,"parentId":3335,"tags":{},"startTime":1779567289440,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":1362,"timestamp":295332191470,"id":3342,"parentId":3335,"tags":{},"startTime":1779567289462,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":3247,"timestamp":295332192914,"id":3343,"parentId":3335,"tags":{},"startTime":1779567289464,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":2813,"timestamp":295332200047,"id":3344,"parentId":3335,"tags":{},"startTime":1779567289471,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":305,"timestamp":295332202856,"id":3345,"parentId":3335,"tags":{},"startTime":1779567289474,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":94,"timestamp":295332203144,"id":3346,"parentId":3335,"tags":{},"startTime":1779567289474,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":2568,"timestamp":295332203249,"id":3347,"parentId":3335,"tags":{},"startTime":1779567289474,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":47341,"timestamp":295332163048,"id":3335,"parentId":3300,"tags":{},"startTime":1779567289434,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":323636,"timestamp":295331896558,"id":3300,"parentId":3299,"tags":{"name":"server"},"startTime":1779567289167,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":30740,"timestamp":295332220329,"id":3348,"parentId":3299,"tags":{},"startTime":1779567289491,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-server","duration":384259,"timestamp":295331868975,"id":3299,"parentId":3,"tags":{"trigger":"src/lib/services.ts"},"startTime":1779567289140,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":14606,"timestamp":295332301079,"id":3353,"parentId":3350,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779567289572,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":14506,"timestamp":295332301205,"id":3357,"parentId":3350,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779567289572,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":14289,"timestamp":295332301426,"id":3362,"parentId":3350,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779567289572,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":17533,"timestamp":295332301503,"id":3365,"parentId":3350,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567289572,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":20757,"timestamp":295332300808,"id":3351,"parentId":3350,"tags":{"request":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\compiled\\@next\\react-refresh-utils\\dist\\runtime.js"},"startTime":1779567289572,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":21409,"timestamp":295332301360,"id":3360,"parentId":3350,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cknowledge%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567289572,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":21411,"timestamp":295332301450,"id":3363,"parentId":3350,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567289572,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":21481,"timestamp":295332301529,"id":3366,"parentId":3350,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Cprofile%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567289572,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":25261,"timestamp":295332301257,"id":3359,"parentId":3350,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cdocuments%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567289572,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":25846,"timestamp":295332301113,"id":3354,"parentId":3350,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Cstylesheet.css%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cglobals.css%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567289572,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":25808,"timestamp":295332301178,"id":3356,"parentId":3350,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cauth%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567289572,"traceId":"0ca0f7fe408e086a"},{"name":"next-swc-transform","duration":7527,"timestamp":295332321377,"id":3369,"parentId":3368,"tags":{},"startTime":1779567289592,"traceId":"0ca0f7fe408e086a"},{"name":"next-swc-loader","duration":7696,"timestamp":295332321222,"id":3368,"parentId":3367,"tags":{},"startTime":1779567289592,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-ts","duration":21191,"timestamp":295332320352,"id":3367,"parentId":3349,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\lib\\services.ts","layer":"app-pages-browser"},"startTime":1779567289591,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":42011,"timestamp":295332301395,"id":3361,"parentId":3350,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Ccurriculum%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567289572,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":42337,"timestamp":295332301477,"id":3364,"parentId":3350,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Csession%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567289572,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":50496,"timestamp":295332301146,"id":3355,"parentId":3350,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Capp-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cclient-page.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cerror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Clayout-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cnot-found-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Crender-from-template-context.js%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567289572,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":50801,"timestamp":295332301024,"id":3352,"parentId":3350,"tags":{"request":"./node_modules/next/dist/client/app-next-dev.js"},"startTime":1779567289572,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":50612,"timestamp":295332301231,"id":3358,"parentId":3350,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567289572,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":89294,"timestamp":295332262743,"id":3350,"parentId":3349,"tags":{},"startTime":1779567289534,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":4639,"timestamp":295332555134,"id":3371,"parentId":3370,"tags":{},"startTime":1779567289826,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":28,"timestamp":295332559917,"id":3373,"parentId":3370,"tags":{},"startTime":1779567289831,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":211,"timestamp":295332560298,"id":3374,"parentId":3370,"tags":{},"startTime":1779567289831,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":38,"timestamp":295332560625,"id":3375,"parentId":3370,"tags":{},"startTime":1779567289832,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":157,"timestamp":295332560728,"id":3376,"parentId":3370,"tags":{},"startTime":1779567289832,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":4018,"timestamp":295332559885,"id":3372,"parentId":3370,"tags":{},"startTime":1779567289831,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":1719,"timestamp":295332566952,"id":3377,"parentId":3370,"tags":{},"startTime":1779567289838,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":6314,"timestamp":295332568807,"id":3378,"parentId":3370,"tags":{},"startTime":1779567289840,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":10655,"timestamp":295332584205,"id":3379,"parentId":3370,"tags":{},"startTime":1779567289855,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":312,"timestamp":295332594857,"id":3380,"parentId":3370,"tags":{},"startTime":1779567289866,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":120,"timestamp":295332595148,"id":3381,"parentId":3370,"tags":{},"startTime":1779567289866,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":18295,"timestamp":295332595280,"id":3382,"parentId":3370,"tags":{},"startTime":1779567289866,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-generateClientManifest","duration":857,"timestamp":295332623892,"id":3384,"parentId":3349,"tags":{},"startTime":1779567289895,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-createassets","duration":1608,"timestamp":295332623167,"id":3383,"parentId":3349,"tags":{},"startTime":1779567289894,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":78710,"timestamp":295332552626,"id":3370,"parentId":3349,"tags":{},"startTime":1779567289824,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":370292,"timestamp":295332261330,"id":3349,"parentId":3302,"tags":{"name":"client"},"startTime":1779567289532,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":52316,"timestamp":295332632336,"id":3385,"parentId":3302,"tags":{},"startTime":1779567289903,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-client","duration":784753,"timestamp":295331903572,"id":3302,"parentId":3,"tags":{"trigger":"src/lib/services.ts"},"startTime":1779567289174,"traceId":"0ca0f7fe408e086a"}] +[{"name":"client-success","duration":3,"timestamp":295332692170,"id":3387,"parentId":3,"tags":{},"startTime":1779567289963,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":887000,"timestamp":295331905814,"id":3388,"parentId":3,"tags":{"updatedModules":["[project]/node_modules/next/dist/build/webpack/loaders/next-client-pages-loader.js?absolutePagePath=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Cnode_modules%5Cnext%5Cdist%5Cclient%5Ccomponents%5Cnot-found-error.js&page=%2F_not-found%2Fpage!","[project]/node_modules/next/dist/client/components/not-found-error.js","[project]/src/lib/services.ts","[project]/src/lib/hooks/useIngestionStatus.ts","[project]/src/components/admin/DocumentUpload.tsx"],"page":"/admin/documents","isPageHidden":true},"startTime":1779567290065,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":921000,"timestamp":295331906160,"id":3389,"parentId":3,"tags":{"updatedModules":["[project]/node_modules/next/dist/build/webpack/loaders/next-client-pages-loader.js?absolutePagePath=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Cnode_modules%5Cnext%5Cdist%5Cclient%5Ccomponents%5Cnot-found-error.js&page=%2F_not-found%2Fpage!","[project]/node_modules/next/dist/client/components/not-found-error.js","[project]/src/lib/services.ts","[project]/src/lib/hooks/useIngestionStatus.ts","[project]/src/components/admin/DocumentUpload.tsx"],"page":"/admin/documents","isPageHidden":true},"startTime":1779567290107,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":44895,"timestamp":295340805724,"id":3395,"parentId":3392,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779567298076,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":44739,"timestamp":295340805909,"id":3399,"parentId":3392,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779567298077,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":43635,"timestamp":295340807017,"id":3404,"parentId":3392,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779567298078,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":51939,"timestamp":295340807142,"id":3407,"parentId":3392,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567298078,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":63378,"timestamp":295340804142,"id":3393,"parentId":3392,"tags":{"request":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\compiled\\@next\\react-refresh-utils\\dist\\runtime.js"},"startTime":1779567298075,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":64987,"timestamp":295340806445,"id":3402,"parentId":3392,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cknowledge%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567298077,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":64564,"timestamp":295340806938,"id":3403,"parentId":3392,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Ccurriculum%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567298078,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":64534,"timestamp":295340807061,"id":3405,"parentId":3392,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567298078,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":64608,"timestamp":295340807182,"id":3408,"parentId":3392,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Cprofile%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567298078,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":78833,"timestamp":295340805990,"id":3401,"parentId":3392,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cdocuments%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567298077,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":87779,"timestamp":295340807103,"id":3406,"parentId":3392,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Csession%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567298078,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":107043,"timestamp":295340805820,"id":3397,"parentId":3392,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Capp-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cclient-page.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cerror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Clayout-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cnot-found-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Crender-from-template-context.js%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567298077,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":112179,"timestamp":295340805867,"id":3398,"parentId":3392,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cauth%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567298077,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":112138,"timestamp":295340805946,"id":3400,"parentId":3392,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567298077,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":113146,"timestamp":295340805559,"id":3394,"parentId":3392,"tags":{"request":"./node_modules/next/dist/client/app-next-dev.js"},"startTime":1779567298076,"traceId":"0ca0f7fe408e086a"},{"name":"read-resource","duration":1815,"timestamp":295341125737,"id":3412,"parentId":3411,"tags":{},"startTime":1779567298396,"traceId":"0ca0f7fe408e086a"},{"name":"postcss-process","duration":129057,"timestamp":295341128885,"id":3414,"parentId":3413,"tags":{},"startTime":1779567298400,"traceId":"0ca0f7fe408e086a"},{"name":"postcss-loader","duration":132710,"timestamp":295341127685,"id":3413,"parentId":3411,"tags":{},"startTime":1779567298398,"traceId":"0ca0f7fe408e086a"},{"name":"css-loader","duration":32079,"timestamp":295341261318,"id":3415,"parentId":3411,"tags":{"astUsed":"true"},"startTime":1779567298532,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-css","duration":179610,"timestamp":295341125041,"id":3411,"parentId":3410,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css.webpack[javascript/auto]!=!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\build\\webpack\\loaders\\css-loader\\src\\index.js??ruleSet[1].rules[14].oneOf[12].use[2]!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\build\\webpack\\loaders\\postcss-loader\\src\\index.js??ruleSet[1].rules[14].oneOf[12].use[3]!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css","layer":null},"startTime":1779567298396,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-css","duration":484960,"timestamp":295340851234,"id":3410,"parentId":3391,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css","layer":"app-pages-browser"},"startTime":1779567298122,"traceId":"0ca0f7fe408e086a"},{"name":"build-module","duration":270,"timestamp":295341336748,"id":3416,"parentId":3410,"tags":{},"startTime":1779567298607,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":531340,"timestamp":295340805778,"id":3396,"parentId":3392,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Cstylesheet.css%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cglobals.css%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567298076,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":540620,"timestamp":295340796555,"id":3392,"parentId":3391,"tags":{},"startTime":1779567298067,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":6536,"timestamp":295341346840,"id":3418,"parentId":3417,"tags":{},"startTime":1779567298618,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":63,"timestamp":295341353574,"id":3420,"parentId":3417,"tags":{},"startTime":1779567298624,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":408,"timestamp":295341354100,"id":3421,"parentId":3417,"tags":{},"startTime":1779567298625,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":38,"timestamp":295341354645,"id":3422,"parentId":3417,"tags":{},"startTime":1779567298625,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":26,"timestamp":295341354789,"id":3423,"parentId":3417,"tags":{},"startTime":1779567298625,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":6230,"timestamp":295341353531,"id":3419,"parentId":3417,"tags":{},"startTime":1779567298624,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":3065,"timestamp":295341364006,"id":3424,"parentId":3417,"tags":{},"startTime":1779567298635,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":11742,"timestamp":295341367223,"id":3425,"parentId":3417,"tags":{},"startTime":1779567298638,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":18687,"timestamp":295341391847,"id":3426,"parentId":3417,"tags":{},"startTime":1779567298663,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":292,"timestamp":295341410532,"id":3427,"parentId":3417,"tags":{},"startTime":1779567298681,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":110,"timestamp":295341410804,"id":3428,"parentId":3417,"tags":{},"startTime":1779567298681,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":7372,"timestamp":295341410924,"id":3429,"parentId":3417,"tags":{},"startTime":1779567298682,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-generateClientManifest","duration":345,"timestamp":295341420586,"id":3431,"parentId":3391,"tags":{},"startTime":1779567298691,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-createassets","duration":696,"timestamp":295341420268,"id":3430,"parentId":3391,"tags":{},"startTime":1779567298691,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":83418,"timestamp":295341342404,"id":3417,"parentId":3391,"tags":{},"startTime":1779567298613,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":632533,"timestamp":295340793390,"id":3391,"parentId":3390,"tags":{"name":"client"},"startTime":1779567298064,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":76984,"timestamp":295341425972,"id":3432,"parentId":3390,"tags":{},"startTime":1779567298697,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-client","duration":743163,"timestamp":295340765301,"id":3390,"parentId":3,"tags":{"trigger":"src/components/admin/DocumentUpload.tsx.tmp.11120.203d6cfe708d"},"startTime":1779567298036,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":9,"timestamp":295341523811,"id":3436,"parentId":3,"tags":{},"startTime":1779567298795,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":2,"timestamp":295341523984,"id":3437,"parentId":3,"tags":{},"startTime":1779567298795,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":50000,"timestamp":295341524728,"id":3444,"parentId":3,"tags":{"updatedModules":[],"page":"/admin/documents","isPageHidden":true},"startTime":1779567298861,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":57000,"timestamp":295341523870,"id":3445,"parentId":3,"tags":{"updatedModules":[],"page":"/admin/documents","isPageHidden":true},"startTime":1779567298862,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":50064,"timestamp":295341553549,"id":3439,"parentId":3434,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fprofile%2Fpage&page=%2Fapp%2Fprofile%2Fpage&appPaths=%2Fapp%2Fprofile%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fprofile%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567298824,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":50083,"timestamp":295341553570,"id":3440,"parentId":3434,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2Fpage&page=%2Fapp%2Flibrary%2Fpage&appPaths=%2Fapp%2Flibrary%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567298824,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":50092,"timestamp":295341553583,"id":3441,"parentId":3434,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fdocuments%2Fpage&page=%2Fadmin%2Fdocuments%2Fpage&appPaths=%2Fadmin%2Fdocuments%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fdocuments%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567298824,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":50093,"timestamp":295341553595,"id":3442,"parentId":3434,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fknowledge%2Fpage&page=%2Fadmin%2Fknowledge%2Fpage&appPaths=%2Fadmin%2Fknowledge%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fknowledge%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567298824,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":50095,"timestamp":295341553606,"id":3443,"parentId":3434,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fcurriculum%2Fpage&page=%2Fadmin%2Fcurriculum%2Fpage&appPaths=%2Fadmin%2Fcurriculum%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fcurriculum%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567298824,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":51775,"timestamp":295341553326,"id":3438,"parentId":3434,"tags":{"request":"next-app-loader?name=app%2Fauth%2Fpage&page=%2Fauth%2Fpage&appPaths=%2Fauth%2Fpage&pagePath=private-next-app-dir%2Fauth%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567298824,"traceId":"0ca0f7fe408e086a"},{"name":"next-swc-transform","duration":8441,"timestamp":295341736321,"id":3471,"parentId":3470,"tags":{},"startTime":1779567299007,"traceId":"0ca0f7fe408e086a"},{"name":"next-swc-loader","duration":8734,"timestamp":295341736062,"id":3470,"parentId":3469,"tags":{},"startTime":1779567299007,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-tsx","duration":28961,"timestamp":295341735472,"id":3469,"parentId":3433,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\components\\admin\\DocumentUpload.tsx","layer":"ssr"},"startTime":1779567299006,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":276890,"timestamp":295341516971,"id":3434,"parentId":3433,"tags":{},"startTime":1779567298788,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":10728,"timestamp":295341802492,"id":3473,"parentId":3472,"tags":{},"startTime":1779567299073,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":10,"timestamp":295341813308,"id":3475,"parentId":3472,"tags":{},"startTime":1779567299084,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":15100,"timestamp":295341813362,"id":3476,"parentId":3472,"tags":{},"startTime":1779567299084,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":11,"timestamp":295341828535,"id":3477,"parentId":3472,"tags":{},"startTime":1779567299099,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":7,"timestamp":295341828578,"id":3478,"parentId":3472,"tags":{},"startTime":1779567299099,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":18206,"timestamp":295341813278,"id":3474,"parentId":3472,"tags":{},"startTime":1779567299084,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":1620,"timestamp":295341834554,"id":3479,"parentId":3472,"tags":{},"startTime":1779567299105,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":9468,"timestamp":295341836266,"id":3480,"parentId":3472,"tags":{},"startTime":1779567299107,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":14793,"timestamp":295341858683,"id":3481,"parentId":3472,"tags":{},"startTime":1779567299129,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":716,"timestamp":295341873469,"id":3482,"parentId":3472,"tags":{},"startTime":1779567299144,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":286,"timestamp":295341874118,"id":3483,"parentId":3472,"tags":{},"startTime":1779567299145,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":5758,"timestamp":295341874452,"id":3484,"parentId":3472,"tags":{},"startTime":1779567299145,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":98905,"timestamp":295341799459,"id":3472,"parentId":3433,"tags":{},"startTime":1779567299070,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":416913,"timestamp":295341516528,"id":3433,"parentId":3409,"tags":{"name":"server"},"startTime":1779567298787,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":25804,"timestamp":295341933746,"id":3485,"parentId":3409,"tags":{},"startTime":1779567299204,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-server","duration":1126462,"timestamp":295340833892,"id":3409,"parentId":3,"tags":{"trigger":"src/components/admin/DocumentUpload.tsx"},"startTime":1779567298105,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":6989,"timestamp":295341992121,"id":3490,"parentId":3487,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779567299263,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":6971,"timestamp":295341992164,"id":3494,"parentId":3487,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779567299263,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":6930,"timestamp":295341992209,"id":3499,"parentId":3487,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779567299263,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":9893,"timestamp":295341992236,"id":3502,"parentId":3487,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567299263,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":12564,"timestamp":295341991980,"id":3488,"parentId":3487,"tags":{"request":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\compiled\\@next\\react-refresh-utils\\dist\\runtime.js"},"startTime":1779567299263,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":13557,"timestamp":295341992191,"id":3497,"parentId":3487,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cknowledge%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567299263,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":13691,"timestamp":295341992200,"id":3498,"parentId":3487,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Ccurriculum%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567299263,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":13760,"timestamp":295341992217,"id":3500,"parentId":3487,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567299263,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":13874,"timestamp":295341992244,"id":3503,"parentId":3487,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Cprofile%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567299263,"traceId":"0ca0f7fe408e086a"},{"name":"read-resource","duration":140,"timestamp":295342008059,"id":3509,"parentId":3508,"tags":{},"startTime":1779567299279,"traceId":"0ca0f7fe408e086a"},{"name":"postcss-process","duration":32788,"timestamp":295342008503,"id":3511,"parentId":3510,"tags":{},"startTime":1779567299279,"traceId":"0ca0f7fe408e086a"},{"name":"postcss-loader","duration":33131,"timestamp":295342008374,"id":3510,"parentId":3508,"tags":{},"startTime":1779567299279,"traceId":"0ca0f7fe408e086a"},{"name":"css-loader","duration":9026,"timestamp":295342041579,"id":3512,"parentId":3508,"tags":{"astUsed":"true"},"startTime":1779567299312,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-css","duration":46881,"timestamp":295342007274,"id":3508,"parentId":3504,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css.webpack[javascript/auto]!=!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\build\\webpack\\loaders\\css-loader\\src\\index.js??ruleSet[1].rules[14].oneOf[12].use[2]!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\build\\webpack\\loaders\\postcss-loader\\src\\index.js??ruleSet[1].rules[14].oneOf[12].use[3]!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css","layer":null},"startTime":1779567299278,"traceId":"0ca0f7fe408e086a"},{"name":"next-swc-transform","duration":50600,"timestamp":295342004097,"id":3507,"parentId":3506,"tags":{},"startTime":1779567299275,"traceId":"0ca0f7fe408e086a"},{"name":"next-swc-loader","duration":50794,"timestamp":295342003916,"id":3506,"parentId":3505,"tags":{},"startTime":1779567299275,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-tsx","duration":61933,"timestamp":295342003397,"id":3505,"parentId":3486,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\components\\admin\\DocumentUpload.tsx","layer":"app-pages-browser"},"startTime":1779567299274,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":85065,"timestamp":295341992154,"id":3493,"parentId":3487,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cauth%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567299263,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":90317,"timestamp":295341992227,"id":3501,"parentId":3487,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Csession%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567299263,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-css","duration":90239,"timestamp":295341999620,"id":3504,"parentId":3486,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css","layer":"app-pages-browser"},"startTime":1779567299270,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":98131,"timestamp":295341992181,"id":3496,"parentId":3487,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cdocuments%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567299263,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":98426,"timestamp":295341992142,"id":3492,"parentId":3487,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Capp-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cclient-page.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cerror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Clayout-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cnot-found-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Crender-from-template-context.js%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567299263,"traceId":"0ca0f7fe408e086a"},{"name":"build-module","duration":61,"timestamp":295342090691,"id":3513,"parentId":3504,"tags":{},"startTime":1779567299361,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":98665,"timestamp":295341992104,"id":3489,"parentId":3487,"tags":{"request":"./node_modules/next/dist/client/app-next-dev.js"},"startTime":1779567299263,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":98604,"timestamp":295341992172,"id":3495,"parentId":3487,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567299263,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":98666,"timestamp":295341992132,"id":3491,"parentId":3487,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Cstylesheet.css%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cglobals.css%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567299263,"traceId":"0ca0f7fe408e086a"}] +[{"name":"make","duration":126745,"timestamp":295341964755,"id":3487,"parentId":3486,"tags":{},"startTime":1779567299235,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":1946,"timestamp":295342098626,"id":3515,"parentId":3514,"tags":{},"startTime":1779567299369,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":8,"timestamp":295342100617,"id":3517,"parentId":3514,"tags":{},"startTime":1779567299371,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":109,"timestamp":295342100647,"id":3518,"parentId":3514,"tags":{},"startTime":1779567299371,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":10,"timestamp":295342100798,"id":3519,"parentId":3514,"tags":{},"startTime":1779567299371,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":7,"timestamp":295342100843,"id":3520,"parentId":3514,"tags":{},"startTime":1779567299372,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":1658,"timestamp":295342100605,"id":3516,"parentId":3514,"tags":{},"startTime":1779567299371,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":508,"timestamp":295342103501,"id":3521,"parentId":3514,"tags":{},"startTime":1779567299374,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":3898,"timestamp":295342104026,"id":3522,"parentId":3514,"tags":{},"startTime":1779567299375,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":11510,"timestamp":295342112154,"id":3523,"parentId":3514,"tags":{},"startTime":1779567299383,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":364,"timestamp":295342123661,"id":3524,"parentId":3514,"tags":{},"startTime":1779567299394,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":130,"timestamp":295342123998,"id":3525,"parentId":3514,"tags":{},"startTime":1779567299395,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":15171,"timestamp":295342124139,"id":3526,"parentId":3514,"tags":{},"startTime":1779567299395,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-generateClientManifest","duration":84,"timestamp":295342141842,"id":3528,"parentId":3486,"tags":{},"startTime":1779567299413,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-createassets","duration":197,"timestamp":295342141740,"id":3527,"parentId":3486,"tags":{},"startTime":1779567299412,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":51647,"timestamp":295342096034,"id":3514,"parentId":3486,"tags":{},"startTime":1779567299367,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":183670,"timestamp":295341964086,"id":3486,"parentId":3435,"tags":{"name":"client"},"startTime":1779567299235,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":58855,"timestamp":295342147803,"id":3529,"parentId":3435,"tags":{},"startTime":1779567299418,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-client","duration":691548,"timestamp":295341520727,"id":3435,"parentId":3,"tags":{"trigger":"src/components/admin/DocumentUpload.tsx"},"startTime":1779567298791,"traceId":"0ca0f7fe408e086a"}] +[{"name":"client-success","duration":33,"timestamp":295342235669,"id":3530,"parentId":3,"tags":{},"startTime":1779567299506,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":6,"timestamp":295342248370,"id":3533,"parentId":3,"tags":{},"startTime":1779567299519,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":836000,"timestamp":295341524384,"id":3534,"parentId":3,"tags":{"updatedModules":["[project]/src/components/admin/DocumentUpload.tsx"],"page":"/admin/documents","isPageHidden":true},"startTime":1779567299808,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":852000,"timestamp":295341524031,"id":3535,"parentId":3,"tags":{"updatedModules":["[project]/src/components/admin/DocumentUpload.tsx"],"page":"/admin/documents","isPageHidden":true},"startTime":1779567299809,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":301357,"timestamp":295342247934,"id":3532,"tags":{"url":"/admin/documents?_rsc=5jcsg","isTurbopack":false},"startTime":1779567299519,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":10,"timestamp":295342549460,"id":3536,"parentId":3532,"tags":{"url":"/admin/documents?_rsc=5jcsg","memory.rss":"459964416","memory.heapUsed":"274750112","memory.heapTotal":"310906880"},"startTime":1779567299820,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":312612,"timestamp":295342239367,"id":3531,"tags":{"url":"/admin/documents?_rsc=135zp","isTurbopack":false},"startTime":1779567299510,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":9,"timestamp":295342552114,"id":3537,"parentId":3531,"tags":{"url":"/admin/documents?_rsc=135zp","memory.rss":"459964416","memory.heapUsed":"274828408","memory.heapTotal":"310906880"},"startTime":1779567299823,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":122423,"timestamp":295570741312,"id":3538,"tags":{"url":"/admin/documents","isTurbopack":false},"startTime":1779567528012,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":3,"timestamp":295570863793,"id":3539,"parentId":3538,"tags":{"url":"/admin/documents","memory.rss":"408416256","memory.heapUsed":"242789848","memory.heapTotal":"259153920"},"startTime":1779567528135,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":7,"timestamp":295571353454,"id":3540,"parentId":3,"tags":{},"startTime":1779567528625,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":9,"timestamp":295571356236,"id":3541,"parentId":3,"tags":{},"startTime":1779567528627,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":99251,"timestamp":295659775468,"id":3542,"tags":{"url":"/admin/documents","isTurbopack":false},"startTime":1779567617047,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":5,"timestamp":295659874812,"id":3543,"parentId":3542,"tags":{"url":"/admin/documents","memory.rss":"408936448","memory.heapUsed":"244243032","memory.heapTotal":"259940352"},"startTime":1779567617146,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":13,"timestamp":295660470683,"id":3544,"parentId":3,"tags":{},"startTime":1779567617742,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":14,"timestamp":295660487283,"id":3545,"parentId":3,"tags":{},"startTime":1779567617759,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":10954,"timestamp":295660521694,"id":3554,"parentId":3551,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779567617793,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":10870,"timestamp":295660521800,"id":3558,"parentId":3551,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779567617793,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":10758,"timestamp":295660521916,"id":3563,"parentId":3551,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779567617793,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":14694,"timestamp":295660522006,"id":3566,"parentId":3551,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567617793,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":14718,"timestamp":295660522068,"id":3568,"parentId":3551,"tags":{"request":"next-client-pages-loader?absolutePagePath=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Cnode_modules%5Cnext%5Cdist%5Cclient%5Ccomponents%5Cnot-found-error.js&page=%2F_not-found%2Fpage!"},"startTime":1779567617794,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":17736,"timestamp":295660521400,"id":3552,"parentId":3551,"tags":{"request":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\compiled\\@next\\react-refresh-utils\\dist\\runtime.js"},"startTime":1779567617793,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":18913,"timestamp":295660521853,"id":3561,"parentId":3551,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cknowledge%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567617793,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":18948,"timestamp":295660521884,"id":3562,"parentId":3551,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Ccurriculum%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567617793,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":18952,"timestamp":295660521945,"id":3564,"parentId":3551,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567617793,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":19023,"timestamp":295660522037,"id":3567,"parentId":3551,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Cprofile%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567617793,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":22267,"timestamp":295660521822,"id":3560,"parentId":3551,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cdocuments%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567617793,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":22616,"timestamp":295660521733,"id":3555,"parentId":3551,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Cstylesheet.css%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cglobals.css%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567617793,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":30167,"timestamp":295660521976,"id":3565,"parentId":3551,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Csession%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567617793,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":34528,"timestamp":295660521770,"id":3556,"parentId":3551,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Capp-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cclient-page.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cerror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Clayout-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cnot-found-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Crender-from-template-context.js%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567617793,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":35229,"timestamp":295660521789,"id":3557,"parentId":3551,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cauth%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567617793,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":35252,"timestamp":295660521811,"id":3559,"parentId":3551,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567617793,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":36982,"timestamp":295660521640,"id":3553,"parentId":3551,"tags":{"request":"./node_modules/next/dist/client/app-next-dev.js"},"startTime":1779567617793,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":42320,"timestamp":295660516476,"id":3551,"parentId":3550,"tags":{},"startTime":1779567617788,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":5174,"timestamp":295660650887,"id":3570,"parentId":3569,"tags":{},"startTime":1779567617922,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":68,"timestamp":295660656157,"id":3572,"parentId":3569,"tags":{},"startTime":1779567617928,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":144,"timestamp":295660656280,"id":3573,"parentId":3569,"tags":{},"startTime":1779567617928,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":22,"timestamp":295660656496,"id":3574,"parentId":3569,"tags":{},"startTime":1779567617928,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":15,"timestamp":295660656567,"id":3575,"parentId":3569,"tags":{},"startTime":1779567617928,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":3171,"timestamp":295660656128,"id":3571,"parentId":3569,"tags":{},"startTime":1779567617928,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":614,"timestamp":295660661737,"id":3576,"parentId":3569,"tags":{},"startTime":1779567617933,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":9785,"timestamp":295660662391,"id":3577,"parentId":3569,"tags":{},"startTime":1779567617934,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":16638,"timestamp":295660678907,"id":3578,"parentId":3569,"tags":{},"startTime":1779567617950,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":917,"timestamp":295660695541,"id":3579,"parentId":3569,"tags":{},"startTime":1779567617967,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":229,"timestamp":295660696404,"id":3580,"parentId":3569,"tags":{},"startTime":1779567617968,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":14794,"timestamp":295660696667,"id":3581,"parentId":3569,"tags":{},"startTime":1779567617968,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-generateClientManifest","duration":572,"timestamp":295660716309,"id":3583,"parentId":3550,"tags":{},"startTime":1779567617988,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-createassets","duration":989,"timestamp":295660715930,"id":3582,"parentId":3550,"tags":{},"startTime":1779567617987,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":83199,"timestamp":295660647915,"id":3569,"parentId":3550,"tags":{},"startTime":1779567617919,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":215274,"timestamp":295660516035,"id":3550,"parentId":3547,"tags":{"name":"client"},"startTime":1779567617787,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":72599,"timestamp":295660731433,"id":3584,"parentId":3547,"tags":{},"startTime":1779567618003,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-client","duration":295310,"timestamp":295660511240,"id":3547,"parentId":3,"tags":{"trigger":"manual"},"startTime":1779567617783,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":7,"timestamp":295660821226,"id":3587,"parentId":3,"tags":{},"startTime":1779567618093,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":4,"timestamp":295660821497,"id":3588,"parentId":3,"tags":{},"startTime":1779567618093,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":339000,"timestamp":295660512318,"id":3595,"parentId":3,"tags":{"updatedModules":[],"page":"/admin/documents","isPageHidden":false},"startTime":1779567618137,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":401000,"timestamp":295660512909,"id":3596,"parentId":3,"tags":{"updatedModules":[],"page":"/admin/documents","isPageHidden":true},"startTime":1779567618241,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":125596,"timestamp":295660845820,"id":3591,"parentId":3586,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fdocuments%2Fpage&page=%2Fadmin%2Fdocuments%2Fpage&appPaths=%2Fadmin%2Fdocuments%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fdocuments%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567618117,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":125609,"timestamp":295660845834,"id":3592,"parentId":3586,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fknowledge%2Fpage&page=%2Fadmin%2Fknowledge%2Fpage&appPaths=%2Fadmin%2Fknowledge%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fknowledge%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567618117,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":125613,"timestamp":295660845846,"id":3593,"parentId":3586,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fprofile%2Fpage&page=%2Fapp%2Fprofile%2Fpage&appPaths=%2Fapp%2Fprofile%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fprofile%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567618117,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":125609,"timestamp":295660845859,"id":3594,"parentId":3586,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2Fpage&page=%2Fapp%2Flibrary%2Fpage&appPaths=%2Fapp%2Flibrary%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567618117,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":129449,"timestamp":295660845796,"id":3590,"parentId":3586,"tags":{"request":"next-app-loader?name=app%2Fauth%2Fpage&page=%2Fauth%2Fpage&appPaths=%2Fauth%2Fpage&pagePath=private-next-app-dir%2Fauth%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567618117,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":130533,"timestamp":295660845610,"id":3589,"parentId":3586,"tags":{"request":"next-app-loader?name=app%2F_not-found%2Fpage&page=%2F_not-found%2Fpage&appPaths=&pagePath=..%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fnot-found-error.js&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567618117,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":230668,"timestamp":295660812907,"id":3586,"parentId":3585,"tags":{},"startTime":1779567618084,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":10662,"timestamp":295661050275,"id":3619,"parentId":3618,"tags":{},"startTime":1779567618322,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":34,"timestamp":295661061070,"id":3621,"parentId":3618,"tags":{},"startTime":1779567618333,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":15893,"timestamp":295661061592,"id":3622,"parentId":3618,"tags":{},"startTime":1779567618333,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":37,"timestamp":295661077610,"id":3623,"parentId":3618,"tags":{},"startTime":1779567618349,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":29,"timestamp":295661077750,"id":3624,"parentId":3618,"tags":{},"startTime":1779567618349,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":20042,"timestamp":295661061029,"id":3620,"parentId":3618,"tags":{},"startTime":1779567618332,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":1550,"timestamp":295661093450,"id":3625,"parentId":3618,"tags":{},"startTime":1779567618365,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":6898,"timestamp":295661095080,"id":3626,"parentId":3618,"tags":{},"startTime":1779567618367,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":2391,"timestamp":295661106401,"id":3627,"parentId":3618,"tags":{},"startTime":1779567618378,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":223,"timestamp":295661108788,"id":3628,"parentId":3618,"tags":{},"startTime":1779567618380,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":89,"timestamp":295661108992,"id":3629,"parentId":3618,"tags":{},"startTime":1779567618380,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":7133,"timestamp":295661109089,"id":3630,"parentId":3618,"tags":{},"startTime":1779567618381,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":80190,"timestamp":295661047396,"id":3618,"parentId":3585,"tags":{},"startTime":1779567618319,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":334393,"timestamp":295660811925,"id":3585,"parentId":3549,"tags":{"name":"server"},"startTime":1779567618083,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":36536,"timestamp":295661146518,"id":3631,"parentId":3549,"tags":{},"startTime":1779567618418,"traceId":"0ca0f7fe408e086a"},{"name":"compile-path","duration":675913,"timestamp":295660511304,"id":3548,"tags":{"trigger":"/_not-found","isTurbopack":false},"startTime":1779567617783,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-server","duration":677106,"timestamp":295660511763,"id":3549,"parentId":3,"tags":{"trigger":"manual"},"startTime":1779567617783,"traceId":"0ca0f7fe408e086a"}] +[{"name":"handle-request","duration":951040,"timestamp":295660506065,"id":3546,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779567617778,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":4,"timestamp":295661457211,"id":3632,"parentId":3546,"tags":{"url":"/icons/192.png","memory.rss":"328593408","memory.heapUsed":"243560728","memory.heapTotal":"275464192"},"startTime":1779567618729,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":30577,"timestamp":295682974691,"id":3633,"tags":{"url":"/admin/knowledge?_rsc=15z2o","isTurbopack":false},"startTime":1779567640246,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":295683005304,"id":3634,"parentId":3633,"tags":{"url":"/admin/knowledge?_rsc=15z2o","memory.rss":"327876608","memory.heapUsed":"238106064","memory.heapTotal":"249487360"},"startTime":1779567640277,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":30416,"timestamp":295683010377,"id":3635,"tags":{"url":"/admin/knowledge?_rsc=g58oh","isTurbopack":false},"startTime":1779567640282,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":295683040815,"id":3636,"parentId":3635,"tags":{"url":"/admin/knowledge?_rsc=g58oh","memory.rss":"327880704","memory.heapUsed":"238521512","memory.heapTotal":"259973120"},"startTime":1779567640312,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":23643,"timestamp":295688613837,"id":3637,"tags":{"url":"/admin/documents?_rsc=1057p","isTurbopack":false},"startTime":1779567645885,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":4,"timestamp":295688637524,"id":3638,"parentId":3637,"tags":{"url":"/admin/documents?_rsc=1057p","memory.rss":"328323072","memory.heapUsed":"237552472","memory.heapTotal":"260382720"},"startTime":1779567645909,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":37917,"timestamp":295719544029,"id":3639,"tags":{"url":"/admin/knowledge?_rsc=1qz6g","isTurbopack":false},"startTime":1779567676815,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":295719581972,"id":3640,"parentId":3639,"tags":{"url":"/admin/knowledge?_rsc=1qz6g","memory.rss":"328323072","memory.heapUsed":"241923480","memory.heapTotal":"260382720"},"startTime":1779567676853,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":37108,"timestamp":295721359957,"id":3641,"tags":{"url":"/admin/knowledge","isTurbopack":false},"startTime":1779567678631,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":295721397096,"id":3642,"parentId":3641,"tags":{"url":"/admin/knowledge","memory.rss":"377425920","memory.heapUsed":"222501600","memory.heapTotal":"247242752"},"startTime":1779567678669,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":11,"timestamp":295721693449,"id":3643,"parentId":3,"tags":{},"startTime":1779567678965,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":7,"timestamp":295721697733,"id":3644,"parentId":3,"tags":{},"startTime":1779567678969,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":88482,"timestamp":295727136667,"id":3651,"parentId":3649,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2Fpage&page=%2Fapp%2Flibrary%2Fpage&appPaths=%2Fapp%2Flibrary%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567684408,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":88488,"timestamp":295727136673,"id":3652,"parentId":3649,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fprofile%2Fpage&page=%2Fapp%2Fprofile%2Fpage&appPaths=%2Fapp%2Fprofile%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fprofile%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567684408,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":88490,"timestamp":295727136677,"id":3653,"parentId":3649,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fdocuments%2Fpage&page=%2Fadmin%2Fdocuments%2Fpage&appPaths=%2Fadmin%2Fdocuments%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fdocuments%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567684408,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":88489,"timestamp":295727136682,"id":3654,"parentId":3649,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fknowledge%2Fpage&page=%2Fadmin%2Fknowledge%2Fpage&appPaths=%2Fadmin%2Fknowledge%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fknowledge%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567684408,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":93870,"timestamp":295727136617,"id":3650,"parentId":3649,"tags":{"request":"next-app-loader?name=app%2Fauth%2Fpage&page=%2Fauth%2Fpage&appPaths=%2Fauth%2Fpage&pagePath=private-next-app-dir%2Fauth%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567684408,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":160750,"timestamp":295727136686,"id":3655,"parentId":3649,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fpage&page=%2Fapp%2Fpage&appPaths=%2Fapp%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567684408,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":211283,"timestamp":295727130762,"id":3649,"parentId":3648,"tags":{},"startTime":1779567684402,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":2018,"timestamp":295727343840,"id":3680,"parentId":3679,"tags":{},"startTime":1779567684615,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":4,"timestamp":295727345880,"id":3682,"parentId":3679,"tags":{},"startTime":1779567684617,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":6266,"timestamp":295727345897,"id":3683,"parentId":3679,"tags":{},"startTime":1779567684617,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":5,"timestamp":295727352194,"id":3684,"parentId":3679,"tags":{},"startTime":1779567684624,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":2,"timestamp":295727352218,"id":3685,"parentId":3679,"tags":{},"startTime":1779567684624,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":7096,"timestamp":295727345873,"id":3681,"parentId":3679,"tags":{},"startTime":1779567684617,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":514,"timestamp":295727354607,"id":3686,"parentId":3679,"tags":{},"startTime":1779567684626,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":1622,"timestamp":295727355136,"id":3687,"parentId":3679,"tags":{},"startTime":1779567684627,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":771,"timestamp":295727357543,"id":3688,"parentId":3679,"tags":{},"startTime":1779567684629,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":127,"timestamp":295727358313,"id":3689,"parentId":3679,"tags":{},"startTime":1779567684630,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":77,"timestamp":295727358395,"id":3690,"parentId":3679,"tags":{},"startTime":1779567684630,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":2797,"timestamp":295727358476,"id":3691,"parentId":3679,"tags":{},"startTime":1779567684630,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":20735,"timestamp":295727343260,"id":3679,"parentId":3648,"tags":{},"startTime":1779567684615,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":237692,"timestamp":295727130549,"id":3648,"parentId":3646,"tags":{"name":"server"},"startTime":1779567684402,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":9188,"timestamp":295727368315,"id":3692,"parentId":3646,"tags":{},"startTime":1779567684640,"traceId":"0ca0f7fe408e086a"},{"name":"compile-path","duration":248969,"timestamp":295727129155,"id":3647,"tags":{"trigger":"/app","isTurbopack":false},"startTime":1779567684401,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-server","duration":249124,"timestamp":295727129131,"id":3646,"parentId":3,"tags":{"trigger":"manual"},"startTime":1779567684401,"traceId":"0ca0f7fe408e086a"}] +[{"name":"handle-request","duration":301611,"timestamp":295727126223,"id":3645,"tags":{"url":"/app?_rsc=1est4","isTurbopack":false},"startTime":1779567684398,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":295727427859,"id":3693,"parentId":3645,"tags":{"url":"/app?_rsc=1est4","memory.rss":"341323776","memory.heapUsed":"247549208","memory.heapTotal":"294178816"},"startTime":1779567684699,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":20409,"timestamp":295727432600,"id":3694,"tags":{"url":"/app?_rsc=1wlvp","isTurbopack":false},"startTime":1779567684704,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":4,"timestamp":295727453059,"id":3695,"parentId":3694,"tags":{"url":"/app?_rsc=1wlvp","memory.rss":"341360640","memory.heapUsed":"251977848","memory.heapTotal":"294178816"},"startTime":1779567684724,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":11444,"timestamp":295727507576,"id":3702,"parentId":3700,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2Fpage&page=%2Fapp%2Flibrary%2Fpage&appPaths=%2Fapp%2Flibrary%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567684779,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":11451,"timestamp":295727507582,"id":3703,"parentId":3700,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fdocuments%2Fpage&page=%2Fadmin%2Fdocuments%2Fpage&appPaths=%2Fadmin%2Fdocuments%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fdocuments%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567684779,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":11452,"timestamp":295727507586,"id":3704,"parentId":3700,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fprofile%2Fpage&page=%2Fapp%2Fprofile%2Fpage&appPaths=%2Fapp%2Fprofile%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fprofile%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567684779,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":11450,"timestamp":295727507590,"id":3705,"parentId":3700,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fknowledge%2Fpage&page=%2Fadmin%2Fknowledge%2Fpage&appPaths=%2Fadmin%2Fknowledge%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fknowledge%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567684779,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":14568,"timestamp":295727507594,"id":3706,"parentId":3700,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fpage&page=%2Fapp%2Fpage&appPaths=%2Fapp%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567684779,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":15771,"timestamp":295727507526,"id":3701,"parentId":3700,"tags":{"request":"next-app-loader?name=app%2Fauth%2Fpage&page=%2Fauth%2Fpage&appPaths=%2Fauth%2Fpage&pagePath=private-next-app-dir%2Fauth%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567684779,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":18187,"timestamp":295727507597,"id":3707,"parentId":3700,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fsession%2Fpage&page=%2Fapp%2Fsession%2Fpage&appPaths=%2Fapp%2Fsession%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fsession%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567684779,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":91990,"timestamp":295727497976,"id":3700,"parentId":3699,"tags":{},"startTime":1779567684769,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":1103,"timestamp":295727592471,"id":3736,"parentId":3735,"tags":{},"startTime":1779567684864,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":2,"timestamp":295727593590,"id":3738,"parentId":3735,"tags":{},"startTime":1779567684865,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":1951,"timestamp":295727593602,"id":3739,"parentId":3735,"tags":{},"startTime":1779567684865,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":4,"timestamp":295727595578,"id":3740,"parentId":3735,"tags":{},"startTime":1779567684867,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":2,"timestamp":295727595594,"id":3741,"parentId":3735,"tags":{},"startTime":1779567684867,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":2416,"timestamp":295727593585,"id":3737,"parentId":3735,"tags":{},"startTime":1779567684865,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":439,"timestamp":295727596562,"id":3742,"parentId":3735,"tags":{},"startTime":1779567684868,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":1308,"timestamp":295727597007,"id":3743,"parentId":3735,"tags":{},"startTime":1779567684868,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":684,"timestamp":295727598985,"id":3744,"parentId":3735,"tags":{},"startTime":1779567684870,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":99,"timestamp":295727599668,"id":3745,"parentId":3735,"tags":{},"startTime":1779567684871,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":39,"timestamp":295727599759,"id":3746,"parentId":3735,"tags":{},"startTime":1779567684871,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":3070,"timestamp":295727599800,"id":3747,"parentId":3735,"tags":{},"startTime":1779567684871,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":13307,"timestamp":295727591817,"id":3735,"parentId":3699,"tags":{},"startTime":1779567684863,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":111590,"timestamp":295727497402,"id":3699,"parentId":3697,"tags":{"name":"server"},"startTime":1779567684769,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":7729,"timestamp":295727609032,"id":3748,"parentId":3697,"tags":{},"startTime":1779567684880,"traceId":"0ca0f7fe408e086a"},{"name":"compile-path","duration":122136,"timestamp":295727495177,"id":3698,"tags":{"trigger":"/app/session","isTurbopack":false},"startTime":1779567684767,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-server","duration":122284,"timestamp":295727495145,"id":3697,"parentId":3,"tags":{"trigger":"manual"},"startTime":1779567684767,"traceId":"0ca0f7fe408e086a"}] +[{"name":"handle-request","duration":170620,"timestamp":295727490369,"id":3696,"tags":{"url":"/app/session?_rsc=ailj2","isTurbopack":false},"startTime":1779567684762,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":295727661023,"id":3749,"parentId":3696,"tags":{"url":"/app/session?_rsc=ailj2","memory.rss":"344317952","memory.heapUsed":"268976336","memory.heapTotal":"300445696"},"startTime":1779567684932,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":20186,"timestamp":295727664155,"id":3750,"tags":{"url":"/app/session?_rsc=1tpc5","isTurbopack":false},"startTime":1779567684936,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":295727684360,"id":3751,"parentId":3750,"tags":{"url":"/app/session?_rsc=1tpc5","memory.rss":"343171072","memory.heapUsed":"263613816","memory.heapTotal":"301133824"},"startTime":1779567684956,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":99487,"timestamp":295730361771,"id":3752,"tags":{"url":"/app/session","isTurbopack":false},"startTime":1779567687633,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":7,"timestamp":295730461343,"id":3753,"parentId":3752,"tags":{"url":"/app/session","memory.rss":"344014848","memory.heapUsed":"274079936","memory.heapTotal":"301658112"},"startTime":1779567687733,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":6,"timestamp":295730775255,"id":3754,"parentId":3,"tags":{},"startTime":1779567688047,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":4,"timestamp":295730813336,"id":3755,"parentId":3,"tags":{},"startTime":1779567688085,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":15403,"timestamp":295732114052,"id":3756,"tags":{"url":"/app/profile?_rsc=wpb2v","isTurbopack":false},"startTime":1779567689385,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":295732129484,"id":3757,"parentId":3756,"tags":{"url":"/app/profile?_rsc=wpb2v","memory.rss":"359669760","memory.heapUsed":"273721064","memory.heapTotal":"310878208"},"startTime":1779567689401,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":13832,"timestamp":295732135101,"id":3758,"tags":{"url":"/app/profile?_rsc=1x941","isTurbopack":false},"startTime":1779567689407,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":5,"timestamp":295732149063,"id":3759,"parentId":3758,"tags":{"url":"/app/profile?_rsc=1x941","memory.rss":"359673856","memory.heapUsed":"277892928","memory.heapTotal":"310878208"},"startTime":1779567689420,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":14066,"timestamp":295741750050,"id":3760,"tags":{"url":"/app/library?_rsc=1eom9","isTurbopack":false},"startTime":1779567699022,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":295741764148,"id":3761,"parentId":3760,"tags":{"url":"/app/library?_rsc=1eom9","memory.rss":"360124416","memory.heapUsed":"283239480","memory.heapTotal":"311578624"},"startTime":1779567699036,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":16848,"timestamp":295741767061,"id":3762,"tags":{"url":"/app/library?_rsc=1up0c","isTurbopack":false},"startTime":1779567699039,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":295741783944,"id":3763,"parentId":3762,"tags":{"url":"/app/library?_rsc=1up0c","memory.rss":"360353792","memory.heapUsed":"274709456","memory.heapTotal":"312627200"},"startTime":1779567699055,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":81571,"timestamp":295756636371,"id":3764,"tags":{"url":"/app/profile","isTurbopack":false},"startTime":1779567713908,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":295756718012,"id":3765,"parentId":3764,"tags":{"url":"/app/profile","memory.rss":"352759808","memory.heapUsed":"283279280","memory.heapTotal":"312627200"},"startTime":1779567713989,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":7,"timestamp":295757041148,"id":3766,"parentId":3,"tags":{},"startTime":1779567714313,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":4,"timestamp":295757069247,"id":3767,"parentId":3,"tags":{},"startTime":1779567714341,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":31243,"timestamp":295758201441,"id":3768,"tags":{"url":"/auth","isTurbopack":false},"startTime":1779567715473,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":295758232720,"id":3769,"parentId":3768,"tags":{"url":"/auth","memory.rss":"354164736","memory.heapUsed":"273056736","memory.heapTotal":"288432128"},"startTime":1779567715504,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":10,"timestamp":295758523510,"id":3770,"parentId":3,"tags":{},"startTime":1779567715795,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":6,"timestamp":295758524399,"id":3771,"parentId":3,"tags":{},"startTime":1779567715796,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":26225,"timestamp":295777563653,"id":3772,"tags":{"url":"/app?_rsc=1rqwo","isTurbopack":false},"startTime":1779567734835,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":295777589919,"id":3773,"parentId":3772,"tags":{"url":"/app?_rsc=1rqwo","memory.rss":"354385920","memory.heapUsed":"273124568","memory.heapTotal":"281878528"},"startTime":1779567734861,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":36081,"timestamp":295777596937,"id":3774,"tags":{"url":"/app?_rsc=1wlvp","isTurbopack":false},"startTime":1779567734868,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":4,"timestamp":295777633083,"id":3775,"parentId":3774,"tags":{"url":"/app?_rsc=1wlvp","memory.rss":"354390016","memory.heapUsed":"273693328","memory.heapTotal":"281878528"},"startTime":1779567734905,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":18850,"timestamp":295777674570,"id":3776,"tags":{"url":"/app/session?_rsc=ailj2","isTurbopack":false},"startTime":1779567734946,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":295777693462,"id":3777,"parentId":3776,"tags":{"url":"/app/session?_rsc=ailj2","memory.rss":"354598912","memory.heapUsed":"275012072","memory.heapTotal":"285286400"},"startTime":1779567734965,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":14010,"timestamp":295777698039,"id":3778,"tags":{"url":"/app/session?_rsc=1tpc5","isTurbopack":false},"startTime":1779567734970,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":3,"timestamp":295777712091,"id":3779,"parentId":3778,"tags":{"url":"/app/session?_rsc=1tpc5","memory.rss":"354603008","memory.heapUsed":"274338192","memory.heapTotal":"285286400"},"startTime":1779567734984,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":19379,"timestamp":295779970402,"id":3780,"tags":{"url":"/app/library?_rsc=5qq1u","isTurbopack":false},"startTime":1779567737242,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":295779989810,"id":3781,"parentId":3780,"tags":{"url":"/app/library?_rsc=5qq1u","memory.rss":"354701312","memory.heapUsed":"273908344","memory.heapTotal":"285286400"},"startTime":1779567737261,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":12733,"timestamp":295779994892,"id":3782,"tags":{"url":"/app/library?_rsc=1up0c","isTurbopack":false},"startTime":1779567737266,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":4,"timestamp":295780007680,"id":3783,"parentId":3782,"tags":{"url":"/app/library?_rsc=1up0c","memory.rss":"354803712","memory.heapUsed":"274800640","memory.heapTotal":"285548544"},"startTime":1779567737279,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":60485,"timestamp":295782496414,"id":3784,"tags":{"url":"/app/library","isTurbopack":false},"startTime":1779567739768,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":3,"timestamp":295782556984,"id":3785,"parentId":3784,"tags":{"url":"/app/library","memory.rss":"355008512","memory.heapUsed":"275050528","memory.heapTotal":"290267136"},"startTime":1779567739828,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":10,"timestamp":295782904873,"id":3786,"parentId":3,"tags":{},"startTime":1779567740176,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":8,"timestamp":295782908575,"id":3787,"parentId":3,"tags":{},"startTime":1779567740180,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":56320,"timestamp":295787921719,"id":3788,"tags":{"url":"/app/library","isTurbopack":false},"startTime":1779567745193,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":3,"timestamp":295787978114,"id":3789,"parentId":3788,"tags":{"url":"/app/library","memory.rss":"358658048","memory.heapUsed":"244625088","memory.heapTotal":"280031232"},"startTime":1779567745250,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":7,"timestamp":295788307679,"id":3790,"parentId":3,"tags":{},"startTime":1779567745579,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":5,"timestamp":295788310927,"id":3791,"parentId":3,"tags":{},"startTime":1779567745582,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":22012,"timestamp":295789916544,"id":3792,"tags":{"url":"/app?_rsc=q0rh9","isTurbopack":false},"startTime":1779567747188,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":295789938590,"id":3793,"parentId":3792,"tags":{"url":"/app?_rsc=q0rh9","memory.rss":"359026688","memory.heapUsed":"244569128","memory.heapTotal":"280031232"},"startTime":1779567747210,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":13092,"timestamp":295789943757,"id":3794,"tags":{"url":"/app?_rsc=1us18","isTurbopack":false},"startTime":1779567747215,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":295789956888,"id":3795,"parentId":3794,"tags":{"url":"/app?_rsc=1us18","memory.rss":"359026688","memory.heapUsed":"241940096","memory.heapTotal":"280031232"},"startTime":1779567747228,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":21427,"timestamp":295789968611,"id":3796,"tags":{"url":"/app/session?_rsc=1tbmm","isTurbopack":false},"startTime":1779567747240,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":5,"timestamp":295789990149,"id":3797,"parentId":3796,"tags":{"url":"/app/session?_rsc=1tbmm","memory.rss":"359030784","memory.heapUsed":"245554640","memory.heapTotal":"280031232"},"startTime":1779567747262,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":18261,"timestamp":295789994129,"id":3798,"tags":{"url":"/app/session?_rsc=1tpc5","isTurbopack":false},"startTime":1779567747266,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":295790012422,"id":3799,"parentId":3798,"tags":{"url":"/app/session?_rsc=1tpc5","memory.rss":"359030784","memory.heapUsed":"243394376","memory.heapTotal":"280031232"},"startTime":1779567747284,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":64473,"timestamp":295855709336,"id":3800,"tags":{"url":"/app/session","isTurbopack":false},"startTime":1779567812980,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":4,"timestamp":295855773908,"id":3801,"parentId":3800,"tags":{"url":"/app/session","memory.rss":"359034880","memory.heapUsed":"242057736","memory.heapTotal":"265351168"},"startTime":1779567813044,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":7,"timestamp":295856088406,"id":3802,"parentId":3,"tags":{},"startTime":1779567813359,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":5,"timestamp":295856115532,"id":3803,"parentId":3,"tags":{},"startTime":1779567813386,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":17279,"timestamp":295857708461,"id":3804,"tags":{"url":"/app/library?_rsc=wpb2v","isTurbopack":false},"startTime":1779567814979,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":3,"timestamp":295857725786,"id":3805,"parentId":3804,"tags":{"url":"/app/library?_rsc=wpb2v","memory.rss":"359092224","memory.heapUsed":"244124928","memory.heapTotal":"267448320"},"startTime":1779567814996,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":9678,"timestamp":295857732268,"id":3806,"tags":{"url":"/app/library?_rsc=1up0c","isTurbopack":false},"startTime":1779567815002,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":295857741969,"id":3807,"parentId":3806,"tags":{"url":"/app/library?_rsc=1up0c","memory.rss":"359088128","memory.heapUsed":"243491920","memory.heapTotal":"267448320"},"startTime":1779567815012,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":66105,"timestamp":295859663578,"id":3814,"parentId":3812,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fprofile%2Fpage&page=%2Fapp%2Fprofile%2Fpage&appPaths=%2Fapp%2Fprofile%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fprofile%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567816934,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":66137,"timestamp":295859663584,"id":3815,"parentId":3812,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fdocuments%2Fpage&page=%2Fadmin%2Fdocuments%2Fpage&appPaths=%2Fadmin%2Fdocuments%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fdocuments%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567816934,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":66145,"timestamp":295859663589,"id":3816,"parentId":3812,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2Fpage&page=%2Fapp%2Flibrary%2Fpage&appPaths=%2Fapp%2Flibrary%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567816934,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":66152,"timestamp":295859663598,"id":3818,"parentId":3812,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fsession%2Fpage&page=%2Fapp%2Fsession%2Fpage&appPaths=%2Fapp%2Fsession%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fsession%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567816934,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":95283,"timestamp":295859663523,"id":3813,"parentId":3812,"tags":{"request":"next-app-loader?name=app%2Fauth%2Fpage&page=%2Fauth%2Fpage&appPaths=%2Fauth%2Fpage&pagePath=private-next-app-dir%2Fauth%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567816934,"traceId":"0ca0f7fe408e086a"},{"name":"build-module","duration":57859,"timestamp":295859727096,"id":3819,"parentId":3817,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\build\\webpack\\loaders\\next-app-loader.js?name=app%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&page=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&appPaths=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!","layer":"rsc"},"startTime":1779567816997,"traceId":"0ca0f7fe408e086a"},{"name":"next-swc-transform","duration":12275,"timestamp":295859789559,"id":3822,"parentId":3821,"tags":{},"startTime":1779567817060,"traceId":"0ca0f7fe408e086a"},{"name":"next-swc-loader","duration":12423,"timestamp":295859789419,"id":3821,"parentId":3820,"tags":{},"startTime":1779567817060,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-tsx","duration":13638,"timestamp":295859789107,"id":3820,"parentId":3819,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\app\\library\\[topicId]\\page.tsx","layer":"rsc"},"startTime":1779567817059,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":141924,"timestamp":295859663594,"id":3817,"parentId":3812,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&page=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&appPaths=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567816934,"traceId":"0ca0f7fe408e086a"},{"name":"build-module","duration":853,"timestamp":295859846051,"id":3847,"parentId":3811,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\build\\webpack\\loaders\\next-flight-client-entry-loader.js?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5C%5BtopicId%5D%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=true!","layer":"ssr"},"startTime":1779567817116,"traceId":"0ca0f7fe408e086a"},{"name":"next-swc-transform","duration":7986,"timestamp":295859849391,"id":3850,"parentId":3849,"tags":{},"startTime":1779567817120,"traceId":"0ca0f7fe408e086a"},{"name":"next-swc-loader","duration":8092,"timestamp":295859849294,"id":3849,"parentId":3848,"tags":{},"startTime":1779567817120,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-tsx","duration":14730,"timestamp":295859849032,"id":3848,"parentId":3847,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\app\\library\\[topicId]\\page.tsx","layer":"ssr"},"startTime":1779567817119,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":229675,"timestamp":295859656980,"id":3812,"parentId":3811,"tags":{},"startTime":1779567816927,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":2431,"timestamp":295859889718,"id":3852,"parentId":3851,"tags":{},"startTime":1779567817160,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":4,"timestamp":295859892184,"id":3854,"parentId":3851,"tags":{},"startTime":1779567817162,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":2663,"timestamp":295859892203,"id":3855,"parentId":3851,"tags":{},"startTime":1779567817162,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":9,"timestamp":295859894896,"id":3856,"parentId":3851,"tags":{},"startTime":1779567817165,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":2,"timestamp":295859894923,"id":3857,"parentId":3851,"tags":{},"startTime":1779567817165,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":3499,"timestamp":295859892172,"id":3853,"parentId":3851,"tags":{},"startTime":1779567817162,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":451,"timestamp":295859896546,"id":3858,"parentId":3851,"tags":{},"startTime":1779567817167,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":2527,"timestamp":295859897008,"id":3859,"parentId":3851,"tags":{},"startTime":1779567817167,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":753,"timestamp":295859900345,"id":3860,"parentId":3851,"tags":{},"startTime":1779567817171,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":97,"timestamp":295859901098,"id":3861,"parentId":3851,"tags":{},"startTime":1779567817171,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":40,"timestamp":295859901187,"id":3862,"parentId":3851,"tags":{},"startTime":1779567817171,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":5907,"timestamp":295859901230,"id":3863,"parentId":3851,"tags":{},"startTime":1779567817171,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":22342,"timestamp":295859888773,"id":3851,"parentId":3811,"tags":{},"startTime":1779567817159,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":259138,"timestamp":295859656731,"id":3811,"parentId":3809,"tags":{"name":"server"},"startTime":1779567816927,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":9326,"timestamp":295859915939,"id":3864,"parentId":3809,"tags":{},"startTime":1779567817186,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-server","duration":270671,"timestamp":295859655104,"id":3809,"parentId":3,"tags":{"trigger":"manual"},"startTime":1779567816925,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":2826,"timestamp":295859940049,"id":3869,"parentId":3866,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779567817210,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":2816,"timestamp":295859940066,"id":3873,"parentId":3866,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779567817210,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":2788,"timestamp":295859940094,"id":3878,"parentId":3866,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779567817210,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":4955,"timestamp":295859940105,"id":3881,"parentId":3866,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567817210,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":8501,"timestamp":295859939951,"id":3867,"parentId":3866,"tags":{"request":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\compiled\\@next\\react-refresh-utils\\dist\\runtime.js"},"startTime":1779567817210,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":9161,"timestamp":295859940086,"id":3876,"parentId":3866,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cknowledge%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567817210,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":9178,"timestamp":295859940090,"id":3877,"parentId":3866,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Ccurriculum%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567817210,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":9192,"timestamp":295859940098,"id":3879,"parentId":3866,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567817210,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":9235,"timestamp":295859940109,"id":3882,"parentId":3866,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Cprofile%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567817210,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":10283,"timestamp":295859940073,"id":3875,"parentId":3866,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cdocuments%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567817210,"traceId":"0ca0f7fe408e086a"}] +[{"name":"add-entry","duration":15128,"timestamp":295859940053,"id":3870,"parentId":3866,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Cstylesheet.css%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cglobals.css%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567817210,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":15133,"timestamp":295859940062,"id":3872,"parentId":3866,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cauth%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567817210,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":16267,"timestamp":295859940101,"id":3880,"parentId":3866,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Csession%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567817210,"traceId":"0ca0f7fe408e086a"},{"name":"build-module","duration":1903,"timestamp":295859974344,"id":3884,"parentId":3883,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\build\\webpack\\loaders\\next-flight-client-entry-loader.js?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5C%5BtopicId%5D%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!","layer":"app-pages-browser"},"startTime":1779567817245,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":36970,"timestamp":295859940057,"id":3871,"parentId":3866,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Capp-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cclient-page.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cerror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Clayout-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cnot-found-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Crender-from-template-context.js%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567817210,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":37678,"timestamp":295859940040,"id":3868,"parentId":3866,"tags":{"request":"./node_modules/next/dist/client/app-next-dev.js"},"startTime":1779567817210,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":37660,"timestamp":295859940069,"id":3874,"parentId":3866,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567817210,"traceId":"0ca0f7fe408e086a"},{"name":"next-swc-transform","duration":17875,"timestamp":295859979051,"id":3887,"parentId":3886,"tags":{},"startTime":1779567817249,"traceId":"0ca0f7fe408e086a"},{"name":"next-swc-loader","duration":18049,"timestamp":295859978887,"id":3886,"parentId":3885,"tags":{},"startTime":1779567817249,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-tsx","duration":23746,"timestamp":295859978543,"id":3885,"parentId":3884,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\app\\library\\[topicId]\\page.tsx","layer":"app-pages-browser"},"startTime":1779567817249,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":71922,"timestamp":295859940112,"id":3883,"parentId":3866,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5C%5BtopicId%5D%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567817210,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":83736,"timestamp":295859928428,"id":3866,"parentId":3865,"tags":{},"startTime":1779567817199,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":1207,"timestamp":295860014443,"id":3889,"parentId":3888,"tags":{},"startTime":1779567817285,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":4,"timestamp":295860015672,"id":3891,"parentId":3888,"tags":{},"startTime":1779567817286,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":36,"timestamp":295860015768,"id":3892,"parentId":3888,"tags":{},"startTime":1779567817286,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":4,"timestamp":295860015825,"id":3893,"parentId":3888,"tags":{},"startTime":1779567817286,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":2,"timestamp":295860015845,"id":3894,"parentId":3888,"tags":{},"startTime":1779567817286,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":1002,"timestamp":295860015665,"id":3890,"parentId":3888,"tags":{},"startTime":1779567817286,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":727,"timestamp":295860018267,"id":3895,"parentId":3888,"tags":{},"startTime":1779567817288,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":4115,"timestamp":295860019041,"id":3896,"parentId":3888,"tags":{},"startTime":1779567817289,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":4170,"timestamp":295860025920,"id":3897,"parentId":3888,"tags":{},"startTime":1779567817296,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":182,"timestamp":295860030089,"id":3898,"parentId":3888,"tags":{},"startTime":1779567817300,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":52,"timestamp":295860030257,"id":3899,"parentId":3888,"tags":{},"startTime":1779567817300,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":4310,"timestamp":295860030313,"id":3900,"parentId":3888,"tags":{},"startTime":1779567817301,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-generateClientManifest","duration":326,"timestamp":295860036200,"id":3902,"parentId":3865,"tags":{},"startTime":1779567817306,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-createassets","duration":469,"timestamp":295860036063,"id":3901,"parentId":3865,"tags":{},"startTime":1779567817306,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":24859,"timestamp":295860013615,"id":3888,"parentId":3865,"tags":{},"startTime":1779567817284,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":110992,"timestamp":295859927543,"id":3865,"parentId":3846,"tags":{"name":"client"},"startTime":1779567817198,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":12425,"timestamp":295860038598,"id":3903,"parentId":3846,"tags":{},"startTime":1779567817309,"traceId":"0ca0f7fe408e086a"},{"name":"compile-path","duration":396545,"timestamp":295859655129,"id":3810,"tags":{"trigger":"/app/library/[topicId]","isTurbopack":false},"startTime":1779567816925,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-client","duration":242939,"timestamp":295859809285,"id":3846,"parentId":3,"tags":{"trigger":"manual"},"startTime":1779567817079,"traceId":"0ca0f7fe408e086a"}] +[{"name":"client-success","duration":4,"timestamp":295860055412,"id":3904,"parentId":3,"tags":{},"startTime":1779567817326,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":0,"timestamp":295860055470,"id":3905,"parentId":3,"tags":{},"startTime":1779567817326,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":253000,"timestamp":295859811598,"id":3906,"parentId":3,"tags":{"updatedModules":["[project]/node_modules/next/dist/build/webpack/loaders/next-client-pages-loader.js?absolutePagePath=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Cnode_modules%5Cnext%5Cdist%5Cclient%5Ccomponents%5Cnot-found-error.js&page=%2F_not-found%2Fpage!","[project]/node_modules/next/dist/client/components/not-found-error.js"],"page":"/app/library","isPageHidden":false},"startTime":1779567817377,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":307000,"timestamp":295859812207,"id":3907,"parentId":3,"tags":{"updatedModules":["[project]/node_modules/next/dist/build/webpack/loaders/next-client-pages-loader.js?absolutePagePath=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Cnode_modules%5Cnext%5Cdist%5Cclient%5Ccomponents%5Cnot-found-error.js&page=%2F_not-found%2Fpage!","[project]/node_modules/next/dist/client/components/not-found-error.js"],"page":"/admin/documents","isPageHidden":true},"startTime":1779567817388,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":799463,"timestamp":295859650892,"id":3808,"tags":{"url":"/app/library/t6vla8thqjyskb4?_rsc=1vbdt","isTurbopack":false},"startTime":1779567816921,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":295860450381,"id":3908,"parentId":3808,"tags":{"url":"/app/library/t6vla8thqjyskb4?_rsc=1vbdt","memory.rss":"352915456","memory.heapUsed":"260198896","memory.heapTotal":"302235648"},"startTime":1779567817721,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":21106,"timestamp":295860457298,"id":3909,"tags":{"url":"/app/library/t6vla8thqjyskb4?_rsc=yx039","isTurbopack":false},"startTime":1779567817728,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":295860478441,"id":3910,"parentId":3909,"tags":{"url":"/app/library/t6vla8thqjyskb4?_rsc=yx039","memory.rss":"351891456","memory.heapUsed":"253812592","memory.heapTotal":"301088768"},"startTime":1779567817749,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":13855,"timestamp":295862916249,"id":3911,"tags":{"url":"/app/library/714ncfrz4346z8a?_rsc=6fngd","isTurbopack":false},"startTime":1779567820186,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":295862930138,"id":3912,"parentId":3911,"tags":{"url":"/app/library/714ncfrz4346z8a?_rsc=6fngd","memory.rss":"351891456","memory.heapUsed":"259854456","memory.heapTotal":"301088768"},"startTime":1779567820200,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":35758,"timestamp":295862938870,"id":3913,"tags":{"url":"/app/library/714ncfrz4346z8a?_rsc=15q4b","isTurbopack":false},"startTime":1779567820209,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":295862974675,"id":3914,"parentId":3913,"tags":{"url":"/app/library/714ncfrz4346z8a?_rsc=15q4b","memory.rss":"351891456","memory.heapUsed":"253230480","memory.heapTotal":"301350912"},"startTime":1779567820245,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":22253,"timestamp":295868290706,"id":3915,"tags":{"url":"/app/library/lo2eofobun3j8e3?_rsc=1vf7n","isTurbopack":false},"startTime":1779567825562,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":3,"timestamp":295868313015,"id":3916,"parentId":3915,"tags":{"url":"/app/library/lo2eofobun3j8e3?_rsc=1vf7n","memory.rss":"351916032","memory.heapUsed":"258398208","memory.heapTotal":"301350912"},"startTime":1779567825584,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":18097,"timestamp":295868322267,"id":3917,"tags":{"url":"/app/library/lo2eofobun3j8e3?_rsc=8it9k","isTurbopack":false},"startTime":1779567825593,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":295868340405,"id":3918,"parentId":3917,"tags":{"url":"/app/library/lo2eofobun3j8e3?_rsc=8it9k","memory.rss":"351932416","memory.heapUsed":"263493976","memory.heapTotal":"301350912"},"startTime":1779567825611,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":16905,"timestamp":295877465017,"id":3925,"parentId":3923,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&page=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&appPaths=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567834736,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":16911,"timestamp":295877465023,"id":3926,"parentId":3923,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fdocuments%2Fpage&page=%2Fadmin%2Fdocuments%2Fpage&appPaths=%2Fadmin%2Fdocuments%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fdocuments%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567834736,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":16910,"timestamp":295877465028,"id":3927,"parentId":3923,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fprofile%2Fpage&page=%2Fapp%2Fprofile%2Fpage&appPaths=%2Fapp%2Fprofile%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fprofile%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567834736,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":16909,"timestamp":295877465032,"id":3928,"parentId":3923,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fsession%2Fpage&page=%2Fapp%2Fsession%2Fpage&appPaths=%2Fapp%2Fsession%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fsession%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567834736,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":16902,"timestamp":295877465042,"id":3930,"parentId":3923,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2Fpage&page=%2Fapp%2Flibrary%2Fpage&appPaths=%2Fapp%2Flibrary%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567834736,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":17281,"timestamp":295877465039,"id":3929,"parentId":3923,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fpage&page=%2Fapp%2Fpage&appPaths=%2Fapp%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567834736,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":17727,"timestamp":295877464969,"id":3924,"parentId":3923,"tags":{"request":"next-app-loader?name=app%2Fauth%2Fpage&page=%2Fauth%2Fpage&appPaths=%2Fauth%2Fpage&pagePath=private-next-app-dir%2Fauth%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567834736,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":63365,"timestamp":295877459396,"id":3923,"parentId":3922,"tags":{},"startTime":1779567834730,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":3612,"timestamp":295877524570,"id":3959,"parentId":3958,"tags":{},"startTime":1779567834795,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":3,"timestamp":295877528204,"id":3961,"parentId":3958,"tags":{},"startTime":1779567834799,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":2676,"timestamp":295877528221,"id":3962,"parentId":3958,"tags":{},"startTime":1779567834799,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":3,"timestamp":295877530922,"id":3963,"parentId":3958,"tags":{},"startTime":1779567834802,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":2,"timestamp":295877530938,"id":3964,"parentId":3958,"tags":{},"startTime":1779567834802,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":3392,"timestamp":295877528197,"id":3960,"parentId":3958,"tags":{},"startTime":1779567834799,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":348,"timestamp":295877532308,"id":3965,"parentId":3958,"tags":{},"startTime":1779567834803,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":1127,"timestamp":295877532664,"id":3966,"parentId":3958,"tags":{},"startTime":1779567834804,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":781,"timestamp":295877534439,"id":3967,"parentId":3958,"tags":{},"startTime":1779567834805,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":168,"timestamp":295877535219,"id":3968,"parentId":3958,"tags":{},"startTime":1779567834806,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":46,"timestamp":295877535376,"id":3969,"parentId":3958,"tags":{},"startTime":1779567834806,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":3445,"timestamp":295877535427,"id":3970,"parentId":3958,"tags":{},"startTime":1779567834806,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":17600,"timestamp":295877523956,"id":3958,"parentId":3922,"tags":{},"startTime":1779567834795,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":87524,"timestamp":295877459158,"id":3922,"parentId":3920,"tags":{"name":"server"},"startTime":1779567834730,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":8578,"timestamp":295877546745,"id":3971,"parentId":3920,"tags":{},"startTime":1779567834818,"traceId":"0ca0f7fe408e086a"},{"name":"compile-path","duration":98378,"timestamp":295877457439,"id":3921,"tags":{"trigger":"/app","isTurbopack":false},"startTime":1779567834728,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-server","duration":98549,"timestamp":295877457406,"id":3920,"parentId":3,"tags":{"trigger":"manual"},"startTime":1779567834728,"traceId":"0ca0f7fe408e086a"}] +[{"name":"handle-request","duration":148869,"timestamp":295877452371,"id":3919,"tags":{"url":"/app?_rsc=1vbdt","isTurbopack":false},"startTime":1779567834723,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":295877601274,"id":3972,"parentId":3919,"tags":{"url":"/app?_rsc=1vbdt","memory.rss":"360030208","memory.heapUsed":"270655080","memory.heapTotal":"308273152"},"startTime":1779567834872,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":25926,"timestamp":295877605074,"id":3973,"tags":{"url":"/app?_rsc=1us18","isTurbopack":false},"startTime":1779567834876,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":295877631030,"id":3974,"parentId":3973,"tags":{"url":"/app?_rsc=1us18","memory.rss":"354656256","memory.heapUsed":"250651072","memory.heapTotal":"313851904"},"startTime":1779567834902,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":98875,"timestamp":295879167806,"id":3975,"tags":{"url":"/app/session","isTurbopack":false},"startTime":1779567836439,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":295879266705,"id":3976,"parentId":3975,"tags":{"url":"/app/session","memory.rss":"355983360","memory.heapUsed":"252174432","memory.heapTotal":"314777600"},"startTime":1779567836538,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":34,"timestamp":295879581608,"id":3977,"parentId":3,"tags":{},"startTime":1779567836853,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":3,"timestamp":295879603146,"id":3978,"parentId":3,"tags":{},"startTime":1779567836874,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":5854,"timestamp":295901381086,"id":3984,"parentId":3981,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779567858652,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":5836,"timestamp":295901381113,"id":3988,"parentId":3981,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779567858652,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":5800,"timestamp":295901381150,"id":3993,"parentId":3981,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779567858652,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":8861,"timestamp":295901381163,"id":3996,"parentId":3981,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567858652,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":10659,"timestamp":295901380991,"id":3982,"parentId":3981,"tags":{"request":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\compiled\\@next\\react-refresh-utils\\dist\\runtime.js"},"startTime":1779567858652,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":11051,"timestamp":295901381146,"id":3992,"parentId":3981,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Ccurriculum%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567858652,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":11066,"timestamp":295901381155,"id":3994,"parentId":3981,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567858652,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":11080,"timestamp":295901381159,"id":3995,"parentId":3981,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Csession%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567858652,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":11095,"timestamp":295901381171,"id":3997,"parentId":3981,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Cprofile%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567858652,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":12949,"timestamp":295901381131,"id":3990,"parentId":3981,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cdocuments%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567858652,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":12992,"timestamp":295901381175,"id":3998,"parentId":3981,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5C%5BtopicId%5D%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567858652,"traceId":"0ca0f7fe408e086a"},{"name":"next-swc-transform","duration":5409,"timestamp":295901391473,"id":4002,"parentId":4001,"tags":{},"startTime":1779567858662,"traceId":"0ca0f7fe408e086a"},{"name":"next-swc-loader","duration":5538,"timestamp":295901391351,"id":4001,"parentId":4000,"tags":{},"startTime":1779567858662,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-tsx","duration":12043,"timestamp":295901390421,"id":4000,"parentId":3980,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\components\\admin\\ThemeCard.tsx","layer":"app-pages-browser"},"startTime":1779567858661,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":22889,"timestamp":295901381100,"id":3986,"parentId":3981,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Capp-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cclient-page.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cerror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Clayout-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cnot-found-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Crender-from-template-context.js%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567858652,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":23251,"timestamp":295901381107,"id":3987,"parentId":3981,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cauth%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567858652,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":23249,"timestamp":295901381119,"id":3989,"parentId":3981,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567858652,"traceId":"0ca0f7fe408e086a"},{"name":"read-resource","duration":11587,"timestamp":295901394708,"id":4004,"parentId":4003,"tags":{},"startTime":1779567858666,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":71999,"timestamp":295901381075,"id":3983,"parentId":3981,"tags":{"request":"./node_modules/next/dist/client/app-next-dev.js"},"startTime":1779567858652,"traceId":"0ca0f7fe408e086a"},{"name":"postcss-process","duration":70693,"timestamp":295901406437,"id":4006,"parentId":4005,"tags":{},"startTime":1779567858677,"traceId":"0ca0f7fe408e086a"},{"name":"postcss-loader","duration":71158,"timestamp":295901406328,"id":4005,"parentId":4003,"tags":{},"startTime":1779567858677,"traceId":"0ca0f7fe408e086a"},{"name":"css-loader","duration":4950,"timestamp":295901477561,"id":4007,"parentId":4003,"tags":{"astUsed":"true"},"startTime":1779567858748,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-css","duration":91735,"timestamp":295901394440,"id":4003,"parentId":3999,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css.webpack[javascript/auto]!=!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\build\\webpack\\loaders\\css-loader\\src\\index.js??ruleSet[1].rules[14].oneOf[12].use[2]!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\build\\webpack\\loaders\\postcss-loader\\src\\index.js??ruleSet[1].rules[14].oneOf[12].use[3]!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css","layer":null},"startTime":1779567858665,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-css","duration":106722,"timestamp":295901387194,"id":3999,"parentId":3980,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css","layer":"app-pages-browser"},"startTime":1779567858658,"traceId":"0ca0f7fe408e086a"},{"name":"build-module","duration":84,"timestamp":295901494198,"id":4008,"parentId":3999,"tags":{},"startTime":1779567858765,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":121756,"timestamp":295901381093,"id":3985,"parentId":3981,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Cstylesheet.css%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cglobals.css%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567858652,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":129975,"timestamp":295901381141,"id":3991,"parentId":3981,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cknowledge%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567858652,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":131028,"timestamp":295901380115,"id":3981,"parentId":3980,"tags":{},"startTime":1779567858651,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":2399,"timestamp":295901513294,"id":4010,"parentId":4009,"tags":{},"startTime":1779567858784,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":4,"timestamp":295901515713,"id":4012,"parentId":4009,"tags":{},"startTime":1779567858787,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":49,"timestamp":295901515805,"id":4013,"parentId":4009,"tags":{},"startTime":1779567858787,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":4,"timestamp":295901515874,"id":4014,"parentId":4009,"tags":{},"startTime":1779567858787,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":3,"timestamp":295901515892,"id":4015,"parentId":4009,"tags":{},"startTime":1779567858787,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":1021,"timestamp":295901515706,"id":4011,"parentId":4009,"tags":{},"startTime":1779567858787,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":352,"timestamp":295901517400,"id":4016,"parentId":4009,"tags":{},"startTime":1779567858788,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":1851,"timestamp":295901517761,"id":4017,"parentId":4009,"tags":{},"startTime":1779567858789,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":3849,"timestamp":295901520672,"id":4018,"parentId":4009,"tags":{},"startTime":1779567858792,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":159,"timestamp":295901524520,"id":4019,"parentId":4009,"tags":{},"startTime":1779567858795,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":42,"timestamp":295901524669,"id":4020,"parentId":4009,"tags":{},"startTime":1779567858796,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":3999,"timestamp":295901524715,"id":4021,"parentId":4009,"tags":{},"startTime":1779567858796,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-generateClientManifest","duration":76,"timestamp":295901529690,"id":4023,"parentId":3980,"tags":{},"startTime":1779567858801,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-createassets","duration":137,"timestamp":295901529633,"id":4022,"parentId":3980,"tags":{},"startTime":1779567858801,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":18928,"timestamp":295901512521,"id":4009,"parentId":3980,"tags":{},"startTime":1779567858783,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":152468,"timestamp":295901379009,"id":3980,"parentId":3979,"tags":{"name":"client"},"startTime":1779567858650,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":10197,"timestamp":295901531501,"id":4024,"parentId":3979,"tags":{},"startTime":1779567858802,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-client","duration":186204,"timestamp":295901356889,"id":3979,"parentId":3,"tags":{"trigger":"src/components/admin/ThemeCard.tsx.tmp.11120.8b07d575a9bb"},"startTime":1779567858628,"traceId":"0ca0f7fe408e086a"}] +[{"name":"client-success","duration":5,"timestamp":295901550532,"id":4025,"parentId":3,"tags":{},"startTime":1779567858821,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":7,"timestamp":295901552025,"id":4026,"parentId":3,"tags":{},"startTime":1779567858823,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":210000,"timestamp":295901358893,"id":4029,"parentId":3,"tags":{"updatedModules":[],"page":"/app/session","isPageHidden":true},"startTime":1779567858840,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":212000,"timestamp":295901357586,"id":4030,"parentId":3,"tags":{"updatedModules":[],"page":"/admin/documents","isPageHidden":true},"startTime":1779567858844,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":28948,"timestamp":295901552628,"id":4027,"tags":{"url":"/app/session?_rsc=14pfl","isTurbopack":false},"startTime":1779567858824,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":295901581608,"id":4031,"parentId":4027,"tags":{"url":"/app/session?_rsc=14pfl","memory.rss":"335491072","memory.heapUsed":"252840728","memory.heapTotal":"273858560"},"startTime":1779567858853,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":29879,"timestamp":295901553745,"id":4028,"tags":{"url":"/admin/documents?_rsc=135zp","isTurbopack":false},"startTime":1779567858825,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":295901583656,"id":4032,"parentId":4028,"tags":{"url":"/admin/documents?_rsc=135zp","memory.rss":"335491072","memory.heapUsed":"253219104","memory.heapTotal":"273858560"},"startTime":1779567858855,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":4290,"timestamp":295901751332,"id":4041,"parentId":4038,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779567859022,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":4290,"timestamp":295901751352,"id":4045,"parentId":4038,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779567859022,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":4263,"timestamp":295901751383,"id":4050,"parentId":4038,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779567859022,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":6249,"timestamp":295901751394,"id":4053,"parentId":4038,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567859022,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":6349,"timestamp":295901751408,"id":4056,"parentId":4038,"tags":{"request":"next-client-pages-loader?absolutePagePath=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Cnode_modules%5Cnext%5Cdist%5Cclient%5Ccomponents%5Cnot-found-error.js&page=%2F_not-found%2Fpage!"},"startTime":1779567859022,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":6782,"timestamp":295901751262,"id":4039,"parentId":4038,"tags":{"request":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\compiled\\@next\\react-refresh-utils\\dist\\runtime.js"},"startTime":1779567859022,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":7209,"timestamp":295901751375,"id":4048,"parentId":4038,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cknowledge%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567859022,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":7222,"timestamp":295901751379,"id":4049,"parentId":4038,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Ccurriculum%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567859022,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":7237,"timestamp":295901751386,"id":4051,"parentId":4038,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567859022,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":7249,"timestamp":295901751390,"id":4052,"parentId":4038,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Csession%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567859022,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":7264,"timestamp":295901751399,"id":4054,"parentId":4038,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Cprofile%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567859022,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":9676,"timestamp":295901751364,"id":4047,"parentId":4038,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cdocuments%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567859022,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":9723,"timestamp":295901751403,"id":4055,"parentId":4038,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5C%5BtopicId%5D%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567859022,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":9794,"timestamp":295901751338,"id":4042,"parentId":4038,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Cstylesheet.css%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cglobals.css%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567859022,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":11325,"timestamp":295901751342,"id":4043,"parentId":4038,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Capp-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cclient-page.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cerror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Clayout-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cnot-found-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Crender-from-template-context.js%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567859022,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":11448,"timestamp":295901751348,"id":4044,"parentId":4038,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cauth%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567859022,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":11443,"timestamp":295901751359,"id":4046,"parentId":4038,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567859022,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":11814,"timestamp":295901751324,"id":4040,"parentId":4038,"tags":{"request":"./node_modules/next/dist/client/app-next-dev.js"},"startTime":1779567859022,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":14191,"timestamp":295901749001,"id":4038,"parentId":4037,"tags":{},"startTime":1779567859020,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":2778,"timestamp":295901765807,"id":4058,"parentId":4057,"tags":{},"startTime":1779567859037,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":3,"timestamp":295901768618,"id":4060,"parentId":4057,"tags":{},"startTime":1779567859040,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":39,"timestamp":295901768639,"id":4061,"parentId":4057,"tags":{},"startTime":1779567859040,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":6,"timestamp":295901768726,"id":4062,"parentId":4057,"tags":{},"startTime":1779567859040,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":2,"timestamp":295901768746,"id":4063,"parentId":4057,"tags":{},"startTime":1779567859040,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":761,"timestamp":295901768608,"id":4059,"parentId":4057,"tags":{},"startTime":1779567859040,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":377,"timestamp":295901770185,"id":4064,"parentId":4057,"tags":{},"startTime":1779567859041,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":1554,"timestamp":295901770573,"id":4065,"parentId":4057,"tags":{},"startTime":1779567859042,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":3221,"timestamp":295901776415,"id":4066,"parentId":4057,"tags":{},"startTime":1779567859047,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":290,"timestamp":295901779635,"id":4067,"parentId":4057,"tags":{},"startTime":1779567859051,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":59,"timestamp":295901779911,"id":4068,"parentId":4057,"tags":{},"startTime":1779567859051,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":1661,"timestamp":295901779973,"id":4069,"parentId":4057,"tags":{},"startTime":1779567859051,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-generateClientManifest","duration":49,"timestamp":295901782325,"id":4071,"parentId":4037,"tags":{},"startTime":1779567859053,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-createassets","duration":104,"timestamp":295901782275,"id":4070,"parentId":4037,"tags":{},"startTime":1779567859053,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":20344,"timestamp":295901764181,"id":4057,"parentId":4037,"tags":{},"startTime":1779567859035,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":35855,"timestamp":295901748710,"id":4037,"parentId":4034,"tags":{"name":"client"},"startTime":1779567859020,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":11389,"timestamp":295901784597,"id":4072,"parentId":4034,"tags":{},"startTime":1779567859056,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-client","duration":49521,"timestamp":295901747085,"id":4034,"parentId":3,"tags":{"trigger":"manual"},"startTime":1779567859018,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":5,"timestamp":295901802787,"id":4075,"parentId":3,"tags":{},"startTime":1779567859074,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":0,"timestamp":295901802848,"id":4076,"parentId":3,"tags":{},"startTime":1779567859074,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":70000,"timestamp":295901748220,"id":4084,"parentId":3,"tags":{"updatedModules":[],"page":"/app/session","isPageHidden":true},"startTime":1779567859093,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":80000,"timestamp":295901747748,"id":4085,"parentId":3,"tags":{"updatedModules":[],"page":"/admin/documents","isPageHidden":true},"startTime":1779567859099,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":31660,"timestamp":295901814029,"id":4079,"parentId":4074,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2Fpage&page=%2Fapp%2Flibrary%2Fpage&appPaths=%2Fapp%2Flibrary%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567859085,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":31668,"timestamp":295901814034,"id":4080,"parentId":4074,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&page=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&appPaths=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567859085,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":31663,"timestamp":295901814055,"id":4082,"parentId":4074,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fdocuments%2Fpage&page=%2Fadmin%2Fdocuments%2Fpage&appPaths=%2Fadmin%2Fdocuments%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fdocuments%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567859085,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":31655,"timestamp":295901814067,"id":4083,"parentId":4074,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fsession%2Fpage&page=%2Fapp%2Fsession%2Fpage&appPaths=%2Fapp%2Fsession%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fsession%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567859085,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":35224,"timestamp":295901814021,"id":4078,"parentId":4074,"tags":{"request":"next-app-loader?name=app%2Fauth%2Fpage&page=%2Fauth%2Fpage&appPaths=%2Fauth%2Fpage&pagePath=private-next-app-dir%2Fauth%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567859085,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":35332,"timestamp":295901813961,"id":4077,"parentId":4074,"tags":{"request":"next-app-loader?name=app%2F_not-found%2Fpage&page=%2F_not-found%2Fpage&appPaths=&pagePath=..%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fnot-found-error.js&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567859085,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":35306,"timestamp":295901814046,"id":4081,"parentId":4074,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fpage&page=%2Fapp%2Fpage&appPaths=%2Fapp%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567859085,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":124398,"timestamp":295901799626,"id":4074,"parentId":4073,"tags":{},"startTime":1779567859071,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":2857,"timestamp":295901927098,"id":4112,"parentId":4111,"tags":{},"startTime":1779567859198,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":5,"timestamp":295901929985,"id":4114,"parentId":4111,"tags":{},"startTime":1779567859201,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":3025,"timestamp":295901930006,"id":4115,"parentId":4111,"tags":{},"startTime":1779567859201,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":6,"timestamp":295901933064,"id":4116,"parentId":4111,"tags":{},"startTime":1779567859204,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":3,"timestamp":295901933090,"id":4117,"parentId":4111,"tags":{},"startTime":1779567859204,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":4188,"timestamp":295901929975,"id":4113,"parentId":4111,"tags":{},"startTime":1779567859201,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":359,"timestamp":295901935129,"id":4118,"parentId":4111,"tags":{},"startTime":1779567859206,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":1244,"timestamp":295901935500,"id":4119,"parentId":4111,"tags":{},"startTime":1779567859206,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":841,"timestamp":295901937464,"id":4120,"parentId":4111,"tags":{},"startTime":1779567859208,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":98,"timestamp":295901938304,"id":4121,"parentId":4111,"tags":{},"startTime":1779567859209,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":39,"timestamp":295901938395,"id":4122,"parentId":4111,"tags":{},"startTime":1779567859209,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":1236,"timestamp":295901938437,"id":4123,"parentId":4111,"tags":{},"startTime":1779567859209,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":21262,"timestamp":295901926254,"id":4111,"parentId":4073,"tags":{},"startTime":1779567859197,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":154532,"timestamp":295901799006,"id":4073,"parentId":4036,"tags":{"name":"server"},"startTime":1779567859070,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":10966,"timestamp":295901953688,"id":4124,"parentId":4036,"tags":{},"startTime":1779567859225,"traceId":"0ca0f7fe408e086a"},{"name":"compile-path","duration":218180,"timestamp":295901747124,"id":4035,"tags":{"trigger":"/_not-found","isTurbopack":false},"startTime":1779567859018,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-server","duration":218043,"timestamp":295901747438,"id":4036,"parentId":3,"tags":{"trigger":"manual"},"startTime":1779567859018,"traceId":"0ca0f7fe408e086a"}] +[{"name":"handle-request","duration":296787,"timestamp":295901745211,"id":4033,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779567859016,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":0,"timestamp":295902042025,"id":4125,"parentId":4033,"tags":{"url":"/icons/192.png","memory.rss":"357806080","memory.heapUsed":"267420296","memory.heapTotal":"306376704"},"startTime":1779567859313,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":6252,"timestamp":295907431679,"id":4131,"parentId":4128,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779567864703,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":6226,"timestamp":295907431714,"id":4135,"parentId":4128,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779567864703,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":6183,"timestamp":295907431758,"id":4140,"parentId":4128,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779567864703,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":9099,"timestamp":295907431778,"id":4143,"parentId":4128,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567864703,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":9147,"timestamp":295907431800,"id":4146,"parentId":4128,"tags":{"request":"next-client-pages-loader?absolutePagePath=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Cnode_modules%5Cnext%5Cdist%5Cclient%5Ccomponents%5Cnot-found-error.js&page=%2F_not-found%2Fpage!"},"startTime":1779567864703,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":9808,"timestamp":295907431564,"id":4129,"parentId":4128,"tags":{"request":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\compiled\\@next\\react-refresh-utils\\dist\\runtime.js"},"startTime":1779567864702,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":10194,"timestamp":295907431739,"id":4138,"parentId":4128,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cknowledge%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567864703,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":10204,"timestamp":295907431747,"id":4139,"parentId":4128,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Ccurriculum%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567864703,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":10208,"timestamp":295907431764,"id":4141,"parentId":4128,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567864703,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":10215,"timestamp":295907431771,"id":4142,"parentId":4128,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Csession%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567864703,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":10222,"timestamp":295907431785,"id":4144,"parentId":4128,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Cprofile%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567864703,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":11156,"timestamp":295907431731,"id":4137,"parentId":4128,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cdocuments%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567864703,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":11165,"timestamp":295907431793,"id":4145,"parentId":4128,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5C%5BtopicId%5D%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567864703,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":15053,"timestamp":295907431696,"id":4133,"parentId":4128,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Capp-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cclient-page.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cerror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Clayout-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cnot-found-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Crender-from-template-context.js%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567864703,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":15310,"timestamp":295907431706,"id":4134,"parentId":4128,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cauth%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567864703,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":15305,"timestamp":295907431721,"id":4136,"parentId":4128,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567864703,"traceId":"0ca0f7fe408e086a"},{"name":"read-resource","duration":3413,"timestamp":295907443633,"id":4149,"parentId":4148,"tags":{},"startTime":1779567864715,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":25734,"timestamp":295907431667,"id":4130,"parentId":4128,"tags":{"request":"./node_modules/next/dist/client/app-next-dev.js"},"startTime":1779567864703,"traceId":"0ca0f7fe408e086a"},{"name":"postcss-process","duration":32692,"timestamp":295907447165,"id":4151,"parentId":4150,"tags":{},"startTime":1779567864718,"traceId":"0ca0f7fe408e086a"},{"name":"postcss-loader","duration":33001,"timestamp":295907447116,"id":4150,"parentId":4148,"tags":{},"startTime":1779567864718,"traceId":"0ca0f7fe408e086a"},{"name":"css-loader","duration":13762,"timestamp":295907480172,"id":4152,"parentId":4148,"tags":{"astUsed":"true"},"startTime":1779567864751,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-css","duration":52550,"timestamp":295907443190,"id":4148,"parentId":4147,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css.webpack[javascript/auto]!=!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\build\\webpack\\loaders\\css-loader\\src\\index.js??ruleSet[1].rules[14].oneOf[12].use[2]!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\build\\webpack\\loaders\\postcss-loader\\src\\index.js??ruleSet[1].rules[14].oneOf[12].use[3]!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css","layer":null},"startTime":1779567864714,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-css","duration":60450,"timestamp":295907438266,"id":4147,"parentId":4127,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css","layer":"app-pages-browser"},"startTime":1779567864709,"traceId":"0ca0f7fe408e086a"},{"name":"build-module","duration":22,"timestamp":295907498844,"id":4153,"parentId":4147,"tags":{},"startTime":1779567864770,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":67190,"timestamp":295907431688,"id":4132,"parentId":4128,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Cstylesheet.css%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cglobals.css%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567864703,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":72570,"timestamp":295907426322,"id":4128,"parentId":4127,"tags":{},"startTime":1779567864697,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":876,"timestamp":295907501037,"id":4155,"parentId":4154,"tags":{},"startTime":1779567864772,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":2,"timestamp":295907501930,"id":4157,"parentId":4154,"tags":{},"startTime":1779567864773,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":43,"timestamp":295907501946,"id":4158,"parentId":4154,"tags":{},"startTime":1779567864773,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":5,"timestamp":295907502007,"id":4159,"parentId":4154,"tags":{},"startTime":1779567864773,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":3,"timestamp":295907502027,"id":4160,"parentId":4154,"tags":{},"startTime":1779567864773,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":961,"timestamp":295907501925,"id":4156,"parentId":4154,"tags":{},"startTime":1779567864773,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":223,"timestamp":295907503594,"id":4161,"parentId":4154,"tags":{},"startTime":1779567864775,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":1125,"timestamp":295907503824,"id":4162,"parentId":4154,"tags":{},"startTime":1779567864775,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":2606,"timestamp":295907505695,"id":4163,"parentId":4154,"tags":{},"startTime":1779567864777,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":214,"timestamp":295907508299,"id":4164,"parentId":4154,"tags":{},"startTime":1779567864779,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":55,"timestamp":295907508503,"id":4165,"parentId":4154,"tags":{},"startTime":1779567864779,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":2779,"timestamp":295907508560,"id":4166,"parentId":4154,"tags":{},"startTime":1779567864779,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-generateClientManifest","duration":81,"timestamp":295907512234,"id":4168,"parentId":4127,"tags":{},"startTime":1779567864783,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-createassets","duration":144,"timestamp":295907512176,"id":4167,"parentId":4127,"tags":{},"startTime":1779567864783,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":13908,"timestamp":295907500111,"id":4154,"parentId":4127,"tags":{},"startTime":1779567864771,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":88279,"timestamp":295907425765,"id":4127,"parentId":4126,"tags":{"name":"client"},"startTime":1779567864697,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":13075,"timestamp":295907514067,"id":4169,"parentId":4126,"tags":{},"startTime":1779567864785,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-client","duration":117617,"timestamp":295907410656,"id":4126,"parentId":3,"tags":{"trigger":"src/app/admin/knowledge/[themeId]/page.tsx.tmp.11120.43d4cc3fc7ec"},"startTime":1779567864682,"traceId":"0ca0f7fe408e086a"}] +[{"name":"client-success","duration":6,"timestamp":295907529837,"id":4170,"parentId":3,"tags":{},"startTime":1779567864801,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":6,"timestamp":295907531370,"id":4171,"parentId":3,"tags":{},"startTime":1779567864802,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":131000,"timestamp":295907412276,"id":4174,"parentId":3,"tags":{"updatedModules":[],"page":"/app/session","isPageHidden":true},"startTime":1779567864814,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":140000,"timestamp":295907412447,"id":4175,"parentId":3,"tags":{"updatedModules":[],"page":"/admin/documents","isPageHidden":true},"startTime":1779567864826,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":30943,"timestamp":295907532105,"id":4172,"tags":{"url":"/app/session?_rsc=14pfl","isTurbopack":false},"startTime":1779567864803,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":0,"timestamp":295907563070,"id":4176,"parentId":4172,"tags":{"url":"/app/session?_rsc=14pfl","memory.rss":"367017984","memory.heapUsed":"283201520","memory.heapTotal":"316100608"},"startTime":1779567864834,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":29815,"timestamp":295907538105,"id":4173,"tags":{"url":"/admin/documents?_rsc=135zp","isTurbopack":false},"startTime":1779567864809,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":295907567959,"id":4177,"parentId":4173,"tags":{"url":"/admin/documents?_rsc=135zp","memory.rss":"367022080","memory.heapUsed":"284405336","memory.heapTotal":"316100608"},"startTime":1779567864839,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":2713,"timestamp":295912344632,"id":4183,"parentId":4180,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779567869616,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":2702,"timestamp":295912344651,"id":4187,"parentId":4180,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779567869616,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":2681,"timestamp":295912344673,"id":4192,"parentId":4180,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779567869616,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":3834,"timestamp":295912344686,"id":4195,"parentId":4180,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567869616,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":3882,"timestamp":295912344699,"id":4198,"parentId":4180,"tags":{"request":"next-client-pages-loader?absolutePagePath=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Cnode_modules%5Cnext%5Cdist%5Cclient%5Ccomponents%5Cnot-found-error.js&page=%2F_not-found%2Fpage!"},"startTime":1779567869616,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":4315,"timestamp":295912344583,"id":4181,"parentId":4180,"tags":{"request":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\compiled\\@next\\react-refresh-utils\\dist\\runtime.js"},"startTime":1779567869616,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":4718,"timestamp":295912344665,"id":4190,"parentId":4180,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cknowledge%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567869616,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":4728,"timestamp":295912344669,"id":4191,"parentId":4180,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Ccurriculum%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567869616,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":4740,"timestamp":295912344677,"id":4193,"parentId":4180,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567869616,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":4749,"timestamp":295912344681,"id":4194,"parentId":4180,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Csession%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567869616,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":4758,"timestamp":295912344690,"id":4196,"parentId":4180,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Cprofile%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567869616,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":5741,"timestamp":295912344660,"id":4189,"parentId":4180,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cdocuments%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567869616,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":5778,"timestamp":295912344694,"id":4197,"parentId":4180,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5C%5BtopicId%5D%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567869616,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":8144,"timestamp":295912344641,"id":4185,"parentId":4180,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Capp-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cclient-page.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cerror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Clayout-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cnot-found-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Crender-from-template-context.js%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567869616,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":8344,"timestamp":295912344646,"id":4186,"parentId":4180,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cauth%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567869616,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":8345,"timestamp":295912344655,"id":4188,"parentId":4180,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567869616,"traceId":"0ca0f7fe408e086a"},{"name":"read-resource","duration":2580,"timestamp":295912350761,"id":4201,"parentId":4200,"tags":{},"startTime":1779567869622,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":15388,"timestamp":295912344624,"id":4182,"parentId":4180,"tags":{"request":"./node_modules/next/dist/client/app-next-dev.js"},"startTime":1779567869616,"traceId":"0ca0f7fe408e086a"},{"name":"postcss-process","duration":20519,"timestamp":295912353496,"id":4203,"parentId":4202,"tags":{},"startTime":1779567869624,"traceId":"0ca0f7fe408e086a"},{"name":"postcss-loader","duration":20788,"timestamp":295912353421,"id":4202,"parentId":4200,"tags":{},"startTime":1779567869624,"traceId":"0ca0f7fe408e086a"},{"name":"css-loader","duration":2661,"timestamp":295912374253,"id":4204,"parentId":4200,"tags":{"astUsed":"true"},"startTime":1779567869645,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-css","duration":27011,"timestamp":295912350620,"id":4200,"parentId":4199,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css.webpack[javascript/auto]!=!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\build\\webpack\\loaders\\css-loader\\src\\index.js??ruleSet[1].rules[14].oneOf[12].use[2]!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\build\\webpack\\loaders\\postcss-loader\\src\\index.js??ruleSet[1].rules[14].oneOf[12].use[3]!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css","layer":null},"startTime":1779567869622,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-css","duration":32505,"timestamp":295912347525,"id":4199,"parentId":4179,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css","layer":"app-pages-browser"},"startTime":1779567869618,"traceId":"0ca0f7fe408e086a"},{"name":"build-module","duration":26,"timestamp":295912380198,"id":4205,"parentId":4199,"tags":{},"startTime":1779567869651,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":35600,"timestamp":295912344637,"id":4184,"parentId":4180,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Cstylesheet.css%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cglobals.css%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567869616,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":44163,"timestamp":295912336088,"id":4180,"parentId":4179,"tags":{},"startTime":1779567869607,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":836,"timestamp":295912381934,"id":4207,"parentId":4206,"tags":{},"startTime":1779567869653,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":2,"timestamp":295912382784,"id":4209,"parentId":4206,"tags":{},"startTime":1779567869654,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":37,"timestamp":295912382795,"id":4210,"parentId":4206,"tags":{},"startTime":1779567869654,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":3,"timestamp":295912382845,"id":4211,"parentId":4206,"tags":{},"startTime":1779567869654,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":2,"timestamp":295912382861,"id":4212,"parentId":4206,"tags":{},"startTime":1779567869654,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":665,"timestamp":295912382780,"id":4208,"parentId":4206,"tags":{},"startTime":1779567869654,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":346,"timestamp":295912384820,"id":4213,"parentId":4206,"tags":{},"startTime":1779567869656,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":4578,"timestamp":295912385181,"id":4214,"parentId":4206,"tags":{},"startTime":1779567869656,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":2639,"timestamp":295912390839,"id":4215,"parentId":4206,"tags":{},"startTime":1779567869662,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":134,"timestamp":295912393477,"id":4216,"parentId":4206,"tags":{},"startTime":1779567869664,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":52,"timestamp":295912393602,"id":4217,"parentId":4206,"tags":{},"startTime":1779567869665,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":1762,"timestamp":295912393657,"id":4218,"parentId":4206,"tags":{},"startTime":1779567869665,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-generateClientManifest","duration":51,"timestamp":295912396144,"id":4220,"parentId":4179,"tags":{},"startTime":1779567869667,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-createassets","duration":114,"timestamp":295912396084,"id":4219,"parentId":4179,"tags":{},"startTime":1779567869667,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":16538,"timestamp":295912381201,"id":4206,"parentId":4179,"tags":{},"startTime":1779567869652,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":62172,"timestamp":295912335593,"id":4179,"parentId":4178,"tags":{"name":"client"},"startTime":1779567869607,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":13424,"timestamp":295912397787,"id":4221,"parentId":4178,"tags":{},"startTime":1779567869669,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-client","duration":87371,"timestamp":295912325658,"id":4178,"parentId":3,"tags":{"trigger":"src/app/admin/knowledge/[themeId]/page.tsx.tmp.11120.04619b1cd51d"},"startTime":1779567869597,"traceId":"0ca0f7fe408e086a"}] +[{"name":"client-success","duration":5,"timestamp":295912417929,"id":4222,"parentId":3,"tags":{},"startTime":1779567869689,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":1,"timestamp":295912418053,"id":4223,"parentId":3,"tags":{},"startTime":1779567869689,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":102000,"timestamp":295912327342,"id":4226,"parentId":3,"tags":{"updatedModules":[],"page":"/app/session","isPageHidden":false},"startTime":1779567869700,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":111000,"timestamp":295912327430,"id":4227,"parentId":3,"tags":{"updatedModules":[],"page":"/admin/documents","isPageHidden":true},"startTime":1779567869711,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":26067,"timestamp":295912419941,"id":4224,"tags":{"url":"/app/session?_rsc=14pfl","isTurbopack":false},"startTime":1779567869691,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":295912446043,"id":4228,"parentId":4224,"tags":{"url":"/app/session?_rsc=14pfl","memory.rss":"373592064","memory.heapUsed":"284399576","memory.heapTotal":"322654208"},"startTime":1779567869717,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":26348,"timestamp":295912420681,"id":4225,"tags":{"url":"/admin/documents?_rsc=135zp","isTurbopack":false},"startTime":1779567869692,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":295912447057,"id":4229,"parentId":4225,"tags":{"url":"/admin/documents?_rsc=135zp","memory.rss":"373592064","memory.heapUsed":"284730080","memory.heapTotal":"322654208"},"startTime":1779567869718,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":49654,"timestamp":295915006257,"id":4230,"tags":{"url":"/app/session","isTurbopack":false},"startTime":1779567872277,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":0,"timestamp":295915055944,"id":4231,"parentId":4230,"tags":{"url":"/app/session","memory.rss":"373989376","memory.heapUsed":"288259312","memory.heapTotal":"322654208"},"startTime":1779567872327,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":10,"timestamp":295915373968,"id":4232,"parentId":3,"tags":{},"startTime":1779567872645,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":4,"timestamp":295915398634,"id":4233,"parentId":3,"tags":{},"startTime":1779567872670,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":4546,"timestamp":295919321937,"id":4239,"parentId":4236,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779567876593,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":4526,"timestamp":295919321963,"id":4243,"parentId":4236,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779567876593,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":4498,"timestamp":295919321993,"id":4248,"parentId":4236,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779567876593,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":5789,"timestamp":295919322009,"id":4251,"parentId":4236,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567876593,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":5845,"timestamp":295919322025,"id":4254,"parentId":4236,"tags":{"request":"next-client-pages-loader?absolutePagePath=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Cnode_modules%5Cnext%5Cdist%5Cclient%5Ccomponents%5Cnot-found-error.js&page=%2F_not-found%2Fpage!"},"startTime":1779567876593,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":6447,"timestamp":295919321865,"id":4237,"parentId":4236,"tags":{"request":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\compiled\\@next\\react-refresh-utils\\dist\\runtime.js"},"startTime":1779567876593,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":7006,"timestamp":295919321981,"id":4246,"parentId":4236,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cknowledge%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567876593,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":7019,"timestamp":295919321987,"id":4247,"parentId":4236,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Ccurriculum%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567876593,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":7029,"timestamp":295919321998,"id":4249,"parentId":4236,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567876593,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":7037,"timestamp":295919322004,"id":4250,"parentId":4236,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Csession%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567876593,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":7046,"timestamp":295919322014,"id":4252,"parentId":4236,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Cprofile%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567876593,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":7964,"timestamp":295919321975,"id":4245,"parentId":4236,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cdocuments%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567876593,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":7982,"timestamp":295919322019,"id":4253,"parentId":4236,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5C%5BtopicId%5D%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567876593,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":9583,"timestamp":295919321949,"id":4241,"parentId":4236,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Capp-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cclient-page.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cerror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Clayout-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cnot-found-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Crender-from-template-context.js%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567876593,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":9698,"timestamp":295919321957,"id":4242,"parentId":4236,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cauth%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567876593,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":9693,"timestamp":295919321968,"id":4244,"parentId":4236,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567876593,"traceId":"0ca0f7fe408e086a"},{"name":"read-resource","duration":1433,"timestamp":295919330278,"id":4257,"parentId":4256,"tags":{},"startTime":1779567876601,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":13711,"timestamp":295919321927,"id":4238,"parentId":4236,"tags":{"request":"./node_modules/next/dist/client/app-next-dev.js"},"startTime":1779567876593,"traceId":"0ca0f7fe408e086a"},{"name":"postcss-process","duration":14902,"timestamp":295919331791,"id":4259,"parentId":4258,"tags":{},"startTime":1779567876603,"traceId":"0ca0f7fe408e086a"},{"name":"postcss-loader","duration":15024,"timestamp":295919331750,"id":4258,"parentId":4256,"tags":{},"startTime":1779567876603,"traceId":"0ca0f7fe408e086a"},{"name":"css-loader","duration":4899,"timestamp":295919346810,"id":4260,"parentId":4256,"tags":{"astUsed":"true"},"startTime":1779567876618,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-css","duration":22527,"timestamp":295919330133,"id":4256,"parentId":4255,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css.webpack[javascript/auto]!=!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\build\\webpack\\loaders\\css-loader\\src\\index.js??ruleSet[1].rules[14].oneOf[12].use[2]!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\build\\webpack\\loaders\\postcss-loader\\src\\index.js??ruleSet[1].rules[14].oneOf[12].use[3]!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css","layer":null},"startTime":1779567876601,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-css","duration":28858,"timestamp":295919326688,"id":4255,"parentId":4235,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css","layer":"app-pages-browser"},"startTime":1779567876598,"traceId":"0ca0f7fe408e086a"},{"name":"build-module","duration":29,"timestamp":295919355691,"id":4261,"parentId":4255,"tags":{},"startTime":1779567876627,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":33790,"timestamp":295919321943,"id":4240,"parentId":4236,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Cstylesheet.css%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cglobals.css%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567876593,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":37540,"timestamp":295919318213,"id":4236,"parentId":4235,"tags":{},"startTime":1779567876589,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":1925,"timestamp":295919358841,"id":4263,"parentId":4262,"tags":{},"startTime":1779567876630,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":6,"timestamp":295919360815,"id":4265,"parentId":4262,"tags":{},"startTime":1779567876632,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":108,"timestamp":295919360846,"id":4266,"parentId":4262,"tags":{},"startTime":1779567876632,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":9,"timestamp":295919360993,"id":4267,"parentId":4262,"tags":{},"startTime":1779567876632,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":6,"timestamp":295919361034,"id":4268,"parentId":4262,"tags":{},"startTime":1779567876632,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":988,"timestamp":295919360799,"id":4264,"parentId":4262,"tags":{},"startTime":1779567876632,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":359,"timestamp":295919362758,"id":4269,"parentId":4262,"tags":{},"startTime":1779567876634,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":5359,"timestamp":295919363134,"id":4270,"parentId":4262,"tags":{},"startTime":1779567876634,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":4322,"timestamp":295919369466,"id":4271,"parentId":4262,"tags":{},"startTime":1779567876640,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":438,"timestamp":295919373784,"id":4272,"parentId":4262,"tags":{},"startTime":1779567876645,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":339,"timestamp":295919374165,"id":4273,"parentId":4262,"tags":{},"startTime":1779567876645,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":2229,"timestamp":295919374522,"id":4274,"parentId":4262,"tags":{},"startTime":1779567876645,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-generateClientManifest","duration":54,"timestamp":295919377547,"id":4276,"parentId":4235,"tags":{},"startTime":1779567876648,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-createassets","duration":114,"timestamp":295919377493,"id":4275,"parentId":4235,"tags":{},"startTime":1779567876648,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":21770,"timestamp":295919357469,"id":4262,"parentId":4235,"tags":{},"startTime":1779567876628,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":61390,"timestamp":295919317875,"id":4235,"parentId":4234,"tags":{"name":"client"},"startTime":1779567876589,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":13205,"timestamp":295919379290,"id":4277,"parentId":4234,"tags":{},"startTime":1779567876650,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-client","duration":90846,"timestamp":295919302880,"id":4234,"parentId":3,"tags":{"trigger":"src/app/admin/knowledge/[themeId]/page.tsx"},"startTime":1779567876574,"traceId":"0ca0f7fe408e086a"}] +[{"name":"client-success","duration":7,"timestamp":295919397785,"id":4278,"parentId":3,"tags":{},"startTime":1779567876669,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":5,"timestamp":295919400309,"id":4279,"parentId":3,"tags":{},"startTime":1779567876671,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":112000,"timestamp":295919303729,"id":4282,"parentId":3,"tags":{"updatedModules":[],"page":"/app/session","isPageHidden":true},"startTime":1779567876688,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":115000,"timestamp":295919304332,"id":4283,"parentId":3,"tags":{"updatedModules":[],"page":"/admin/documents","isPageHidden":true},"startTime":1779567876690,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":29524,"timestamp":295919400818,"id":4280,"tags":{"url":"/app/session?_rsc=14pfl","isTurbopack":false},"startTime":1779567876672,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":295919430373,"id":4284,"parentId":4280,"tags":{"url":"/app/session?_rsc=14pfl","memory.rss":"380538880","memory.heapUsed":"289793712","memory.heapTotal":"329732096"},"startTime":1779567876701,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":38996,"timestamp":295919404560,"id":4281,"tags":{"url":"/admin/documents?_rsc=135zp","isTurbopack":false},"startTime":1779567876675,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":295919443596,"id":4285,"parentId":4281,"tags":{"url":"/admin/documents?_rsc=135zp","memory.rss":"380706816","memory.heapUsed":"293305992","memory.heapTotal":"329732096"},"startTime":1779567876715,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":3159,"timestamp":295925633347,"id":4291,"parentId":4288,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779567882904,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":3132,"timestamp":295925633381,"id":4295,"parentId":4288,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779567882904,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":3094,"timestamp":295925633419,"id":4300,"parentId":4288,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779567882905,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":4241,"timestamp":295925633442,"id":4303,"parentId":4288,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567882905,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":4279,"timestamp":295925633471,"id":4306,"parentId":4288,"tags":{"request":"next-client-pages-loader?absolutePagePath=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Cnode_modules%5Cnext%5Cdist%5Cclient%5Ccomponents%5Cnot-found-error.js&page=%2F_not-found%2Fpage!"},"startTime":1779567882905,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":4822,"timestamp":295925633265,"id":4289,"parentId":4288,"tags":{"request":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\compiled\\@next\\react-refresh-utils\\dist\\runtime.js"},"startTime":1779567882904,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":5164,"timestamp":295925633405,"id":4298,"parentId":4288,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cknowledge%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567882904,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":5172,"timestamp":295925633412,"id":4299,"parentId":4288,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Ccurriculum%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567882905,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":5176,"timestamp":295925633426,"id":4301,"parentId":4288,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567882905,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":5183,"timestamp":295925633434,"id":4302,"parentId":4288,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Csession%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567882905,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":5191,"timestamp":295925633449,"id":4304,"parentId":4288,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Cprofile%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567882905,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":7514,"timestamp":295925633397,"id":4297,"parentId":4288,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cdocuments%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567882904,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":7558,"timestamp":295925633456,"id":4305,"parentId":4288,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5C%5BtopicId%5D%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567882905,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":9479,"timestamp":295925633363,"id":4293,"parentId":4288,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Capp-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cclient-page.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cerror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Clayout-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cnot-found-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Crender-from-template-context.js%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567882904,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":9597,"timestamp":295925633373,"id":4294,"parentId":4288,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cauth%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567882904,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":9588,"timestamp":295925633388,"id":4296,"parentId":4288,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567882904,"traceId":"0ca0f7fe408e086a"},{"name":"read-resource","duration":1472,"timestamp":295925641510,"id":4309,"parentId":4308,"tags":{},"startTime":1779567882913,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":13801,"timestamp":295925633336,"id":4290,"parentId":4288,"tags":{"request":"./node_modules/next/dist/client/app-next-dev.js"},"startTime":1779567882904,"traceId":"0ca0f7fe408e086a"},{"name":"postcss-process","duration":12769,"timestamp":295925643071,"id":4311,"parentId":4310,"tags":{},"startTime":1779567882914,"traceId":"0ca0f7fe408e086a"},{"name":"postcss-loader","duration":12943,"timestamp":295925643011,"id":4310,"parentId":4308,"tags":{},"startTime":1779567882914,"traceId":"0ca0f7fe408e086a"},{"name":"css-loader","duration":3012,"timestamp":295925655992,"id":4312,"parentId":4308,"tags":{"astUsed":"true"},"startTime":1779567882927,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-css","duration":18729,"timestamp":295925641270,"id":4308,"parentId":4307,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css.webpack[javascript/auto]!=!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\build\\webpack\\loaders\\css-loader\\src\\index.js??ruleSet[1].rules[14].oneOf[12].use[2]!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\build\\webpack\\loaders\\postcss-loader\\src\\index.js??ruleSet[1].rules[14].oneOf[12].use[3]!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css","layer":null},"startTime":1779567882912,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-css","duration":25733,"timestamp":295925636701,"id":4307,"parentId":4287,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css","layer":"app-pages-browser"},"startTime":1779567882908,"traceId":"0ca0f7fe408e086a"},{"name":"build-module","duration":23,"timestamp":295925662549,"id":4313,"parentId":4307,"tags":{},"startTime":1779567882934,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":29229,"timestamp":295925633355,"id":4292,"parentId":4288,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Cstylesheet.css%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cglobals.css%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779567882904,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":33714,"timestamp":295925628897,"id":4288,"parentId":4287,"tags":{},"startTime":1779567882900,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":839,"timestamp":295925664304,"id":4315,"parentId":4314,"tags":{},"startTime":1779567882935,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":3,"timestamp":295925665158,"id":4317,"parentId":4314,"tags":{},"startTime":1779567882936,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":38,"timestamp":295925665171,"id":4318,"parentId":4314,"tags":{},"startTime":1779567882936,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":5,"timestamp":295925665225,"id":4319,"parentId":4314,"tags":{},"startTime":1779567882936,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":6,"timestamp":295925665245,"id":4320,"parentId":4314,"tags":{},"startTime":1779567882936,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":569,"timestamp":295925665153,"id":4316,"parentId":4314,"tags":{},"startTime":1779567882936,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":203,"timestamp":295925666275,"id":4321,"parentId":4314,"tags":{},"startTime":1779567882937,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":1044,"timestamp":295925666484,"id":4322,"parentId":4314,"tags":{},"startTime":1779567882938,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":2324,"timestamp":295925668242,"id":4323,"parentId":4314,"tags":{},"startTime":1779567882939,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":142,"timestamp":295925670565,"id":4324,"parentId":4314,"tags":{},"startTime":1779567882942,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":46,"timestamp":295925670698,"id":4325,"parentId":4314,"tags":{},"startTime":1779567882942,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":5181,"timestamp":295925670747,"id":4326,"parentId":4314,"tags":{},"startTime":1779567882942,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-generateClientManifest","duration":49,"timestamp":295925676688,"id":4328,"parentId":4287,"tags":{},"startTime":1779567882948,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-createassets","duration":104,"timestamp":295925676637,"id":4327,"parentId":4287,"tags":{},"startTime":1779567882948,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":14723,"timestamp":295925663577,"id":4314,"parentId":4287,"tags":{},"startTime":1779567882935,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":49936,"timestamp":295925628394,"id":4287,"parentId":4286,"tags":{"name":"client"},"startTime":1779567882899,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":10979,"timestamp":295925678357,"id":4329,"parentId":4286,"tags":{},"startTime":1779567882949,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-client","duration":79268,"timestamp":295925611750,"id":4286,"parentId":3,"tags":{"trigger":"src/app/admin/knowledge/[themeId]/page.tsx"},"startTime":1779567882883,"traceId":"0ca0f7fe408e086a"}] +[{"name":"client-success","duration":10,"timestamp":295925693745,"id":4330,"parentId":3,"tags":{},"startTime":1779567882965,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":7,"timestamp":295925699910,"id":4332,"parentId":3,"tags":{},"startTime":1779567882971,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":99000,"timestamp":295925612480,"id":4334,"parentId":3,"tags":{"updatedModules":[],"page":"/app/session","isPageHidden":true},"startTime":1779567882984,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":108000,"timestamp":295925612949,"id":4335,"parentId":3,"tags":{"updatedModules":[],"page":"/admin/documents","isPageHidden":true},"startTime":1779567882995,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":32804,"timestamp":295925699152,"id":4331,"tags":{"url":"/app/session?_rsc=14pfl","isTurbopack":false},"startTime":1779567882970,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":295925732095,"id":4336,"parentId":4331,"tags":{"url":"/app/session?_rsc=14pfl","memory.rss":"387145728","memory.heapUsed":"295790904","memory.heapTotal":"336285696"},"startTime":1779567883003,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":32032,"timestamp":295925700783,"id":4333,"tags":{"url":"/admin/documents?_rsc=135zp","isTurbopack":false},"startTime":1779567882972,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":295925732839,"id":4337,"parentId":4333,"tags":{"url":"/admin/documents?_rsc=135zp","memory.rss":"387145728","memory.heapUsed":"295987608","memory.heapTotal":"336285696"},"startTime":1779567883004,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":42000,"timestamp":295932707513,"id":4344,"parentId":4342,"tags":{"request":"next-app-loader?name=app%2Fauth%2Fpage&page=%2Fauth%2Fpage&appPaths=%2Fauth%2Fpage&pagePath=private-next-app-dir%2Fauth%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567889979,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":42016,"timestamp":295932707524,"id":4346,"parentId":4342,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2Fpage&page=%2Fapp%2Flibrary%2Fpage&appPaths=%2Fapp%2Flibrary%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567889979,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":42022,"timestamp":295932707531,"id":4347,"parentId":4342,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fdocuments%2Fpage&page=%2Fadmin%2Fdocuments%2Fpage&appPaths=%2Fadmin%2Fdocuments%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fdocuments%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567889979,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":42023,"timestamp":295932707535,"id":4348,"parentId":4342,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fsession%2Fpage&page=%2Fapp%2Fsession%2Fpage&appPaths=%2Fapp%2Fsession%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fsession%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567889979,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":42027,"timestamp":295932707539,"id":4349,"parentId":4342,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&page=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&appPaths=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567889979,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":44234,"timestamp":295932707543,"id":4350,"parentId":4342,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fpage&page=%2Fapp%2Fpage&appPaths=%2Fapp%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567889979,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":44532,"timestamp":295932707519,"id":4345,"parentId":4342,"tags":{"request":"next-app-loader?name=app%2Fpage&page=%2Fpage&appPaths=%2Fpage&pagePath=private-next-app-dir%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567889979,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":45037,"timestamp":295932707465,"id":4343,"parentId":4342,"tags":{"request":"next-app-loader?name=app%2F_not-found%2Fpage&page=%2F_not-found%2Fpage&appPaths=&pagePath=..%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fnot-found-error.js&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779567889979,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":120047,"timestamp":295932701537,"id":4342,"parentId":4341,"tags":{},"startTime":1779567889973,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":2621,"timestamp":295932823723,"id":4380,"parentId":4379,"tags":{},"startTime":1779567890095,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":4,"timestamp":295932826372,"id":4382,"parentId":4379,"tags":{},"startTime":1779567890097,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":3257,"timestamp":295932826392,"id":4383,"parentId":4379,"tags":{},"startTime":1779567890097,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":10,"timestamp":295932829679,"id":4384,"parentId":4379,"tags":{},"startTime":1779567890101,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":3,"timestamp":295932829707,"id":4385,"parentId":4379,"tags":{},"startTime":1779567890101,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":4055,"timestamp":295932826362,"id":4381,"parentId":4379,"tags":{},"startTime":1779567890097,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":303,"timestamp":295932831255,"id":4386,"parentId":4379,"tags":{},"startTime":1779567890102,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":1544,"timestamp":295932831566,"id":4387,"parentId":4379,"tags":{},"startTime":1779567890103,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":776,"timestamp":295932834127,"id":4388,"parentId":4379,"tags":{},"startTime":1779567890105,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":113,"timestamp":295932834902,"id":4389,"parentId":4379,"tags":{},"startTime":1779567890106,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":44,"timestamp":295932835008,"id":4390,"parentId":4379,"tags":{},"startTime":1779567890106,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":921,"timestamp":295932835054,"id":4391,"parentId":4379,"tags":{},"startTime":1779567890106,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":17004,"timestamp":295932823052,"id":4379,"parentId":4341,"tags":{},"startTime":1779567890094,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":143308,"timestamp":295932701314,"id":4341,"parentId":4339,"tags":{"name":"server"},"startTime":1779567889972,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":8862,"timestamp":295932844671,"id":4392,"parentId":4339,"tags":{},"startTime":1779567890116,"traceId":"0ca0f7fe408e086a"},{"name":"compile-path","duration":154525,"timestamp":295932699569,"id":4340,"tags":{"trigger":"/","isTurbopack":false},"startTime":1779567889971,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-server","duration":154678,"timestamp":295932699544,"id":4339,"parentId":3,"tags":{"trigger":"manual"},"startTime":1779567889971,"traceId":"0ca0f7fe408e086a"}] +[{"name":"handle-request","duration":258161,"timestamp":295932696363,"id":4338,"tags":{"url":"/","isTurbopack":false},"startTime":1779567889967,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":0,"timestamp":295932954545,"id":4394,"parentId":4338,"tags":{"url":"/","memory.rss":"394891264","memory.heapUsed":"261860672","memory.heapTotal":"341323776"},"startTime":1779567890226,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":42742,"timestamp":295932952163,"id":4393,"tags":{"url":"/auth","isTurbopack":false},"startTime":1779567890223,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":0,"timestamp":295932994934,"id":4395,"parentId":4393,"tags":{"url":"/auth","memory.rss":"395100160","memory.heapUsed":"263257696","memory.heapTotal":"341770240"},"startTime":1779567890266,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":7,"timestamp":295933280592,"id":4396,"parentId":3,"tags":{},"startTime":1779567890552,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":11,"timestamp":295933281608,"id":4397,"parentId":3,"tags":{},"startTime":1779567890553,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":90133,"timestamp":296118612876,"id":4404,"parentId":4402,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2Fpage&page=%2Fapp%2Flibrary%2Fpage&appPaths=%2Fapp%2Flibrary%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568075884,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":90144,"timestamp":296118612883,"id":4405,"parentId":4402,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fdocuments%2Fpage&page=%2Fadmin%2Fdocuments%2Fpage&appPaths=%2Fadmin%2Fdocuments%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fdocuments%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568075884,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":90144,"timestamp":296118612889,"id":4406,"parentId":4402,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fsession%2Fpage&page=%2Fapp%2Fsession%2Fpage&appPaths=%2Fapp%2Fsession%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fsession%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568075884,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":90144,"timestamp":296118612895,"id":4407,"parentId":4402,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&page=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&appPaths=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568075884,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":101313,"timestamp":296118612899,"id":4408,"parentId":4402,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fpage&page=%2Fadmin%2Fpage&appPaths=%2Fadmin%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568075884,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":101674,"timestamp":296118612781,"id":4403,"parentId":4402,"tags":{"request":"next-app-loader?name=app%2Fauth%2Fpage&page=%2Fauth%2Fpage&appPaths=%2Fauth%2Fpage&pagePath=private-next-app-dir%2Fauth%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568075883,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":181789,"timestamp":296118603972,"id":4402,"parentId":4401,"tags":{},"startTime":1779568075875,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":4754,"timestamp":296118789606,"id":4434,"parentId":4433,"tags":{},"startTime":1779568076060,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":7,"timestamp":296118794408,"id":4436,"parentId":4433,"tags":{},"startTime":1779568076065,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":5530,"timestamp":296118794633,"id":4437,"parentId":4433,"tags":{},"startTime":1779568076065,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":15,"timestamp":296118800240,"id":4438,"parentId":4433,"tags":{},"startTime":1779568076071,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":6,"timestamp":296118800306,"id":4439,"parentId":4433,"tags":{},"startTime":1779568076071,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":6727,"timestamp":296118794394,"id":4435,"parentId":4433,"tags":{},"startTime":1779568076065,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":609,"timestamp":296118802381,"id":4440,"parentId":4433,"tags":{},"startTime":1779568076073,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":3459,"timestamp":296118803044,"id":4441,"parentId":4433,"tags":{},"startTime":1779568076074,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":1845,"timestamp":296118809239,"id":4442,"parentId":4433,"tags":{},"startTime":1779568076080,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":342,"timestamp":296118811081,"id":4443,"parentId":4433,"tags":{},"startTime":1779568076082,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":158,"timestamp":296118811388,"id":4444,"parentId":4433,"tags":{},"startTime":1779568076082,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":3109,"timestamp":296118811558,"id":4445,"parentId":4433,"tags":{},"startTime":1779568076082,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":36382,"timestamp":296118788649,"id":4433,"parentId":4401,"tags":{},"startTime":1779568076059,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":226428,"timestamp":296118603634,"id":4401,"parentId":4399,"tags":{"name":"server"},"startTime":1779568075874,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":14192,"timestamp":296118830319,"id":4446,"parentId":4399,"tags":{},"startTime":1779568076101,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-server","duration":244995,"timestamp":296118600517,"id":4399,"parentId":3,"tags":{"trigger":"manual"},"startTime":1779568075871,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":5262,"timestamp":296118870119,"id":4452,"parentId":4448,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779568076141,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":5250,"timestamp":296118870140,"id":4456,"parentId":4448,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779568076141,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":5220,"timestamp":296118870171,"id":4461,"parentId":4448,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779568076141,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":6383,"timestamp":296118870185,"id":4464,"parentId":4448,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779568076141,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":7650,"timestamp":296118870040,"id":4450,"parentId":4448,"tags":{"request":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\compiled\\@next\\react-refresh-utils\\dist\\runtime.js"},"startTime":1779568076141,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":8026,"timestamp":296118870161,"id":4459,"parentId":4448,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cknowledge%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779568076141,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":8047,"timestamp":296118870175,"id":4462,"parentId":4448,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779568076141,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":8058,"timestamp":296118870180,"id":4463,"parentId":4448,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Csession%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779568076141,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":8071,"timestamp":296118870189,"id":4465,"parentId":4448,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Cprofile%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779568076141,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":9022,"timestamp":296118870149,"id":4458,"parentId":4448,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cdocuments%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779568076141,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":9043,"timestamp":296118870194,"id":4466,"parentId":4448,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5C%5BtopicId%5D%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779568076141,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":9119,"timestamp":296118870124,"id":4453,"parentId":4448,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Cstylesheet.css%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cglobals.css%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779568076141,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":9116,"timestamp":296118870135,"id":4455,"parentId":4448,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cauth%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779568076141,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":10375,"timestamp":296118870129,"id":4454,"parentId":4448,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Capp-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cclient-page.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cerror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Clayout-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cnot-found-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Crender-from-template-context.js%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779568076141,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":10428,"timestamp":296118870110,"id":4451,"parentId":4448,"tags":{"request":"./node_modules/next/dist/client/app-next-dev.js"},"startTime":1779568076141,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":10400,"timestamp":296118870144,"id":4457,"parentId":4448,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779568076141,"traceId":"0ca0f7fe408e086a"},{"name":"next-swc-transform","duration":5251,"timestamp":296118877275,"id":4469,"parentId":4468,"tags":{},"startTime":1779568076148,"traceId":"0ca0f7fe408e086a"},{"name":"next-swc-loader","duration":5369,"timestamp":296118877167,"id":4468,"parentId":4467,"tags":{},"startTime":1779568076148,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-ts","duration":10935,"timestamp":296118876887,"id":4467,"parentId":4447,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\lib\\services.ts","layer":"app-pages-browser"},"startTime":1779568076148,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":17750,"timestamp":296118870166,"id":4460,"parentId":4448,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Ccurriculum%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779568076141,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":37740,"timestamp":296118850236,"id":4448,"parentId":4447,"tags":{},"startTime":1779568076121,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":1809,"timestamp":296118965578,"id":4471,"parentId":4470,"tags":{},"startTime":1779568076236,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":5,"timestamp":296118967422,"id":4473,"parentId":4470,"tags":{},"startTime":1779568076238,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":56,"timestamp":296118967577,"id":4474,"parentId":4470,"tags":{},"startTime":1779568076238,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":8,"timestamp":296118967673,"id":4475,"parentId":4470,"tags":{},"startTime":1779568076238,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":3,"timestamp":296118967697,"id":4476,"parentId":4470,"tags":{},"startTime":1779568076238,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":1327,"timestamp":296118967412,"id":4472,"parentId":4470,"tags":{},"startTime":1779568076238,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":863,"timestamp":296118970187,"id":4477,"parentId":4470,"tags":{},"startTime":1779568076241,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":3198,"timestamp":296118971074,"id":4478,"parentId":4470,"tags":{},"startTime":1779568076242,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":4370,"timestamp":296118976783,"id":4479,"parentId":4470,"tags":{},"startTime":1779568076247,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":208,"timestamp":296118981152,"id":4480,"parentId":4470,"tags":{},"startTime":1779568076252,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":55,"timestamp":296118981348,"id":4481,"parentId":4470,"tags":{},"startTime":1779568076252,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":4092,"timestamp":296118981406,"id":4482,"parentId":4470,"tags":{},"startTime":1779568076252,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-generateClientManifest","duration":358,"timestamp":296118987278,"id":4484,"parentId":4447,"tags":{},"startTime":1779568076258,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-createassets","duration":570,"timestamp":296118987074,"id":4483,"parentId":4447,"tags":{},"startTime":1779568076258,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":25832,"timestamp":296118964018,"id":4470,"parentId":4447,"tags":{},"startTime":1779568076235,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":141852,"timestamp":296118848069,"id":4447,"parentId":4432,"tags":{"name":"client"},"startTime":1779568076119,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":18136,"timestamp":296118989985,"id":4485,"parentId":4432,"tags":{},"startTime":1779568076261,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-client","duration":229237,"timestamp":296118779900,"id":4432,"parentId":3,"tags":{"trigger":"src/lib/services.ts"},"startTime":1779568076051,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":10,"timestamp":296119016066,"id":4488,"parentId":3,"tags":{},"startTime":1779568076287,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":3,"timestamp":296119016243,"id":4489,"parentId":3,"tags":{},"startTime":1779568076287,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":251000,"timestamp":296118780961,"id":4496,"parentId":3,"tags":{"updatedModules":["[project]/node_modules/next/dist/build/webpack/loaders/next-client-pages-loader.js?absolutePagePath=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Cnode_modules%5Cnext%5Cdist%5Cclient%5Ccomponents%5Cnot-found-error.js&page=%2F_not-found%2Fpage!","[project]/node_modules/next/dist/client/components/not-found-error.js"],"page":"/auth","isPageHidden":false},"startTime":1779568076315,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":19011,"timestamp":296119028972,"id":4491,"parentId":4487,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2Fpage&page=%2Fapp%2Flibrary%2Fpage&appPaths=%2Fapp%2Flibrary%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568076300,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":19013,"timestamp":296119028979,"id":4492,"parentId":4487,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fsession%2Fpage&page=%2Fapp%2Fsession%2Fpage&appPaths=%2Fapp%2Fsession%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fsession%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568076300,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":19013,"timestamp":296119028985,"id":4493,"parentId":4487,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&page=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&appPaths=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568076300,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":19015,"timestamp":296119028990,"id":4494,"parentId":4487,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fdocuments%2Fpage&page=%2Fadmin%2Fdocuments%2Fpage&appPaths=%2Fadmin%2Fdocuments%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fdocuments%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568076300,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":20683,"timestamp":296119028903,"id":4490,"parentId":4487,"tags":{"request":"next-app-loader?name=app%2Fauth%2Fpage&page=%2Fauth%2Fpage&appPaths=%2Fauth%2Fpage&pagePath=private-next-app-dir%2Fauth%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568076300,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":20930,"timestamp":296119028995,"id":4495,"parentId":4487,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fpage&page=%2Fadmin%2Fpage&appPaths=%2Fadmin%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568076300,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":281000,"timestamp":296118781169,"id":4520,"parentId":3,"tags":{"updatedModules":["[project]/node_modules/next/dist/build/webpack/loaders/next-client-pages-loader.js?absolutePagePath=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Cnode_modules%5Cnext%5Cdist%5Cclient%5Ccomponents%5Cnot-found-error.js&page=%2F_not-found%2Fpage!","[project]/node_modules/next/dist/client/components/not-found-error.js","[project]/src/lib/services.ts","[project]/src/lib/hooks/useIngestionStatus.ts","[project]/src/components/admin/DocumentUpload.tsx"],"page":"/admin/documents","isPageHidden":true},"startTime":1779568076362,"traceId":"0ca0f7fe408e086a"},{"name":"next-swc-transform","duration":5350,"timestamp":296119093984,"id":4523,"parentId":4522,"tags":{},"startTime":1779568076365,"traceId":"0ca0f7fe408e086a"},{"name":"next-swc-loader","duration":5590,"timestamp":296119093752,"id":4522,"parentId":4521,"tags":{},"startTime":1779568076364,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-ts","duration":10072,"timestamp":296119093222,"id":4521,"parentId":4486,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\lib\\services.ts","layer":"ssr"},"startTime":1779568076364,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":92740,"timestamp":296119012231,"id":4487,"parentId":4486,"tags":{},"startTime":1779568076283,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":3522,"timestamp":296119144362,"id":4525,"parentId":4524,"tags":{},"startTime":1779568076415,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":9,"timestamp":296119148013,"id":4527,"parentId":4524,"tags":{},"startTime":1779568076419,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":8346,"timestamp":296119148061,"id":4528,"parentId":4524,"tags":{},"startTime":1779568076419,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":15,"timestamp":296119156466,"id":4529,"parentId":4524,"tags":{},"startTime":1779568076427,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":9,"timestamp":296119156512,"id":4530,"parentId":4524,"tags":{},"startTime":1779568076427,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":9812,"timestamp":296119147928,"id":4526,"parentId":4524,"tags":{},"startTime":1779568076419,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":1175,"timestamp":296119159445,"id":4531,"parentId":4524,"tags":{},"startTime":1779568076430,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":5034,"timestamp":296119160648,"id":4532,"parentId":4524,"tags":{},"startTime":1779568076431,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":1231,"timestamp":296119167721,"id":4533,"parentId":4524,"tags":{},"startTime":1779568076438,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":182,"timestamp":296119168950,"id":4534,"parentId":4524,"tags":{},"startTime":1779568076440,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":81,"timestamp":296119169087,"id":4535,"parentId":4524,"tags":{},"startTime":1779568076440,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":2270,"timestamp":296119169175,"id":4536,"parentId":4524,"tags":{},"startTime":1779568076440,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":33255,"timestamp":296119143234,"id":4524,"parentId":4486,"tags":{},"startTime":1779568076414,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":203036,"timestamp":296119011913,"id":4486,"parentId":4449,"tags":{"name":"server"},"startTime":1779568076283,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":16160,"timestamp":296119215134,"id":4537,"parentId":4449,"tags":{},"startTime":1779568076486,"traceId":"0ca0f7fe408e086a"},{"name":"compile-path","duration":631863,"timestamp":296118600570,"id":4400,"tags":{"trigger":"/admin","isTurbopack":false},"startTime":1779568075871,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-server","duration":363971,"timestamp":296118868690,"id":4449,"parentId":3,"tags":{"trigger":"src/lib/services.ts"},"startTime":1779568076139,"traceId":"0ca0f7fe408e086a"}] +[{"name":"handle-request","duration":687591,"timestamp":296118594620,"id":4398,"tags":{"url":"/admin?_rsc=1rqwo","isTurbopack":false},"startTime":1779568075865,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":296119282247,"id":4538,"parentId":4398,"tags":{"url":"/admin?_rsc=1rqwo","memory.rss":"363749376","memory.heapUsed":"237899232","memory.heapTotal":"283385856"},"startTime":1779568076553,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":17794,"timestamp":296119286872,"id":4539,"tags":{"url":"/admin?_rsc=d43c0","isTurbopack":false},"startTime":1779568076558,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":296119304692,"id":4540,"parentId":4539,"tags":{"url":"/admin?_rsc=d43c0","memory.rss":"364670976","memory.heapUsed":"234307200","memory.heapTotal":"282501120"},"startTime":1779568076575,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":24044,"timestamp":296119341159,"id":4541,"tags":{"url":"/admin/documents?_rsc=r08mk","isTurbopack":false},"startTime":1779568076612,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":296119365246,"id":4542,"parentId":4541,"tags":{"url":"/admin/documents?_rsc=r08mk","memory.rss":"365162496","memory.heapUsed":"242775040","memory.heapTotal":"282910720"},"startTime":1779568076636,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":11893,"timestamp":296119371878,"id":4543,"tags":{"url":"/admin/documents?_rsc=1s5w9","isTurbopack":false},"startTime":1779568076643,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":3,"timestamp":296119383827,"id":4544,"parentId":4543,"tags":{"url":"/admin/documents?_rsc=1s5w9","memory.rss":"365162496","memory.heapUsed":"238201192","memory.heapTotal":"282910720"},"startTime":1779568076655,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":50472,"timestamp":296128705285,"id":4551,"parentId":4549,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2Fpage&page=%2Fapp%2Flibrary%2Fpage&appPaths=%2Fapp%2Flibrary%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568085976,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":50489,"timestamp":296128705295,"id":4552,"parentId":4549,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fdocuments%2Fpage&page=%2Fadmin%2Fdocuments%2Fpage&appPaths=%2Fadmin%2Fdocuments%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fdocuments%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568085976,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":50494,"timestamp":296128705299,"id":4553,"parentId":4549,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fsession%2Fpage&page=%2Fapp%2Fsession%2Fpage&appPaths=%2Fapp%2Fsession%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fsession%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568085976,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":50499,"timestamp":296128705305,"id":4554,"parentId":4549,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&page=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&appPaths=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568085976,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":54687,"timestamp":296128705309,"id":4555,"parentId":4549,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fpage&page=%2Fadmin%2Fpage&appPaths=%2Fadmin%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568085976,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":63347,"timestamp":296128705203,"id":4550,"parentId":4549,"tags":{"request":"next-app-loader?name=app%2Fauth%2Fpage&page=%2Fauth%2Fpage&appPaths=%2Fauth%2Fpage&pagePath=private-next-app-dir%2Fauth%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568085976,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":69617,"timestamp":296128705314,"id":4556,"parentId":4549,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fknowledge%2Fpage&page=%2Fadmin%2Fknowledge%2Fpage&appPaths=%2Fadmin%2Fknowledge%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fknowledge%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568085976,"traceId":"0ca0f7fe408e086a"},{"name":"next-swc-transform","duration":7268,"timestamp":296128890652,"id":4586,"parentId":4585,"tags":{},"startTime":1779568086161,"traceId":"0ca0f7fe408e086a"},{"name":"next-swc-loader","duration":7421,"timestamp":296128890508,"id":4585,"parentId":4584,"tags":{},"startTime":1779568086161,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-tsx","duration":11717,"timestamp":296128890152,"id":4584,"parentId":4548,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\components\\admin\\ThemeCard.tsx","layer":"ssr"},"startTime":1779568086161,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":212212,"timestamp":296128699176,"id":4549,"parentId":4548,"tags":{},"startTime":1779568085970,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":4029,"timestamp":296128913914,"id":4588,"parentId":4587,"tags":{},"startTime":1779568086185,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":4,"timestamp":296128917969,"id":4590,"parentId":4587,"tags":{},"startTime":1779568086189,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":2743,"timestamp":296128917986,"id":4591,"parentId":4587,"tags":{},"startTime":1779568086189,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":9,"timestamp":296128920759,"id":4592,"parentId":4587,"tags":{},"startTime":1779568086191,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":12,"timestamp":296128920787,"id":4593,"parentId":4587,"tags":{},"startTime":1779568086191,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":3586,"timestamp":296128917961,"id":4589,"parentId":4587,"tags":{},"startTime":1779568086189,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":382,"timestamp":296128922346,"id":4594,"parentId":4587,"tags":{},"startTime":1779568086193,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":1879,"timestamp":296128922737,"id":4595,"parentId":4587,"tags":{},"startTime":1779568086193,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":707,"timestamp":296128925326,"id":4596,"parentId":4587,"tags":{},"startTime":1779568086196,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":95,"timestamp":296128926032,"id":4597,"parentId":4587,"tags":{},"startTime":1779568086197,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":40,"timestamp":296128926121,"id":4598,"parentId":4587,"tags":{},"startTime":1779568086197,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":1828,"timestamp":296128926163,"id":4599,"parentId":4587,"tags":{},"startTime":1779568086197,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":19996,"timestamp":296128913176,"id":4587,"parentId":4548,"tags":{},"startTime":1779568086184,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":243463,"timestamp":296128698852,"id":4548,"parentId":4546,"tags":{"name":"server"},"startTime":1779568085970,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":7570,"timestamp":296128942403,"id":4600,"parentId":4546,"tags":{},"startTime":1779568086213,"traceId":"0ca0f7fe408e086a"},{"name":"compile-path","duration":253720,"timestamp":296128696874,"id":4547,"tags":{"trigger":"/admin/knowledge","isTurbopack":false},"startTime":1779568085968,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-server","duration":253869,"timestamp":296128696853,"id":4546,"parentId":3,"tags":{"trigger":"manual"},"startTime":1779568085968,"traceId":"0ca0f7fe408e086a"}] +[{"name":"handle-request","duration":287121,"timestamp":296128693847,"id":4545,"tags":{"url":"/admin/knowledge?_rsc=1hlui","isTurbopack":false},"startTime":1779568085965,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":3,"timestamp":296128981010,"id":4601,"parentId":4545,"tags":{"url":"/admin/knowledge?_rsc=1hlui","memory.rss":"371036160","memory.heapUsed":"249774208","memory.heapTotal":"288645120"},"startTime":1779568086252,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":12453,"timestamp":296128985496,"id":4602,"tags":{"url":"/admin/knowledge?_rsc=g58oh","isTurbopack":false},"startTime":1779568086256,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":296128997971,"id":4603,"parentId":4602,"tags":{"url":"/admin/knowledge?_rsc=g58oh","memory.rss":"370003968","memory.heapUsed":"246036184","memory.heapTotal":"287760384"},"startTime":1779568086269,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":20670,"timestamp":296130964042,"id":4610,"parentId":4608,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fdocuments%2Fpage&page=%2Fadmin%2Fdocuments%2Fpage&appPaths=%2Fadmin%2Fdocuments%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fdocuments%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568088235,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":20672,"timestamp":296130964052,"id":4611,"parentId":4608,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2Fpage&page=%2Fapp%2Flibrary%2Fpage&appPaths=%2Fapp%2Flibrary%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568088235,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":20669,"timestamp":296130964059,"id":4612,"parentId":4608,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fknowledge%2Fpage&page=%2Fadmin%2Fknowledge%2Fpage&appPaths=%2Fadmin%2Fknowledge%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fknowledge%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568088235,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":20655,"timestamp":296130964075,"id":4614,"parentId":4608,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fsession%2Fpage&page=%2Fapp%2Fsession%2Fpage&appPaths=%2Fapp%2Fsession%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fsession%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568088235,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":20654,"timestamp":296130964082,"id":4615,"parentId":4608,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&page=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&appPaths=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568088235,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":22017,"timestamp":296130964088,"id":4616,"parentId":4608,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fpage&page=%2Fadmin%2Fpage&appPaths=%2Fadmin%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568088235,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":23379,"timestamp":296130963943,"id":4609,"parentId":4608,"tags":{"request":"next-app-loader?name=app%2Fauth%2Fpage&page=%2Fauth%2Fpage&appPaths=%2Fauth%2Fpage&pagePath=private-next-app-dir%2Fauth%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568088235,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":27204,"timestamp":296130964069,"id":4613,"parentId":4608,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fcurriculum%2Fpage&page=%2Fadmin%2Fcurriculum%2Fpage&appPaths=%2Fadmin%2Fcurriculum%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fcurriculum%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568088235,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":98081,"timestamp":296130957243,"id":4608,"parentId":4607,"tags":{},"startTime":1779568088228,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":1291,"timestamp":296131057561,"id":4649,"parentId":4648,"tags":{},"startTime":1779568088328,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":3,"timestamp":296131058875,"id":4651,"parentId":4648,"tags":{},"startTime":1779568088330,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":2459,"timestamp":296131058889,"id":4652,"parentId":4648,"tags":{},"startTime":1779568088330,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":4,"timestamp":296131061383,"id":4653,"parentId":4648,"tags":{},"startTime":1779568088332,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":3,"timestamp":296131061400,"id":4654,"parentId":4648,"tags":{},"startTime":1779568088332,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":2999,"timestamp":296131058866,"id":4650,"parentId":4648,"tags":{},"startTime":1779568088330,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":360,"timestamp":296131062542,"id":4655,"parentId":4648,"tags":{},"startTime":1779568088333,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":1725,"timestamp":296131062910,"id":4656,"parentId":4648,"tags":{},"startTime":1779568088334,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":733,"timestamp":296131065385,"id":4657,"parentId":4648,"tags":{},"startTime":1779568088336,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":148,"timestamp":296131066116,"id":4658,"parentId":4648,"tags":{},"startTime":1779568088337,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":52,"timestamp":296131066255,"id":4659,"parentId":4648,"tags":{},"startTime":1779568088337,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":1266,"timestamp":296131066310,"id":4660,"parentId":4648,"tags":{},"startTime":1779568088337,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":13756,"timestamp":296131056838,"id":4648,"parentId":4607,"tags":{},"startTime":1779568088328,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":118856,"timestamp":296130956973,"id":4607,"parentId":4605,"tags":{"name":"server"},"startTime":1779568088228,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":7603,"timestamp":296131075909,"id":4661,"parentId":4605,"tags":{},"startTime":1779568088347,"traceId":"0ca0f7fe408e086a"},{"name":"compile-path","duration":128538,"timestamp":296130955430,"id":4606,"tags":{"trigger":"/admin/curriculum","isTurbopack":false},"startTime":1779568088226,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-server","duration":128690,"timestamp":296130955408,"id":4605,"parentId":3,"tags":{"trigger":"manual"},"startTime":1779568088226,"traceId":"0ca0f7fe408e086a"}] +[{"name":"handle-request","duration":159630,"timestamp":296130951588,"id":4604,"tags":{"url":"/admin/curriculum?_rsc=1bnvs","isTurbopack":false},"startTime":1779568088222,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":296131111244,"id":4662,"parentId":4604,"tags":{"url":"/admin/curriculum?_rsc=1bnvs","memory.rss":"375398400","memory.heapUsed":"265575000","memory.heapTotal":"297144320"},"startTime":1779568088382,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":17467,"timestamp":296131114498,"id":4663,"tags":{"url":"/admin/curriculum?_rsc=90jz0","isTurbopack":false},"startTime":1779568088385,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":38,"timestamp":296131132290,"id":4664,"parentId":4663,"tags":{"url":"/admin/curriculum?_rsc=90jz0","memory.rss":"376209408","memory.heapUsed":"263234792","memory.heapTotal":"298356736"},"startTime":1779568088403,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":99265,"timestamp":296135111069,"id":4665,"tags":{"url":"/admin/knowledge","isTurbopack":false},"startTime":1779568092382,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":296135210380,"id":4666,"parentId":4665,"tags":{"url":"/admin/knowledge","memory.rss":"380452864","memory.heapUsed":"270087264","memory.heapTotal":"302026752"},"startTime":1779568092481,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":10,"timestamp":296135541976,"id":4667,"parentId":3,"tags":{},"startTime":1779568092813,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":9,"timestamp":296135546999,"id":4668,"parentId":3,"tags":{},"startTime":1779568092818,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":85156,"timestamp":296225464490,"id":4669,"tags":{"url":"/admin/knowledge","isTurbopack":false},"startTime":1779568182736,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":4,"timestamp":296225549716,"id":4670,"parentId":4669,"tags":{"url":"/admin/knowledge","memory.rss":"312242176","memory.heapUsed":"231795400","memory.heapTotal":"244744192"},"startTime":1779568182821,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":7,"timestamp":296225851681,"id":4671,"parentId":3,"tags":{},"startTime":1779568183123,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":7,"timestamp":296225855288,"id":4672,"parentId":3,"tags":{},"startTime":1779568183127,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":16355,"timestamp":296227590627,"id":4673,"tags":{"url":"/admin/curriculum?_rsc=1est4","isTurbopack":false},"startTime":1779568184862,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":296227607006,"id":4674,"parentId":4673,"tags":{"url":"/admin/curriculum?_rsc=1est4","memory.rss":"314368000","memory.heapUsed":"234925448","memory.heapTotal":"249200640"},"startTime":1779568184878,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":19499,"timestamp":296227612297,"id":4675,"tags":{"url":"/admin/curriculum?_rsc=90jz0","isTurbopack":false},"startTime":1779568184884,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":296227631818,"id":4676,"parentId":4675,"tags":{"url":"/admin/curriculum?_rsc=90jz0","memory.rss":"315420672","memory.heapUsed":"232901792","memory.heapTotal":"249724928"},"startTime":1779568184903,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":29199,"timestamp":296228146164,"id":4677,"tags":{"url":"/admin/documents?_rsc=e47e7","isTurbopack":false},"startTime":1779568185418,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":296228175414,"id":4678,"parentId":4677,"tags":{"url":"/admin/documents?_rsc=e47e7","memory.rss":"316256256","memory.heapUsed":"234942360","memory.heapTotal":"250134528"},"startTime":1779568185447,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":21476,"timestamp":296228184142,"id":4679,"tags":{"url":"/admin/documents?_rsc=1s5w9","isTurbopack":false},"startTime":1779568185455,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":296228205645,"id":4680,"parentId":4679,"tags":{"url":"/admin/documents?_rsc=1s5w9","memory.rss":"316497920","memory.heapUsed":"233230160","memory.heapTotal":"250396672"},"startTime":1779568185477,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":81243,"timestamp":296236872496,"id":4687,"parentId":4685,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fknowledge%2Fpage&page=%2Fadmin%2Fknowledge%2Fpage&appPaths=%2Fadmin%2Fknowledge%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fknowledge%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568194143,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":81246,"timestamp":296236872505,"id":4688,"parentId":4685,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fcurriculum%2Fpage&page=%2Fadmin%2Fcurriculum%2Fpage&appPaths=%2Fadmin%2Fcurriculum%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fcurriculum%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568194143,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":81243,"timestamp":296236872512,"id":4689,"parentId":4685,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fdocuments%2Fpage&page=%2Fadmin%2Fdocuments%2Fpage&appPaths=%2Fadmin%2Fdocuments%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fdocuments%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568194143,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":81237,"timestamp":296236872525,"id":4691,"parentId":4685,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&page=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&appPaths=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568194143,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":81235,"timestamp":296236872531,"id":4692,"parentId":4685,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fsession%2Fpage&page=%2Fapp%2Fsession%2Fpage&appPaths=%2Fapp%2Fsession%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fsession%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568194143,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":88122,"timestamp":296236872519,"id":4690,"parentId":4685,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fpage&page=%2Fapp%2Fpage&appPaths=%2Fapp%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568194143,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":88507,"timestamp":296236872428,"id":4686,"parentId":4685,"tags":{"request":"next-app-loader?name=app%2Fauth%2Fpage&page=%2Fauth%2Fpage&appPaths=%2Fauth%2Fpage&pagePath=private-next-app-dir%2Fauth%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568194143,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":153770,"timestamp":296236855961,"id":4685,"parentId":4684,"tags":{},"startTime":1779568194126,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":4755,"timestamp":296237012843,"id":4721,"parentId":4720,"tags":{},"startTime":1779568194283,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":8,"timestamp":296237017647,"id":4723,"parentId":4720,"tags":{},"startTime":1779568194288,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":3234,"timestamp":296237017677,"id":4724,"parentId":4720,"tags":{},"startTime":1779568194288,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":13,"timestamp":296237020947,"id":4725,"parentId":4720,"tags":{},"startTime":1779568194291,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":4,"timestamp":296237020980,"id":4726,"parentId":4720,"tags":{},"startTime":1779568194291,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":4096,"timestamp":296237017631,"id":4722,"parentId":4720,"tags":{},"startTime":1779568194288,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":522,"timestamp":296237023101,"id":4727,"parentId":4720,"tags":{},"startTime":1779568194293,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":2142,"timestamp":296237023641,"id":4728,"parentId":4720,"tags":{},"startTime":1779568194294,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":3459,"timestamp":296237027148,"id":4729,"parentId":4720,"tags":{},"startTime":1779568194297,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":351,"timestamp":296237030541,"id":4730,"parentId":4720,"tags":{},"startTime":1779568194301,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":106,"timestamp":296237030871,"id":4731,"parentId":4720,"tags":{},"startTime":1779568194301,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":1920,"timestamp":296237030984,"id":4732,"parentId":4720,"tags":{},"startTime":1779568194301,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":27993,"timestamp":296237011218,"id":4720,"parentId":4684,"tags":{},"startTime":1779568194281,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":189087,"timestamp":296236855606,"id":4684,"parentId":4682,"tags":{"name":"server"},"startTime":1779568194126,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":8057,"timestamp":296237044778,"id":4733,"parentId":4682,"tags":{},"startTime":1779568194315,"traceId":"0ca0f7fe408e086a"},{"name":"compile-path","duration":200955,"timestamp":296236852480,"id":4683,"tags":{"trigger":"/app","isTurbopack":false},"startTime":1779568194123,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-server","duration":201164,"timestamp":296236852421,"id":4682,"parentId":3,"tags":{"trigger":"manual"},"startTime":1779568194123,"traceId":"0ca0f7fe408e086a"}] +[{"name":"handle-request","duration":336885,"timestamp":296236843476,"id":4681,"tags":{"url":"/app","isTurbopack":false},"startTime":1779568194114,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":296237180420,"id":4736,"parentId":4681,"tags":{"url":"/app","memory.rss":"327151616","memory.heapUsed":"236256312","memory.heapTotal":"283574272"},"startTime":1779568194451,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":60775,"timestamp":296237173028,"id":4735,"tags":{"url":"/app/session","isTurbopack":false},"startTime":1779568194443,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":296237233857,"id":4738,"parentId":4735,"tags":{"url":"/app/session","memory.rss":"328208384","memory.heapUsed":"251160464","memory.heapTotal":"284499968"},"startTime":1779568194504,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":63593,"timestamp":296237172447,"id":4734,"tags":{"url":"/app","isTurbopack":false},"startTime":1779568194443,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":0,"timestamp":296237236061,"id":4739,"parentId":4734,"tags":{"url":"/app","memory.rss":"328208384","memory.heapUsed":"238415072","memory.heapTotal":"284499968"},"startTime":1779568194506,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":44314,"timestamp":296237228606,"id":4737,"tags":{"url":"/app/session","isTurbopack":false},"startTime":1779568194499,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":296237272971,"id":4740,"parentId":4737,"tags":{"url":"/app/session","memory.rss":"328278016","memory.heapUsed":"239540656","memory.heapTotal":"284762112"},"startTime":1779568194543,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":13,"timestamp":296238042853,"id":4741,"parentId":3,"tags":{},"startTime":1779568195313,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":5,"timestamp":296238043255,"id":4742,"parentId":3,"tags":{},"startTime":1779568195313,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":10,"timestamp":296238057221,"id":4743,"parentId":3,"tags":{},"startTime":1779568195327,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":1,"timestamp":296238057361,"id":4744,"parentId":3,"tags":{},"startTime":1779568195327,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":7,"timestamp":296238096557,"id":4745,"parentId":3,"tags":{},"startTime":1779568195367,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":0,"timestamp":296238096584,"id":4746,"parentId":3,"tags":{},"startTime":1779568195367,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":5,"timestamp":296238099217,"id":4747,"parentId":3,"tags":{},"startTime":1779568195369,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":82294,"timestamp":296414079167,"id":4748,"tags":{"url":"/admin/documents","isTurbopack":false},"startTime":1779568371350,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":0,"timestamp":296414161492,"id":4749,"parentId":4748,"tags":{"url":"/admin/documents","memory.rss":"297414656","memory.heapUsed":"228499288","memory.heapTotal":"245727232"},"startTime":1779568371432,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":5,"timestamp":296414493339,"id":4750,"parentId":3,"tags":{},"startTime":1779568371764,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":5,"timestamp":296414497146,"id":4751,"parentId":3,"tags":{},"startTime":1779568371768,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":27919,"timestamp":296416636335,"id":4752,"tags":{"url":"/admin/knowledge?_rsc=15z2o","isTurbopack":false},"startTime":1779568373907,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":296416664301,"id":4753,"parentId":4752,"tags":{"url":"/admin/knowledge?_rsc=15z2o","memory.rss":"299139072","memory.heapUsed":"231763832","memory.heapTotal":"250269696"},"startTime":1779568373935,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":29946,"timestamp":296416671713,"id":4754,"tags":{"url":"/admin/knowledge?_rsc=g58oh","isTurbopack":false},"startTime":1779568373942,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":296416701695,"id":4755,"parentId":4754,"tags":{"url":"/admin/knowledge?_rsc=g58oh","memory.rss":"300175360","memory.heapUsed":"229420560","memory.heapTotal":"250269696"},"startTime":1779568373972,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":71917,"timestamp":296419086576,"id":4756,"tags":{"url":"/admin/knowledge","isTurbopack":false},"startTime":1779568376357,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":0,"timestamp":296419158526,"id":4757,"parentId":4756,"tags":{"url":"/admin/knowledge","memory.rss":"300572672","memory.heapUsed":"231403632","memory.heapTotal":"250269696"},"startTime":1779568376429,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":10,"timestamp":296419455555,"id":4758,"parentId":3,"tags":{},"startTime":1779568376726,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":6,"timestamp":296419460205,"id":4759,"parentId":3,"tags":{},"startTime":1779568376731,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":81637,"timestamp":296425935423,"id":4760,"tags":{"url":"/admin/documents","isTurbopack":false},"startTime":1779568383206,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":296426017121,"id":4761,"parentId":4760,"tags":{"url":"/admin/documents","memory.rss":"302600192","memory.heapUsed":"232295792","memory.heapTotal":"246075392"},"startTime":1779568383288,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":10,"timestamp":296426547357,"id":4762,"parentId":3,"tags":{},"startTime":1779568383818,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":8,"timestamp":296426550604,"id":4763,"parentId":3,"tags":{},"startTime":1779568383821,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":14111,"timestamp":296426572853,"id":4772,"parentId":4769,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779568383844,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":14069,"timestamp":296426572908,"id":4776,"parentId":4769,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779568383844,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":13999,"timestamp":296426572981,"id":4781,"parentId":4769,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779568383844,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":17989,"timestamp":296426573015,"id":4784,"parentId":4769,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779568383844,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":18169,"timestamp":296426573051,"id":4787,"parentId":4769,"tags":{"request":"next-client-pages-loader?absolutePagePath=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Cnode_modules%5Cnext%5Cdist%5Cclient%5Ccomponents%5Cnot-found-error.js&page=%2F_not-found%2Fpage!"},"startTime":1779568383844,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":19366,"timestamp":296426572712,"id":4770,"parentId":4769,"tags":{"request":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\compiled\\@next\\react-refresh-utils\\dist\\runtime.js"},"startTime":1779568383843,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":20541,"timestamp":296426572956,"id":4779,"parentId":4769,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cknowledge%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779568383844,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":20556,"timestamp":296426572969,"id":4780,"parentId":4769,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Ccurriculum%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779568383844,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":20569,"timestamp":296426572992,"id":4782,"parentId":4769,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779568383844,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":20580,"timestamp":296426573003,"id":4783,"parentId":4769,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Csession%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779568383844,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":20590,"timestamp":296426573026,"id":4785,"parentId":4769,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Cprofile%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779568383844,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":25051,"timestamp":296426572932,"id":4778,"parentId":4769,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cdocuments%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779568383844,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":25103,"timestamp":296426573038,"id":4786,"parentId":4769,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5C%5BtopicId%5D%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779568383844,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":25291,"timestamp":296426572867,"id":4773,"parentId":4769,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Cstylesheet.css%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cglobals.css%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779568383844,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":29952,"timestamp":296426572880,"id":4774,"parentId":4769,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Capp-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cclient-page.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cerror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Clayout-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cnot-found-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Crender-from-template-context.js%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779568383844,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":30294,"timestamp":296426572895,"id":4775,"parentId":4769,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cauth%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779568383844,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":30296,"timestamp":296426572920,"id":4777,"parentId":4769,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779568383844,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":31067,"timestamp":296426572832,"id":4771,"parentId":4769,"tags":{"request":"./node_modules/next/dist/client/app-next-dev.js"},"startTime":1779568383844,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":36835,"timestamp":296426567354,"id":4769,"parentId":4768,"tags":{},"startTime":1779568383838,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":15207,"timestamp":296426676921,"id":4789,"parentId":4788,"tags":{},"startTime":1779568383948,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":20,"timestamp":296426692213,"id":4791,"parentId":4788,"tags":{},"startTime":1779568383963,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":611,"timestamp":296426692500,"id":4792,"parentId":4788,"tags":{},"startTime":1779568383963,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":65,"timestamp":296426693258,"id":4793,"parentId":4788,"tags":{},"startTime":1779568383964,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":29,"timestamp":296426693418,"id":4794,"parentId":4788,"tags":{},"startTime":1779568383964,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":6620,"timestamp":296426692177,"id":4790,"parentId":4788,"tags":{},"startTime":1779568383963,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":2547,"timestamp":296426703187,"id":4795,"parentId":4788,"tags":{},"startTime":1779568383974,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":17814,"timestamp":296426705820,"id":4796,"parentId":4788,"tags":{},"startTime":1779568383977,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":27851,"timestamp":296426739355,"id":4797,"parentId":4788,"tags":{},"startTime":1779568384010,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":667,"timestamp":296426767204,"id":4798,"parentId":4788,"tags":{},"startTime":1779568384038,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":128,"timestamp":296426767838,"id":4799,"parentId":4788,"tags":{},"startTime":1779568384039,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":23441,"timestamp":296426767976,"id":4800,"parentId":4788,"tags":{},"startTime":1779568384039,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-generateClientManifest","duration":2498,"timestamp":296426800924,"id":4802,"parentId":4768,"tags":{},"startTime":1779568384072,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-createassets","duration":3740,"timestamp":296426799771,"id":4801,"parentId":4768,"tags":{},"startTime":1779568384071,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":146438,"timestamp":296426672900,"id":4788,"parentId":4768,"tags":{},"startTime":1779568383944,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":255213,"timestamp":296426564294,"id":4768,"parentId":4765,"tags":{"name":"client"},"startTime":1779568383835,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":40414,"timestamp":296426819717,"id":4803,"parentId":4765,"tags":{},"startTime":1779568384091,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-client","duration":305003,"timestamp":296426558974,"id":4765,"parentId":3,"tags":{"trigger":"manual"},"startTime":1779568383830,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":12,"timestamp":296426876356,"id":4806,"parentId":3,"tags":{},"startTime":1779568384147,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":8,"timestamp":296426877586,"id":4807,"parentId":3,"tags":{},"startTime":1779568384148,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":367000,"timestamp":296426559980,"id":4814,"parentId":3,"tags":{"updatedModules":[],"page":"/admin/documents","isPageHidden":false},"startTime":1779568384201,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":402000,"timestamp":296426560339,"id":4815,"parentId":3,"tags":{"updatedModules":[],"page":"/admin/knowledge","isPageHidden":true},"startTime":1779568384250,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":160350,"timestamp":296426914039,"id":4810,"parentId":4805,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fdocuments%2Fpage&page=%2Fadmin%2Fdocuments%2Fpage&appPaths=%2Fadmin%2Fdocuments%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fdocuments%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568384185,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":160368,"timestamp":296426914054,"id":4811,"parentId":4805,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fknowledge%2Fpage&page=%2Fadmin%2Fknowledge%2Fpage&appPaths=%2Fadmin%2Fknowledge%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fknowledge%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568384185,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":160373,"timestamp":296426914071,"id":4812,"parentId":4805,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&page=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&appPaths=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568384185,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":160371,"timestamp":296426914085,"id":4813,"parentId":4805,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fsession%2Fpage&page=%2Fapp%2Fsession%2Fpage&appPaths=%2Fapp%2Fsession%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fsession%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568384185,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":168410,"timestamp":296426914013,"id":4809,"parentId":4805,"tags":{"request":"next-app-loader?name=app%2Fauth%2Fpage&page=%2Fauth%2Fpage&appPaths=%2Fauth%2Fpage&pagePath=private-next-app-dir%2Fauth%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568384185,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":168809,"timestamp":296426913745,"id":4808,"parentId":4805,"tags":{"request":"next-app-loader?name=app%2F_not-found%2Fpage&page=%2F_not-found%2Fpage&appPaths=&pagePath=..%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fnot-found-error.js&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568384185,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":342823,"timestamp":296426869220,"id":4805,"parentId":4804,"tags":{},"startTime":1779568384140,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":5789,"timestamp":296427217251,"id":4838,"parentId":4837,"tags":{},"startTime":1779568384488,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":34,"timestamp":296427223176,"id":4840,"parentId":4837,"tags":{},"startTime":1779568384494,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":16613,"timestamp":296427223281,"id":4841,"parentId":4837,"tags":{},"startTime":1779568384494,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":62,"timestamp":296427240036,"id":4842,"parentId":4837,"tags":{},"startTime":1779568384511,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":24,"timestamp":296427240176,"id":4843,"parentId":4837,"tags":{},"startTime":1779568384511,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":20455,"timestamp":296427223135,"id":4839,"parentId":4837,"tags":{},"startTime":1779568384494,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":667,"timestamp":296427245260,"id":4844,"parentId":4837,"tags":{},"startTime":1779568384516,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":7623,"timestamp":296427245962,"id":4845,"parentId":4837,"tags":{},"startTime":1779568384517,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":5711,"timestamp":296427257040,"id":4846,"parentId":4837,"tags":{},"startTime":1779568384528,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":292,"timestamp":296427262747,"id":4847,"parentId":4837,"tags":{},"startTime":1779568384534,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":146,"timestamp":296427263016,"id":4848,"parentId":4837,"tags":{},"startTime":1779568384534,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":8396,"timestamp":296427263171,"id":4849,"parentId":4837,"tags":{},"startTime":1779568384534,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":61276,"timestamp":296427215752,"id":4837,"parentId":4804,"tags":{},"startTime":1779568384487,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":415872,"timestamp":296426868604,"id":4804,"parentId":4767,"tags":{"name":"server"},"startTime":1779568384139,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":52422,"timestamp":296427284621,"id":4850,"parentId":4767,"tags":{},"startTime":1779568384555,"traceId":"0ca0f7fe408e086a"},{"name":"compile-path","duration":779594,"timestamp":296426559059,"id":4766,"tags":{"trigger":"/_not-found","isTurbopack":false},"startTime":1779568383830,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-server","duration":779482,"timestamp":296426559616,"id":4767,"parentId":3,"tags":{"trigger":"manual"},"startTime":1779568383830,"traceId":"0ca0f7fe408e086a"}] +[{"name":"handle-request","duration":1026586,"timestamp":296426553640,"id":4764,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779568383824,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":296427580271,"id":4851,"parentId":4764,"tags":{"url":"/icons/192.png","memory.rss":"316407808","memory.heapUsed":"262078840","memory.heapTotal":"292151296"},"startTime":1779568384851,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":60068,"timestamp":296429853137,"id":4852,"tags":{"url":"/admin/knowledge?_rsc=15z2o","isTurbopack":false},"startTime":1779568387124,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":5,"timestamp":296429913295,"id":4853,"parentId":4852,"tags":{"url":"/admin/knowledge?_rsc=15z2o","memory.rss":"320073728","memory.heapUsed":"260826280","memory.heapTotal":"296169472"},"startTime":1779568387184,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":45698,"timestamp":296429922930,"id":4854,"tags":{"url":"/admin/knowledge?_rsc=g58oh","isTurbopack":false},"startTime":1779568387194,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":5,"timestamp":296429968697,"id":4855,"parentId":4854,"tags":{"url":"/admin/knowledge?_rsc=g58oh","memory.rss":"320651264","memory.heapUsed":"255927216","memory.heapTotal":"297218048"},"startTime":1779568387239,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":54359,"timestamp":296430109459,"id":4856,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779568387380,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":6,"timestamp":296430163932,"id":4857,"parentId":4856,"tags":{"url":"/icons/192.png","memory.rss":"320729088","memory.heapUsed":"268592408","memory.heapTotal":"297218048"},"startTime":1779568387435,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":46473,"timestamp":296430589048,"id":4858,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779568387860,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":296430635586,"id":4859,"parentId":4858,"tags":{"url":"/icons/192.png","memory.rss":"320864256","memory.heapUsed":"267073840","memory.heapTotal":"297218048"},"startTime":1779568387906,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":60007,"timestamp":296431841252,"id":4860,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779568389112,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":4,"timestamp":296431901357,"id":4861,"parentId":4860,"tags":{"url":"/icons/192.png","memory.rss":"321003520","memory.heapUsed":"264874224","memory.heapTotal":"297218048"},"startTime":1779568389172,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":46737,"timestamp":296432535755,"id":4862,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779568389807,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":5,"timestamp":296432582590,"id":4863,"parentId":4862,"tags":{"url":"/icons/192.png","memory.rss":"321126400","memory.heapUsed":"263270048","memory.heapTotal":"297480192"},"startTime":1779568389853,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":66121,"timestamp":296448435671,"id":4870,"parentId":4868,"tags":{"request":"next-app-loader?name=app%2Fauth%2Fpage&page=%2Fauth%2Fpage&appPaths=%2Fauth%2Fpage&pagePath=private-next-app-dir%2Fauth%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568405706,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":66151,"timestamp":296448435690,"id":4871,"parentId":4868,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fdocuments%2Fpage&page=%2Fadmin%2Fdocuments%2Fpage&appPaths=%2Fadmin%2Fdocuments%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fdocuments%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568405706,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":66159,"timestamp":296448435704,"id":4872,"parentId":4868,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fsession%2Fpage&page=%2Fapp%2Fsession%2Fpage&appPaths=%2Fapp%2Fsession%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fsession%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568405706,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":66162,"timestamp":296448435718,"id":4873,"parentId":4868,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&page=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&appPaths=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568405707,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":66151,"timestamp":296448435746,"id":4875,"parentId":4868,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fknowledge%2Fpage&page=%2Fadmin%2Fknowledge%2Fpage&appPaths=%2Fadmin%2Fknowledge%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fknowledge%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568405707,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":71280,"timestamp":296448435733,"id":4874,"parentId":4868,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fpage&page=%2Fapp%2Fpage&appPaths=%2Fapp%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568405707,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":73815,"timestamp":296448435560,"id":4869,"parentId":4868,"tags":{"request":"next-app-loader?name=app%2F_not-found%2Fpage&page=%2F_not-found%2Fpage&appPaths=&pagePath=..%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fnot-found-error.js&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568405706,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":231935,"timestamp":296448409839,"id":4868,"parentId":4867,"tags":{},"startTime":1779568405681,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":14118,"timestamp":296448650169,"id":4902,"parentId":4901,"tags":{},"startTime":1779568405921,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":16,"timestamp":296448664385,"id":4904,"parentId":4901,"tags":{},"startTime":1779568405935,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":14700,"timestamp":296448664461,"id":4905,"parentId":4901,"tags":{},"startTime":1779568405935,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":13,"timestamp":296448679229,"id":4906,"parentId":4901,"tags":{},"startTime":1779568405950,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":7,"timestamp":296448679267,"id":4907,"parentId":4901,"tags":{},"startTime":1779568405950,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":17631,"timestamp":296448664352,"id":4903,"parentId":4901,"tags":{},"startTime":1779568405935,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":2093,"timestamp":296448684633,"id":4908,"parentId":4901,"tags":{},"startTime":1779568405955,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":5767,"timestamp":296448686923,"id":4909,"parentId":4901,"tags":{},"startTime":1779568405958,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":4235,"timestamp":296448695320,"id":4910,"parentId":4901,"tags":{},"startTime":1779568405966,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":479,"timestamp":296448699550,"id":4911,"parentId":4901,"tags":{},"startTime":1779568405970,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":464,"timestamp":296448699989,"id":4912,"parentId":4901,"tags":{},"startTime":1779568405971,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":6505,"timestamp":296448700508,"id":4913,"parentId":4901,"tags":{},"startTime":1779568405971,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":75035,"timestamp":296448647243,"id":4901,"parentId":4867,"tags":{},"startTime":1779568405918,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":324749,"timestamp":296448409424,"id":4867,"parentId":4865,"tags":{"name":"server"},"startTime":1779568405680,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":17171,"timestamp":296448734320,"id":4914,"parentId":4865,"tags":{},"startTime":1779568406005,"traceId":"0ca0f7fe408e086a"},{"name":"compile-path","duration":346579,"timestamp":296448405576,"id":4866,"tags":{"trigger":"/app","isTurbopack":false},"startTime":1779568405676,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-server","duration":346905,"timestamp":296448405450,"id":4865,"parentId":3,"tags":{"trigger":"manual"},"startTime":1779568405676,"traceId":"0ca0f7fe408e086a"}] +[{"name":"handle-request","duration":629976,"timestamp":296448397116,"id":4864,"tags":{"url":"/app","isTurbopack":false},"startTime":1779568405668,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":3,"timestamp":296449027157,"id":4916,"parentId":4864,"tags":{"url":"/app","memory.rss":"326115328","memory.heapUsed":"247250160","memory.heapTotal":"314535936"},"startTime":1779568406298,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":128914,"timestamp":296449015586,"id":4915,"tags":{"url":"/app/session","isTurbopack":false},"startTime":1779568406286,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":8,"timestamp":296449144627,"id":4917,"parentId":4915,"tags":{"url":"/app/session","memory.rss":"331251712","memory.heapUsed":"246735576","memory.heapTotal":"315461632"},"startTime":1779568406415,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":15,"timestamp":296449679375,"id":4919,"parentId":3,"tags":{},"startTime":1779568406950,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":3,"timestamp":296449679625,"id":4920,"parentId":3,"tags":{},"startTime":1779568406950,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":6,"timestamp":296449714620,"id":4921,"parentId":3,"tags":{},"startTime":1779568406985,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":206204,"timestamp":296449671083,"id":4918,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779568406942,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":296449877328,"id":4923,"parentId":4918,"tags":{"url":"/icons/192.png","memory.rss":"336244736","memory.heapUsed":"240554504","memory.heapTotal":"315461632"},"startTime":1779568407148,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":59490,"timestamp":296449868817,"id":4922,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779568407140,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":3,"timestamp":296449928369,"id":4924,"parentId":4922,"tags":{"url":"/icons/192.png","memory.rss":"336240640","memory.heapUsed":"248653872","memory.heapTotal":"315461632"},"startTime":1779568407199,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":117765,"timestamp":296454714576,"id":4931,"parentId":4929,"tags":{"request":"next-app-loader?name=app%2Fauth%2Fpage&page=%2Fauth%2Fpage&appPaths=%2Fauth%2Fpage&pagePath=private-next-app-dir%2Fauth%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568411985,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":117761,"timestamp":296454714616,"id":4932,"parentId":4929,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fsession%2Fpage&page=%2Fapp%2Fsession%2Fpage&appPaths=%2Fapp%2Fsession%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fsession%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568411985,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":117745,"timestamp":296454714646,"id":4933,"parentId":4929,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&page=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&appPaths=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568411985,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":117734,"timestamp":296454714676,"id":4934,"parentId":4929,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fknowledge%2Fpage&page=%2Fadmin%2Fknowledge%2Fpage&appPaths=%2Fadmin%2Fknowledge%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fknowledge%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568411985,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":117715,"timestamp":296454714734,"id":4936,"parentId":4929,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fdocuments%2Fpage&page=%2Fadmin%2Fdocuments%2Fpage&appPaths=%2Fadmin%2Fdocuments%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fdocuments%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568411986,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":147249,"timestamp":296454714706,"id":4935,"parentId":4929,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fpage&page=%2Fapp%2Fpage&appPaths=%2Fapp%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568411985,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":155518,"timestamp":296454714382,"id":4930,"parentId":4929,"tags":{"request":"next-app-loader?name=app%2F_not-found%2Fpage&page=%2F_not-found%2Fpage&appPaths=&pagePath=..%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fnot-found-error.js&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568411985,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":181018,"timestamp":296454714760,"id":4937,"parentId":4929,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fprofile%2Fpage&page=%2Fapp%2Fprofile%2Fpage&appPaths=%2Fapp%2Fprofile%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fprofile%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568411986,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":379474,"timestamp":296454688570,"id":4929,"parentId":4928,"tags":{},"startTime":1779568411959,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":6012,"timestamp":296455075765,"id":4968,"parentId":4967,"tags":{},"startTime":1779568412347,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":14,"timestamp":296455081834,"id":4970,"parentId":4967,"tags":{},"startTime":1779568412353,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":11982,"timestamp":296455081875,"id":4971,"parentId":4967,"tags":{},"startTime":1779568412353,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":37,"timestamp":296455094009,"id":4972,"parentId":4967,"tags":{},"startTime":1779568412365,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":13,"timestamp":296455094106,"id":4973,"parentId":4967,"tags":{},"startTime":1779568412365,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":15640,"timestamp":296455081817,"id":4969,"parentId":4967,"tags":{},"startTime":1779568412353,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":956,"timestamp":296455100010,"id":4974,"parentId":4967,"tags":{},"startTime":1779568412371,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":6225,"timestamp":296455100995,"id":4975,"parentId":4967,"tags":{},"startTime":1779568412372,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":2476,"timestamp":296455108997,"id":4976,"parentId":4967,"tags":{},"startTime":1779568412380,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":347,"timestamp":296455111469,"id":4977,"parentId":4967,"tags":{},"startTime":1779568412382,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":152,"timestamp":296455111787,"id":4978,"parentId":4967,"tags":{},"startTime":1779568412383,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":5191,"timestamp":296455111956,"id":4979,"parentId":4967,"tags":{},"startTime":1779568412383,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":54363,"timestamp":296455073284,"id":4967,"parentId":4928,"tags":{},"startTime":1779568412344,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":460558,"timestamp":296454687750,"id":4928,"parentId":4926,"tags":{"name":"server"},"startTime":1779568411959,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":27773,"timestamp":296455148525,"id":4980,"parentId":4926,"tags":{},"startTime":1779568412419,"traceId":"0ca0f7fe408e086a"},{"name":"compile-path","duration":496065,"timestamp":296454682716,"id":4927,"tags":{"trigger":"/app/profile","isTurbopack":false},"startTime":1779568411954,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-server","duration":496658,"timestamp":296454682607,"id":4926,"parentId":3,"tags":{"trigger":"manual"},"startTime":1779568411953,"traceId":"0ca0f7fe408e086a"}] +[{"name":"handle-request","duration":594718,"timestamp":296454668055,"id":4925,"tags":{"url":"/app/profile?_rsc=wpb2v","isTurbopack":false},"startTime":1779568411939,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":296455262819,"id":4981,"parentId":4925,"tags":{"url":"/app/profile?_rsc=wpb2v","memory.rss":"345079808","memory.heapUsed":"258812344","memory.heapTotal":"297824256"},"startTime":1779568412534,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":31463,"timestamp":296455267368,"id":4982,"tags":{"url":"/app/profile?_rsc=1x941","isTurbopack":false},"startTime":1779568412538,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":3,"timestamp":296455298877,"id":4983,"parentId":4982,"tags":{"url":"/app/profile?_rsc=1x941","memory.rss":"343932928","memory.heapUsed":"256712592","memory.heapTotal":"297201664"},"startTime":1779568412570,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":63297,"timestamp":296455393435,"id":4984,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779568412664,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":296455456768,"id":4985,"parentId":4984,"tags":{"url":"/icons/192.png","memory.rss":"343932928","memory.heapUsed":"254827544","memory.heapTotal":"297201664"},"startTime":1779568412728,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":69827,"timestamp":296456882414,"id":4986,"tags":{"url":"/auth","isTurbopack":false},"startTime":1779568414153,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":3,"timestamp":296456952321,"id":4987,"parentId":4986,"tags":{"url":"/auth","memory.rss":"344354816","memory.heapUsed":"255406512","memory.heapTotal":"298172416"},"startTime":1779568414223,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":9,"timestamp":296457356388,"id":4988,"parentId":3,"tags":{},"startTime":1779568414627,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":10,"timestamp":296457359430,"id":4989,"parentId":3,"tags":{},"startTime":1779568414630,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":3,"timestamp":296457359589,"id":4990,"parentId":3,"tags":{},"startTime":1779568414630,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":45083,"timestamp":296457363050,"id":4991,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779568414634,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":296457408180,"id":4992,"parentId":4991,"tags":{"url":"/icons/192.png","memory.rss":"344363008","memory.heapUsed":"263003344","memory.heapTotal":"298172416"},"startTime":1779568414679,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":32170,"timestamp":296478447530,"id":4993,"tags":{"url":"/app?_rsc=1rqwo","isTurbopack":false},"startTime":1779568435719,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":296478479732,"id":4994,"parentId":4993,"tags":{"url":"/app?_rsc=1rqwo","memory.rss":"272670720","memory.heapUsed":"234391624","memory.heapTotal":"246652928"},"startTime":1779568435751,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":25800,"timestamp":296478484514,"id":4995,"tags":{"url":"/app?_rsc=1wlvp","isTurbopack":false},"startTime":1779568435756,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":296478510345,"id":4996,"parentId":4995,"tags":{"url":"/app?_rsc=1wlvp","memory.rss":"273244160","memory.heapUsed":"235457072","memory.heapTotal":"247177216"},"startTime":1779568435782,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":57195,"timestamp":296478588275,"id":4997,"tags":{"url":"/app/session?_rsc=ailj2","isTurbopack":false},"startTime":1779568435860,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":3,"timestamp":296478645520,"id":4999,"parentId":4997,"tags":{"url":"/app/session?_rsc=ailj2","memory.rss":"277266432","memory.heapUsed":"238483000","memory.heapTotal":"252821504"},"startTime":1779568435917,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":66429,"timestamp":296478627323,"id":4998,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779568435899,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":296478693784,"id":5001,"parentId":4998,"tags":{"url":"/icons/192.png","memory.rss":"278646784","memory.heapUsed":"236312480","memory.heapTotal":"252682240"},"startTime":1779568435965,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":49995,"timestamp":296478661350,"id":5000,"tags":{"url":"/app/session?_rsc=1tpc5","isTurbopack":false},"startTime":1779568435933,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":4,"timestamp":296478711405,"id":5002,"parentId":5000,"tags":{"url":"/app/session?_rsc=1tpc5","memory.rss":"278777856","memory.heapUsed":"236731568","memory.heapTotal":"252682240"},"startTime":1779568435983,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":43987,"timestamp":296478811748,"id":5003,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779568436083,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":296478855788,"id":5004,"parentId":5003,"tags":{"url":"/icons/192.png","memory.rss":"279277568","memory.heapUsed":"238998648","memory.heapTotal":"261332992"},"startTime":1779568436127,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":87372,"timestamp":296505504432,"id":5011,"parentId":5009,"tags":{"request":"next-app-loader?name=app%2Fauth%2Fpage&page=%2Fauth%2Fpage&appPaths=%2Fauth%2Fpage&pagePath=private-next-app-dir%2Fauth%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568462776,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":87359,"timestamp":296505504477,"id":5012,"parentId":5009,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fdocuments%2Fpage&page=%2Fadmin%2Fdocuments%2Fpage&appPaths=%2Fadmin%2Fdocuments%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fdocuments%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568462776,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":87343,"timestamp":296505504509,"id":5013,"parentId":5009,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fsession%2Fpage&page=%2Fapp%2Fsession%2Fpage&appPaths=%2Fapp%2Fsession%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fsession%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568462776,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":87321,"timestamp":296505504542,"id":5014,"parentId":5009,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&page=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&appPaths=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568462776,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":87299,"timestamp":296505504571,"id":5015,"parentId":5009,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fknowledge%2Fpage&page=%2Fadmin%2Fknowledge%2Fpage&appPaths=%2Fadmin%2Fknowledge%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fknowledge%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568462776,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":87272,"timestamp":296505504606,"id":5016,"parentId":5009,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fprofile%2Fpage&page=%2Fapp%2Fprofile%2Fpage&appPaths=%2Fapp%2Fprofile%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fprofile%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568462776,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":94103,"timestamp":296505504630,"id":5017,"parentId":5009,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fpage&page=%2Fapp%2Fpage&appPaths=%2Fapp%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568462776,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":95785,"timestamp":296505504659,"id":5018,"parentId":5009,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2Fpage&page=%2Fapp%2Flibrary%2Fpage&appPaths=%2Fapp%2Flibrary%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568462776,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":97067,"timestamp":296505504135,"id":5010,"parentId":5009,"tags":{"request":"next-app-loader?name=app%2F_not-found%2Fpage&page=%2F_not-found%2Fpage&appPaths=&pagePath=..%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fnot-found-error.js&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568462775,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":315820,"timestamp":296505448212,"id":5009,"parentId":5008,"tags":{},"startTime":1779568462719,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":17196,"timestamp":296505771484,"id":5053,"parentId":5052,"tags":{},"startTime":1779568463043,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":33,"timestamp":296505788816,"id":5055,"parentId":5052,"tags":{},"startTime":1779568463060,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":20199,"timestamp":296505788915,"id":5056,"parentId":5052,"tags":{},"startTime":1779568463060,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":31,"timestamp":296505809188,"id":5057,"parentId":5052,"tags":{},"startTime":1779568463080,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":9,"timestamp":296505809251,"id":5058,"parentId":5052,"tags":{},"startTime":1779568463081,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":25866,"timestamp":296505788773,"id":5054,"parentId":5052,"tags":{},"startTime":1779568463060,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":1337,"timestamp":296505817688,"id":5059,"parentId":5052,"tags":{},"startTime":1779568463089,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":5425,"timestamp":296505819076,"id":5060,"parentId":5052,"tags":{},"startTime":1779568463090,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":4758,"timestamp":296505829526,"id":5061,"parentId":5052,"tags":{},"startTime":1779568463101,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":327,"timestamp":296505834281,"id":5062,"parentId":5052,"tags":{},"startTime":1779568463106,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":131,"timestamp":296505834585,"id":5063,"parentId":5052,"tags":{},"startTime":1779568463106,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":2721,"timestamp":296505834728,"id":5064,"parentId":5052,"tags":{},"startTime":1779568463106,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":88434,"timestamp":296505767978,"id":5052,"parentId":5008,"tags":{},"startTime":1779568463039,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":455275,"timestamp":296505445239,"id":5008,"parentId":5006,"tags":{"name":"server"},"startTime":1779568462716,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":56818,"timestamp":296505900680,"id":5065,"parentId":5006,"tags":{},"startTime":1779568463172,"traceId":"0ca0f7fe408e086a"},{"name":"compile-path","duration":522847,"timestamp":296505436335,"id":5007,"tags":{"trigger":"/app/library","isTurbopack":false},"startTime":1779568462708,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-server","duration":523351,"timestamp":296505436208,"id":5006,"parentId":3,"tags":{"trigger":"manual"},"startTime":1779568462707,"traceId":"0ca0f7fe408e086a"}] +[{"name":"handle-request","duration":654856,"timestamp":296505414948,"id":5005,"tags":{"url":"/app/library?_rsc=5qq1u","isTurbopack":false},"startTime":1779568462686,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":4,"timestamp":296506069896,"id":5066,"parentId":5005,"tags":{"url":"/app/library?_rsc=5qq1u","memory.rss":"286363648","memory.heapUsed":"247507256","memory.heapTotal":"285753344"},"startTime":1779568463341,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":34483,"timestamp":296506074854,"id":5067,"tags":{"url":"/app/library?_rsc=1up0c","isTurbopack":false},"startTime":1779568463346,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":5,"timestamp":296506109405,"id":5068,"parentId":5067,"tags":{"url":"/app/library?_rsc=1up0c","memory.rss":"285990912","memory.heapUsed":"244539448","memory.heapTotal":"284606464"},"startTime":1779568463381,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":67197,"timestamp":296506265014,"id":5069,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779568463536,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":296506332257,"id":5070,"parentId":5069,"tags":{"url":"/icons/192.png","memory.rss":"283414528","memory.heapUsed":"248523608","memory.heapTotal":"284606464"},"startTime":1779568463604,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":49537,"timestamp":296508415695,"id":5071,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779568465687,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":296508465279,"id":5072,"parentId":5071,"tags":{"url":"/icons/192.png","memory.rss":"283631616","memory.heapUsed":"247560416","memory.heapTotal":"284606464"},"startTime":1779568465737,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":57896,"timestamp":296511850645,"id":5079,"parentId":5077,"tags":{"request":"next-app-loader?name=app%2Fauth%2Fpage&page=%2Fauth%2Fpage&appPaths=%2Fauth%2Fpage&pagePath=private-next-app-dir%2Fauth%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568469122,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":57896,"timestamp":296511850677,"id":5080,"parentId":5077,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fdocuments%2Fpage&page=%2Fadmin%2Fdocuments%2Fpage&appPaths=%2Fadmin%2Fdocuments%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fdocuments%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568469122,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":57885,"timestamp":296511850703,"id":5081,"parentId":5077,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fsession%2Fpage&page=%2Fapp%2Fsession%2Fpage&appPaths=%2Fapp%2Fsession%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fsession%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568469122,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":57869,"timestamp":296511850731,"id":5082,"parentId":5077,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&page=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&appPaths=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568469122,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":57853,"timestamp":296511850756,"id":5083,"parentId":5077,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fknowledge%2Fpage&page=%2Fadmin%2Fknowledge%2Fpage&appPaths=%2Fadmin%2Fknowledge%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fknowledge%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568469122,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":57840,"timestamp":296511850801,"id":5085,"parentId":5077,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fprofile%2Fpage&page=%2Fapp%2Fprofile%2Fpage&appPaths=%2Fapp%2Fprofile%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fprofile%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568469122,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":57825,"timestamp":296511850826,"id":5086,"parentId":5077,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2Fpage&page=%2Fapp%2Flibrary%2Fpage&appPaths=%2Fapp%2Flibrary%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568469122,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":64888,"timestamp":296511850779,"id":5084,"parentId":5077,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fpage&page=%2Fapp%2Fpage&appPaths=%2Fapp%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568469122,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":70853,"timestamp":296511850482,"id":5078,"parentId":5077,"tags":{"request":"next-app-loader?name=app%2F_not-found%2Fpage&page=%2F_not-found%2Fpage&appPaths=&pagePath=..%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fnot-found-error.js&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568469122,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":83339,"timestamp":296511850849,"id":5087,"parentId":5077,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fcurriculum%2Fpage&page=%2Fadmin%2Fcurriculum%2Fpage&appPaths=%2Fadmin%2Fcurriculum%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fcurriculum%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779568469122,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":382315,"timestamp":296511819764,"id":5077,"parentId":5076,"tags":{},"startTime":1779568469091,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":15982,"timestamp":296512215972,"id":5126,"parentId":5125,"tags":{},"startTime":1779568469487,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":32,"timestamp":296512232072,"id":5128,"parentId":5125,"tags":{},"startTime":1779568469503,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":17314,"timestamp":296512232174,"id":5129,"parentId":5125,"tags":{},"startTime":1779568469503,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":289,"timestamp":296512249701,"id":5130,"parentId":5125,"tags":{},"startTime":1779568469521,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":39,"timestamp":296512250164,"id":5131,"parentId":5125,"tags":{},"startTime":1779568469521,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":20477,"timestamp":296512232034,"id":5127,"parentId":5125,"tags":{},"startTime":1779568469503,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":1679,"timestamp":296512256834,"id":5132,"parentId":5125,"tags":{},"startTime":1779568469528,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":23124,"timestamp":296512258551,"id":5133,"parentId":5125,"tags":{},"startTime":1779568469530,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":4944,"timestamp":296512284796,"id":5134,"parentId":5125,"tags":{},"startTime":1779568469556,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":240,"timestamp":296512289738,"id":5135,"parentId":5125,"tags":{},"startTime":1779568469561,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":102,"timestamp":296512289958,"id":5136,"parentId":5125,"tags":{},"startTime":1779568469561,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":2485,"timestamp":296512290068,"id":5137,"parentId":5125,"tags":{},"startTime":1779568469561,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":95714,"timestamp":296512211154,"id":5125,"parentId":5076,"tags":{},"startTime":1779568469482,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":497079,"timestamp":296511819113,"id":5076,"parentId":5074,"tags":{"name":"server"},"startTime":1779568469090,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":16091,"timestamp":296512316316,"id":5138,"parentId":5074,"tags":{},"startTime":1779568469588,"traceId":"0ca0f7fe408e086a"},{"name":"compile-path","duration":519374,"timestamp":296511814267,"id":5075,"tags":{"trigger":"/admin/curriculum","isTurbopack":false},"startTime":1779568469086,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-server","duration":519666,"timestamp":296511814200,"id":5074,"parentId":3,"tags":{"trigger":"manual"},"startTime":1779568469085,"traceId":"0ca0f7fe408e086a"}] +[{"name":"handle-request","duration":611308,"timestamp":296511800641,"id":5073,"tags":{"url":"/admin/curriculum?_rsc=15z2o","isTurbopack":false},"startTime":1779568469072,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":296512412002,"id":5139,"parentId":5073,"tags":{"url":"/admin/curriculum?_rsc=15z2o","memory.rss":"309493760","memory.heapUsed":"248151872","memory.heapTotal":"292212736"},"startTime":1779568469683,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":52394,"timestamp":296512422786,"id":5140,"tags":{"url":"/admin/curriculum?_rsc=90jz0","isTurbopack":false},"startTime":1779568469694,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":4,"timestamp":296512475237,"id":5141,"parentId":5140,"tags":{"url":"/admin/curriculum?_rsc=90jz0","memory.rss":"308346880","memory.heapUsed":"246163400","memory.heapTotal":"291065856"},"startTime":1779568469746,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":137541,"timestamp":296512605093,"id":5142,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779568469876,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":3,"timestamp":296512742688,"id":5143,"parentId":5142,"tags":{"url":"/icons/192.png","memory.rss":"309133312","memory.heapUsed":"245194520","memory.heapTotal":"291065856"},"startTime":1779568470014,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":33862,"timestamp":296513943513,"id":5144,"tags":{"url":"/admin/knowledge?_rsc=1qz6g","isTurbopack":false},"startTime":1779568471215,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":3,"timestamp":296513977416,"id":5145,"parentId":5144,"tags":{"url":"/admin/knowledge?_rsc=1qz6g","memory.rss":"330481664","memory.heapUsed":"238788568","memory.heapTotal":"285945856"},"startTime":1779568471249,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":41420,"timestamp":296514031715,"id":5146,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779568471303,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":296514073177,"id":5147,"parentId":5146,"tags":{"url":"/icons/192.png","memory.rss":"335572992","memory.heapUsed":"237014064","memory.heapTotal":"285945856"},"startTime":1779568471344,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":126812,"timestamp":296516377234,"id":5148,"tags":{"url":"/admin/knowledge","isTurbopack":false},"startTime":1779568473648,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":296516504107,"id":5149,"parentId":5148,"tags":{"url":"/admin/knowledge","memory.rss":"338944000","memory.heapUsed":"240503208","memory.heapTotal":"285945856"},"startTime":1779568473775,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":26,"timestamp":296516965635,"id":5150,"parentId":3,"tags":{},"startTime":1779568474237,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":4,"timestamp":296516965971,"id":5151,"parentId":3,"tags":{},"startTime":1779568474237,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":7,"timestamp":296516969881,"id":5152,"parentId":3,"tags":{},"startTime":1779568474241,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":51312,"timestamp":296516972896,"id":5153,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779568474244,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":296517024268,"id":5154,"parentId":5153,"tags":{"url":"/icons/192.png","memory.rss":"342343680","memory.heapUsed":"236153408","memory.heapTotal":"285945856"},"startTime":1779568474296,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":45028,"timestamp":296517281520,"id":5155,"tags":{"url":"/admin/documents?_rsc=1est4","isTurbopack":false},"startTime":1779568474553,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":5,"timestamp":296517326599,"id":5156,"parentId":5155,"tags":{"url":"/admin/documents?_rsc=1est4","memory.rss":"342765568","memory.heapUsed":"243597520","memory.heapTotal":"286355456"},"startTime":1779568474598,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":27830,"timestamp":296517334066,"id":5157,"tags":{"url":"/admin/documents?_rsc=1s5w9","isTurbopack":false},"startTime":1779568474605,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":296517361935,"id":5158,"parentId":5157,"tags":{"url":"/admin/documents?_rsc=1s5w9","memory.rss":"342765568","memory.heapUsed":"238132880","memory.heapTotal":"286355456"},"startTime":1779568474633,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":64180,"timestamp":296517441245,"id":5159,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779568474712,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":4,"timestamp":296517505511,"id":5160,"parentId":5159,"tags":{"url":"/icons/192.png","memory.rss":"342839296","memory.heapUsed":"237105024","memory.heapTotal":"286355456"},"startTime":1779568474777,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":77368,"timestamp":296520378132,"id":5161,"tags":{"url":"/admin/documents","isTurbopack":false},"startTime":1779568477649,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":4,"timestamp":296520455603,"id":5162,"parentId":5161,"tags":{"url":"/admin/documents","memory.rss":"343384064","memory.heapUsed":"237381928","memory.heapTotal":"286355456"},"startTime":1779568477727,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":10,"timestamp":296520918163,"id":5164,"parentId":3,"tags":{},"startTime":1779568478189,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":3,"timestamp":296520918322,"id":5165,"parentId":3,"tags":{},"startTime":1779568478190,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":7,"timestamp":296520921408,"id":5166,"parentId":3,"tags":{},"startTime":1779568478193,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":51710,"timestamp":296520912116,"id":5163,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779568478183,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":296520963892,"id":5167,"parentId":5163,"tags":{"url":"/icons/192.png","memory.rss":"343564288","memory.heapUsed":"245843440","memory.heapTotal":"286355456"},"startTime":1779568478235,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":90844,"timestamp":296532000728,"id":5168,"tags":{"url":"/app/session","isTurbopack":false},"startTime":1779568489272,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":296532091639,"id":5169,"parentId":5168,"tags":{"url":"/app/session","memory.rss":"343658496","memory.heapUsed":"234315592","memory.heapTotal":"286879744"},"startTime":1779568489363,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":22,"timestamp":296532517798,"id":5170,"parentId":3,"tags":{},"startTime":1779568489789,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":2,"timestamp":296532518006,"id":5171,"parentId":3,"tags":{},"startTime":1779568489789,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":9,"timestamp":296532550615,"id":5172,"parentId":3,"tags":{},"startTime":1779568489822,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":120793,"timestamp":296532584322,"id":5173,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779568489856,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":296532705153,"id":5175,"parentId":5173,"tags":{"url":"/icons/192.png","memory.rss":"347533312","memory.heapUsed":"239018888","memory.heapTotal":"286879744"},"startTime":1779568489976,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":30997,"timestamp":296532696457,"id":5174,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779568489968,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":296532727489,"id":5176,"parentId":5174,"tags":{"url":"/icons/192.png","memory.rss":"347553792","memory.heapUsed":"246112368","memory.heapTotal":"286879744"},"startTime":1779568489999,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":32745,"timestamp":296541068882,"id":5177,"tags":{"url":"/app/library?_rsc=1up0c","isTurbopack":false},"startTime":1779568498340,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":296541101664,"id":5178,"parentId":5177,"tags":{"url":"/app/library?_rsc=1up0c","memory.rss":"347987968","memory.heapUsed":"241353112","memory.heapTotal":"287318016"},"startTime":1779568498372,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":68304,"timestamp":296541183285,"id":5179,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779568498454,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":5,"timestamp":296541251695,"id":5180,"parentId":5179,"tags":{"url":"/icons/192.png","memory.rss":"347557888","memory.heapUsed":"239912760","memory.heapTotal":"286879744"},"startTime":1779568498522,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":60849,"timestamp":296543142063,"id":5181,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779568500413,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":296543202945,"id":5182,"parentId":5181,"tags":{"url":"/icons/192.png","memory.rss":"349085696","memory.heapUsed":"235551616","memory.heapTotal":"286879744"},"startTime":1779568500474,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":81410,"timestamp":296543840331,"id":5183,"tags":{"url":"/app/session","isTurbopack":false},"startTime":1779568501111,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":296543921776,"id":5184,"parentId":5183,"tags":{"url":"/app/session","memory.rss":"349085696","memory.heapUsed":"235626672","memory.heapTotal":"286879744"},"startTime":1779568501192,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":6,"timestamp":296544327156,"id":5186,"parentId":3,"tags":{},"startTime":1779568501598,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":2,"timestamp":296544327280,"id":5187,"parentId":3,"tags":{},"startTime":1779568501598,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":7,"timestamp":296544370064,"id":5188,"parentId":3,"tags":{},"startTime":1779568501641,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":184607,"timestamp":296544316878,"id":5185,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779568501588,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":296544501520,"id":5190,"parentId":5185,"tags":{"url":"/icons/192.png","memory.rss":"351891456","memory.heapUsed":"241111168","memory.heapTotal":"286879744"},"startTime":1779568501772,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":28758,"timestamp":296544492016,"id":5189,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779568501763,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":296544520813,"id":5191,"parentId":5189,"tags":{"url":"/icons/192.png","memory.rss":"351891456","memory.heapUsed":"248571800","memory.heapTotal":"286879744"},"startTime":1779568501791,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":42212,"timestamp":296550604021,"id":5192,"tags":{"url":"/app/profile?_rsc=wpb2v","isTurbopack":false},"startTime":1779568507875,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":4,"timestamp":296550646308,"id":5193,"parentId":5192,"tags":{"url":"/app/profile?_rsc=wpb2v","memory.rss":"352497664","memory.heapUsed":"243134928","memory.heapTotal":"287748096"},"startTime":1779568507917,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":22619,"timestamp":296550652236,"id":5194,"tags":{"url":"/app/profile?_rsc=1x941","isTurbopack":false},"startTime":1779568507923,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":3,"timestamp":296550674896,"id":5195,"parentId":5194,"tags":{"url":"/app/profile?_rsc=1x941","memory.rss":"352505856","memory.heapUsed":"237343512","memory.heapTotal":"287748096"},"startTime":1779568507946,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":73429,"timestamp":296550772138,"id":5196,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779568508043,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":5,"timestamp":296550845696,"id":5197,"parentId":5196,"tags":{"url":"/icons/192.png","memory.rss":"352608256","memory.heapUsed":"249873984","memory.heapTotal":"287748096"},"startTime":1779568508116,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":39189,"timestamp":296561940633,"id":5198,"tags":{"url":"/app?_rsc=1eom9","isTurbopack":false},"startTime":1779568519211,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":296561979867,"id":5199,"parentId":5198,"tags":{"url":"/app?_rsc=1eom9","memory.rss":"352927744","memory.heapUsed":"243693336","memory.heapTotal":"288067584"},"startTime":1779568519251,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":34121,"timestamp":296561984640,"id":5200,"tags":{"url":"/app?_rsc=1us18","isTurbopack":false},"startTime":1779568519255,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":3,"timestamp":296562018801,"id":5201,"parentId":5200,"tags":{"url":"/app?_rsc=1us18","memory.rss":"352608256","memory.heapUsed":"237669336","memory.heapTotal":"287748096"},"startTime":1779568519289,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":53026,"timestamp":296562129683,"id":5202,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779568519400,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":296562182763,"id":5203,"parentId":5202,"tags":{"url":"/icons/192.png","memory.rss":"352608256","memory.heapUsed":"249222472","memory.heapTotal":"287748096"},"startTime":1779568519453,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":15647,"timestamp":296578646112,"id":5204,"tags":{"url":"/admin/documents?_rsc=1est4","isTurbopack":false},"startTime":1779568535917,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":3,"timestamp":296578661810,"id":5205,"parentId":5204,"tags":{"url":"/admin/documents?_rsc=1est4","memory.rss":"239165440","memory.heapUsed":"224363936","memory.heapTotal":"240783360"},"startTime":1779568535932,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":18942,"timestamp":296578669517,"id":5206,"tags":{"url":"/admin/documents?_rsc=1s5w9","isTurbopack":false},"startTime":1779568535940,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":296578688484,"id":5207,"parentId":5206,"tags":{"url":"/admin/documents?_rsc=1s5w9","memory.rss":"241602560","memory.heapUsed":"225790632","memory.heapTotal":"243929088"},"startTime":1779568535959,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":46295,"timestamp":296580828856,"id":5208,"tags":{"url":"/admin/documents","isTurbopack":false},"startTime":1779568538099,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":296580875205,"id":5209,"parentId":5208,"tags":{"url":"/admin/documents","memory.rss":"244047872","memory.heapUsed":"228543584","memory.heapTotal":"248123392"},"startTime":1779568538146,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":8,"timestamp":296581235575,"id":5210,"parentId":3,"tags":{},"startTime":1779568538506,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":2,"timestamp":296581235797,"id":5211,"parentId":3,"tags":{},"startTime":1779568538506,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":7,"timestamp":296581237855,"id":5212,"parentId":3,"tags":{},"startTime":1779568538508,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":17579,"timestamp":296584511508,"id":5213,"tags":{"url":"/admin/knowledge?_rsc=15z2o","isTurbopack":false},"startTime":1779568541782,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":296584529136,"id":5214,"parentId":5213,"tags":{"url":"/admin/knowledge?_rsc=15z2o","memory.rss":"250044416","memory.heapUsed":"226090480","memory.heapTotal":"248123392"},"startTime":1779568541800,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":21082,"timestamp":296584536429,"id":5215,"tags":{"url":"/admin/knowledge?_rsc=g58oh","isTurbopack":false},"startTime":1779568541807,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":3,"timestamp":296584557557,"id":5216,"parentId":5215,"tags":{"url":"/admin/knowledge?_rsc=g58oh","memory.rss":"250232832","memory.heapUsed":"227486200","memory.heapTotal":"248123392"},"startTime":1779568541828,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":61065,"timestamp":296587058486,"id":5217,"tags":{"url":"/admin/knowledge","isTurbopack":false},"startTime":1779568544329,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":296587119622,"id":5218,"parentId":5217,"tags":{"url":"/admin/knowledge","memory.rss":"251047936","memory.heapUsed":"229291688","memory.heapTotal":"248123392"},"startTime":1779568544390,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":8,"timestamp":296587428597,"id":5219,"parentId":3,"tags":{},"startTime":1779568544699,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":4,"timestamp":296587428780,"id":5220,"parentId":3,"tags":{},"startTime":1779568544699,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":7,"timestamp":296587432620,"id":5221,"parentId":3,"tags":{},"startTime":1779568544703,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":22029,"timestamp":296588349611,"id":5222,"tags":{"url":"/admin/documents?_rsc=1est4","isTurbopack":false},"startTime":1779568545620,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":296588371679,"id":5223,"parentId":5222,"tags":{"url":"/admin/documents?_rsc=1est4","memory.rss":"260067328","memory.heapUsed":"230168112","memory.heapTotal":"256512000"},"startTime":1779568545642,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":13936,"timestamp":296588377282,"id":5224,"tags":{"url":"/admin/documents?_rsc=1s5w9","isTurbopack":false},"startTime":1779568545648,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":296588391262,"id":5225,"parentId":5224,"tags":{"url":"/admin/documents?_rsc=1s5w9","memory.rss":"260276224","memory.heapUsed":"231616328","memory.heapTotal":"256512000"},"startTime":1779568545662,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":67287,"timestamp":296592765542,"id":5226,"tags":{"url":"/auth","isTurbopack":false},"startTime":1779568550036,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":296592832870,"id":5227,"parentId":5226,"tags":{"url":"/auth","memory.rss":"261627904","memory.heapUsed":"231969440","memory.heapTotal":"256696320"},"startTime":1779568550104,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":4,"timestamp":296593141583,"id":5228,"parentId":3,"tags":{},"startTime":1779568550412,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":1,"timestamp":296593141663,"id":5229,"parentId":3,"tags":{},"startTime":1779568550412,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":6,"timestamp":296593144436,"id":5230,"parentId":3,"tags":{},"startTime":1779568550415,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":2505542,"timestamp":340500524505,"id":5231,"tags":{"url":"/auth","isTurbopack":false},"startTime":1779612457789,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":7,"timestamp":340503033780,"id":5232,"parentId":5231,"tags":{"url":"/auth","memory.rss":"56598528","memory.heapUsed":"224849728","memory.heapTotal":"236511232"},"startTime":1779612460299,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":407,"timestamp":340504885541,"id":5233,"parentId":3,"tags":{},"startTime":1779612462151,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":256826,"timestamp":340515260336,"id":5234,"tags":{"url":"/app/session","isTurbopack":false},"startTime":1779612472525,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":11,"timestamp":340515517411,"id":5235,"parentId":5234,"tags":{"url":"/app/session","memory.rss":"69206016","memory.heapUsed":"226598736","memory.heapTotal":"238346240"},"startTime":1779612472782,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":544,"timestamp":340519208485,"id":5236,"parentId":3,"tags":{},"startTime":1779612476474,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":11,"timestamp":340519248590,"id":5237,"parentId":3,"tags":{},"startTime":1779612476513,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":177733,"timestamp":340519587199,"id":5238,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779612476852,"traceId":"0ca0f7fe408e086a"}] +[{"name":"memory-usage","duration":14,"timestamp":340519798735,"id":5239,"parentId":5238,"tags":{"url":"/icons/192.png","memory.rss":"85209088","memory.heapUsed":"227468144","memory.heapTotal":"243326976"},"startTime":1779612477064,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":61050,"timestamp":340521335369,"id":5240,"tags":{"url":"/admin/knowledge?_rsc=15z2o","isTurbopack":false},"startTime":1779612478600,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":4,"timestamp":340521396493,"id":5241,"parentId":5240,"tags":{"url":"/admin/knowledge?_rsc=15z2o","memory.rss":"86159360","memory.heapUsed":"227620416","memory.heapTotal":"243326976"},"startTime":1779612478661,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":47344,"timestamp":340521418352,"id":5242,"tags":{"url":"/admin/knowledge?_rsc=g58oh","isTurbopack":false},"startTime":1779612478683,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":6,"timestamp":340521465848,"id":5243,"parentId":5242,"tags":{"url":"/admin/knowledge?_rsc=g58oh","memory.rss":"86970368","memory.heapUsed":"228027472","memory.heapTotal":"243326976"},"startTime":1779612478731,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":82560,"timestamp":340521715878,"id":5244,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779612478981,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":1,"timestamp":340521798504,"id":5245,"parentId":5244,"tags":{"url":"/icons/192.png","memory.rss":"88358912","memory.heapUsed":"230479152","memory.heapTotal":"243851264"},"startTime":1779612479063,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":69227,"timestamp":340522916649,"id":5246,"tags":{"url":"/admin/documents?_rsc=1o5q8","isTurbopack":false},"startTime":1779612480182,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":5,"timestamp":340522985974,"id":5247,"parentId":5246,"tags":{"url":"/admin/documents?_rsc=1o5q8","memory.rss":"90841088","memory.heapUsed":"233836288","memory.heapTotal":"252239872"},"startTime":1779612480251,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":74288,"timestamp":340523193693,"id":5248,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779612480459,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":4,"timestamp":340523268097,"id":5249,"parentId":5248,"tags":{"url":"/icons/192.png","memory.rss":"95395840","memory.heapUsed":"232270416","memory.heapTotal":"252764160"},"startTime":1779612480533,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":180316,"timestamp":340524894036,"id":5250,"tags":{"url":"/admin/documents","isTurbopack":false},"startTime":1779612482159,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":8,"timestamp":340525074498,"id":5251,"parentId":5250,"tags":{"url":"/admin/documents","memory.rss":"97030144","memory.heapUsed":"233325616","memory.heapTotal":"252764160"},"startTime":1779612482339,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":242,"timestamp":340526843223,"id":5253,"parentId":3,"tags":{},"startTime":1779612484108,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":29,"timestamp":340526845778,"id":5254,"parentId":3,"tags":{},"startTime":1779612484111,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":138634,"timestamp":340526711025,"id":5252,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779612483976,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":9,"timestamp":340526849831,"id":5255,"parentId":5252,"tags":{"url":"/icons/192.png","memory.rss":"213000192","memory.heapUsed":"229482208","memory.heapTotal":"254074880"},"startTime":1779612484115,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":105,"timestamp":340526856153,"id":5256,"parentId":3,"tags":{},"startTime":1779612484121,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":190449,"timestamp":340540824345,"id":5257,"tags":{"url":"/app/session","isTurbopack":false},"startTime":1779612498089,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":6,"timestamp":340541014921,"id":5258,"parentId":5257,"tags":{"url":"/app/session","memory.rss":"214622208","memory.heapUsed":"225630304","memory.heapTotal":"241491968"},"startTime":1779612498280,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":122135,"timestamp":340541940424,"id":5259,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779612499205,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":6,"timestamp":340542062692,"id":5260,"parentId":5259,"tags":{"url":"/icons/192.png","memory.rss":"215228416","memory.heapUsed":"228207328","memory.heapTotal":"245686272"},"startTime":1779612499328,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":11,"timestamp":340542097156,"id":5261,"parentId":3,"tags":{},"startTime":1779612499362,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":3,"timestamp":340542097370,"id":5262,"parentId":3,"tags":{},"startTime":1779612499362,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":12,"timestamp":340542186339,"id":5263,"parentId":3,"tags":{},"startTime":1779612499451,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":76362,"timestamp":340542361507,"id":5264,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779612499626,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":7,"timestamp":340542437987,"id":5265,"parentId":5264,"tags":{"url":"/icons/192.png","memory.rss":"215298048","memory.heapUsed":"229000312","memory.heapTotal":"245686272"},"startTime":1779612499703,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":46164,"timestamp":340543421703,"id":5266,"tags":{"url":"/app/library?_rsc=wpb2v","isTurbopack":false},"startTime":1779612500687,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":6,"timestamp":340543467963,"id":5267,"parentId":5266,"tags":{"url":"/app/library?_rsc=wpb2v","memory.rss":"215330816","memory.heapUsed":"229679248","memory.heapTotal":"245686272"},"startTime":1779612500733,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":38461,"timestamp":340543478444,"id":5268,"tags":{"url":"/app/library?_rsc=1up0c","isTurbopack":false},"startTime":1779612500743,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":4,"timestamp":340543516962,"id":5269,"parentId":5268,"tags":{"url":"/app/library?_rsc=1up0c","memory.rss":"215330816","memory.heapUsed":"234197016","memory.heapTotal":"254074880"},"startTime":1779612500782,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":106298,"timestamp":340543675859,"id":5270,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779612500941,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":8,"timestamp":340543782305,"id":5271,"parentId":5270,"tags":{"url":"/icons/192.png","memory.rss":"216657920","memory.heapUsed":"232727624","memory.heapTotal":"254074880"},"startTime":1779612501047,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":195164,"timestamp":340544643541,"id":5272,"tags":{"url":"/app/library/t6vla8thqjyskb4?_rsc=1vbdt","isTurbopack":false},"startTime":1779612501908,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":6,"timestamp":340544838807,"id":5273,"parentId":5272,"tags":{"url":"/app/library/t6vla8thqjyskb4?_rsc=1vbdt","memory.rss":"219516928","memory.heapUsed":"229466552","memory.heapTotal":"254918656"},"startTime":1779612502104,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":51527,"timestamp":340544862588,"id":5274,"tags":{"url":"/app/library/t6vla8thqjyskb4?_rsc=yx039","isTurbopack":false},"startTime":1779612502127,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":19,"timestamp":340544914442,"id":5275,"parentId":5274,"tags":{"url":"/app/library/t6vla8thqjyskb4?_rsc=yx039","memory.rss":"219611136","memory.heapUsed":"232625728","memory.heapTotal":"254918656"},"startTime":1779612502179,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":71374,"timestamp":340545212753,"id":5276,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779612502478,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":5,"timestamp":340545284243,"id":5277,"parentId":5276,"tags":{"url":"/icons/192.png","memory.rss":"220393472","memory.heapUsed":"230740416","memory.heapTotal":"254918656"},"startTime":1779612502549,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":56903,"timestamp":340548221199,"id":5278,"tags":{"url":"/app/library/714ncfrz4346z8a?_rsc=6fngd","isTurbopack":false},"startTime":1779612505486,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":5,"timestamp":340548278179,"id":5279,"parentId":5278,"tags":{"url":"/app/library/714ncfrz4346z8a?_rsc=6fngd","memory.rss":"220495872","memory.heapUsed":"233063072","memory.heapTotal":"254918656"},"startTime":1779612505543,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":40898,"timestamp":340548298547,"id":5280,"tags":{"url":"/app/library/714ncfrz4346z8a?_rsc=15q4b","isTurbopack":false},"startTime":1779612505563,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":5,"timestamp":340548339542,"id":5281,"parentId":5280,"tags":{"url":"/app/library/714ncfrz4346z8a?_rsc=15q4b","memory.rss":"220504064","memory.heapUsed":"236019224","memory.heapTotal":"254918656"},"startTime":1779612505604,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":62827,"timestamp":340548504051,"id":5282,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779612505769,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":6,"timestamp":340548567000,"id":5283,"parentId":5282,"tags":{"url":"/icons/192.png","memory.rss":"220565504","memory.heapUsed":"234852912","memory.heapTotal":"254918656"},"startTime":1779612505832,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":65283,"timestamp":340553160320,"id":5284,"tags":{"url":"/app/library/4a65i6pgguqr8bq?_rsc=1vf7n","isTurbopack":false},"startTime":1779612510425,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":8,"timestamp":340553225707,"id":5285,"parentId":5284,"tags":{"url":"/app/library/4a65i6pgguqr8bq?_rsc=1vf7n","memory.rss":"220659712","memory.heapUsed":"230398232","memory.heapTotal":"255180800"},"startTime":1779612510491,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":46895,"timestamp":340553250314,"id":5286,"tags":{"url":"/app/library/4a65i6pgguqr8bq?_rsc=1h00i","isTurbopack":false},"startTime":1779612510515,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":5,"timestamp":340553297285,"id":5287,"parentId":5286,"tags":{"url":"/app/library/4a65i6pgguqr8bq?_rsc=1h00i","memory.rss":"220778496","memory.heapUsed":"233442520","memory.heapTotal":"255180800"},"startTime":1779612510562,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":63244,"timestamp":340553484361,"id":5288,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779612510749,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":4,"timestamp":340553547695,"id":5289,"parentId":5288,"tags":{"url":"/icons/192.png","memory.rss":"221163520","memory.heapUsed":"230782816","memory.heapTotal":"255442944"},"startTime":1779612510813,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":41737,"timestamp":340561782657,"id":5290,"tags":{"url":"/app/profile?_rsc=85385","isTurbopack":false},"startTime":1779612519053,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":3,"timestamp":340561824455,"id":5291,"parentId":5290,"tags":{"url":"/app/profile?_rsc=85385","memory.rss":"221167616","memory.heapUsed":"230767888","memory.heapTotal":"239714304"},"startTime":1779612519095,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":54399,"timestamp":340561832297,"id":5292,"tags":{"url":"/app/profile?_rsc=1x941","isTurbopack":false},"startTime":1779612519103,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":8,"timestamp":340561886815,"id":5293,"parentId":5292,"tags":{"url":"/app/profile?_rsc=1x941","memory.rss":"221335552","memory.heapUsed":"231847992","memory.heapTotal":"242860032"},"startTime":1779612519157,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":116816,"timestamp":340562161885,"id":5294,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779612519433,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":8,"timestamp":340562278861,"id":5295,"parentId":5294,"tags":{"url":"/icons/192.png","memory.rss":"221728768","memory.heapUsed":"233475880","memory.heapTotal":"248365056"},"startTime":1779612519550,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":50125,"timestamp":340569538944,"id":5296,"tags":{"url":"/app?_rsc=1eom9","isTurbopack":false},"startTime":1779612526810,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":5,"timestamp":340569589145,"id":5297,"parentId":5296,"tags":{"url":"/app?_rsc=1eom9","memory.rss":"221736960","memory.heapUsed":"232133712","memory.heapTotal":"242335744"},"startTime":1779612526860,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":49421,"timestamp":340569598875,"id":5298,"tags":{"url":"/app?_rsc=1us18","isTurbopack":false},"startTime":1779612526870,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":5,"timestamp":340569648375,"id":5299,"parentId":5298,"tags":{"url":"/app?_rsc=1us18","memory.rss":"221786112","memory.heapUsed":"233838536","memory.heapTotal":"244432896"},"startTime":1779612526919,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":72011,"timestamp":340569880275,"id":5300,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779612527151,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":4,"timestamp":340569952358,"id":5301,"parentId":5300,"tags":{"url":"/icons/192.png","memory.rss":"221810688","memory.heapUsed":"234089272","memory.heapTotal":"249675776"},"startTime":1779612527223,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":107656,"timestamp":340581575987,"id":5302,"tags":{"url":"/admin/documents","isTurbopack":false},"startTime":1779612538847,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":4,"timestamp":340581683748,"id":5303,"parentId":5302,"tags":{"url":"/admin/documents","memory.rss":"221908992","memory.heapUsed":"235024544","memory.heapTotal":"246530048"},"startTime":1779612538954,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":8,"timestamp":340582620598,"id":5305,"parentId":3,"tags":{},"startTime":1779612539891,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":3,"timestamp":340582620749,"id":5306,"parentId":3,"tags":{},"startTime":1779612539891,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":3,"timestamp":340582620851,"id":5307,"parentId":3,"tags":{},"startTime":1779612539892,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":95284,"timestamp":340582575379,"id":5304,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779612539846,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":3,"timestamp":340582670729,"id":5308,"parentId":5304,"tags":{"url":"/icons/192.png","memory.rss":"222244864","memory.heapUsed":"235622288","memory.heapTotal":"252297216"},"startTime":1779612539941,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":120000,"timestamp":340730055780,"id":5315,"parentId":5312,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779612687327,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":119818,"timestamp":340730056019,"id":5319,"parentId":5312,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779612687327,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":119448,"timestamp":340730056409,"id":5324,"parentId":5312,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779612687328,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":149213,"timestamp":340730056568,"id":5327,"parentId":5312,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612687328,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":164658,"timestamp":340730054698,"id":5313,"parentId":5312,"tags":{"request":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\compiled\\@next\\react-refresh-utils\\dist\\runtime.js"},"startTime":1779612687326,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":166807,"timestamp":340730056293,"id":5322,"parentId":5312,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cknowledge%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612687327,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":166886,"timestamp":340730056356,"id":5323,"parentId":5312,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Ccurriculum%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612687328,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":166984,"timestamp":340730056461,"id":5325,"parentId":5312,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612687328,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":167061,"timestamp":340730056517,"id":5326,"parentId":5312,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Csession%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612687328,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":167186,"timestamp":340730056621,"id":5328,"parentId":5312,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Cprofile%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612687328,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":177302,"timestamp":340730056139,"id":5321,"parentId":5312,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cdocuments%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612687327,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":177196,"timestamp":340730056703,"id":5329,"parentId":5312,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5C%5BtopicId%5D%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612687328,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":208019,"timestamp":340730055903,"id":5317,"parentId":5312,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Capp-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cclient-page.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cerror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Clayout-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cnot-found-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Crender-from-template-context.js%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612687327,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":209202,"timestamp":340730055962,"id":5318,"parentId":5312,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cauth%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612687327,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":209158,"timestamp":340730056070,"id":5320,"parentId":5312,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612687327,"traceId":"0ca0f7fe408e086a"},{"name":"read-resource","duration":31918,"timestamp":340730239947,"id":5333,"parentId":5332,"tags":{},"startTime":1779612687511,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":320889,"timestamp":340730055635,"id":5314,"parentId":5312,"tags":{"request":"./node_modules/next/dist/client/app-next-dev.js"},"startTime":1779612687327,"traceId":"0ca0f7fe408e086a"},{"name":"postcss-process","duration":265583,"timestamp":340730272552,"id":5335,"parentId":5334,"tags":{},"startTime":1779612687544,"traceId":"0ca0f7fe408e086a"},{"name":"postcss-loader","duration":269174,"timestamp":340730272157,"id":5334,"parentId":5332,"tags":{},"startTime":1779612687543,"traceId":"0ca0f7fe408e086a"},{"name":"css-loader","duration":47287,"timestamp":340730541897,"id":5336,"parentId":5332,"tags":{"astUsed":"true"},"startTime":1779612687813,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-css","duration":371573,"timestamp":340730237999,"id":5332,"parentId":5331,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css.webpack[javascript/auto]!=!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\build\\webpack\\loaders\\css-loader\\src\\index.js??ruleSet[1].rules[14].oneOf[12].use[2]!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\build\\webpack\\loaders\\postcss-loader\\src\\index.js??ruleSet[1].rules[14].oneOf[12].use[3]!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css","layer":null},"startTime":1779612687509,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-css","duration":468613,"timestamp":340730179170,"id":5331,"parentId":5311,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css","layer":"app-pages-browser"},"startTime":1779612687450,"traceId":"0ca0f7fe408e086a"},{"name":"build-module","duration":400,"timestamp":340730648449,"id":5337,"parentId":5331,"tags":{},"startTime":1779612687920,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":593095,"timestamp":340730055848,"id":5316,"parentId":5312,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Cstylesheet.css%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cglobals.css%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612687327,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":617093,"timestamp":340730032049,"id":5312,"parentId":5311,"tags":{},"startTime":1779612687303,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":10732,"timestamp":340730891939,"id":5339,"parentId":5338,"tags":{},"startTime":1779612688163,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":66,"timestamp":340730902779,"id":5341,"parentId":5338,"tags":{},"startTime":1779612688174,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":691,"timestamp":340730903221,"id":5342,"parentId":5338,"tags":{},"startTime":1779612688174,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":44,"timestamp":340730904081,"id":5343,"parentId":5338,"tags":{},"startTime":1779612688175,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":30,"timestamp":340730904262,"id":5344,"parentId":5338,"tags":{},"startTime":1779612688175,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":6582,"timestamp":340730902747,"id":5340,"parentId":5338,"tags":{},"startTime":1779612688174,"traceId":"0ca0f7fe408e086a"}] +[{"name":"module-hash","duration":2001,"timestamp":340730917351,"id":5345,"parentId":5338,"tags":{},"startTime":1779612688189,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":14908,"timestamp":340730919449,"id":5346,"parentId":5338,"tags":{},"startTime":1779612688191,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":86369,"timestamp":340730952285,"id":5347,"parentId":5338,"tags":{},"startTime":1779612688223,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":4414,"timestamp":340731038646,"id":5348,"parentId":5338,"tags":{},"startTime":1779612688310,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":308,"timestamp":340731042962,"id":5349,"parentId":5338,"tags":{},"startTime":1779612688314,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":33598,"timestamp":340731043293,"id":5350,"parentId":5338,"tags":{},"startTime":1779612688314,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-generateClientManifest","duration":4244,"timestamp":340731104931,"id":5352,"parentId":5311,"tags":{},"startTime":1779612688376,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-createassets","duration":5226,"timestamp":340731103984,"id":5351,"parentId":5311,"tags":{},"startTime":1779612688375,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":274008,"timestamp":340730883639,"id":5338,"parentId":5311,"tags":{},"startTime":1779612688155,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":1141170,"timestamp":340730016734,"id":5311,"parentId":5310,"tags":{"name":"client"},"startTime":1779612687288,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":150280,"timestamp":340731158501,"id":5353,"parentId":5310,"tags":{},"startTime":1779612688430,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-client","duration":1342825,"timestamp":340729973031,"id":5310,"parentId":3,"tags":{"trigger":"src/components/admin/DocumentUpload.tsx.tmp.11120.84400216ec1e"},"startTime":1779612687244,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":13,"timestamp":340731344234,"id":5357,"parentId":3,"tags":{},"startTime":1779612688615,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":4,"timestamp":340731344480,"id":5358,"parentId":3,"tags":{},"startTime":1779612688616,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":2,"timestamp":340731344612,"id":5359,"parentId":3,"tags":{},"startTime":1779612688616,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":120000,"timestamp":340731340841,"id":5365,"parentId":3,"tags":{"updatedModules":["[project]/node_modules/next/dist/build/webpack/loaders/next-client-pages-loader.js?absolutePagePath=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Cnode_modules%5Cnext%5Cdist%5Cclient%5Ccomponents%5Cnot-found-error.js&page=%2F_not-found%2Fpage!","[project]/node_modules/next/dist/client/components/not-found-error.js"],"page":"/app/session","isPageHidden":true},"startTime":1779612688766,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":118000,"timestamp":340731344243,"id":5366,"parentId":3,"tags":{"updatedModules":["[project]/node_modules/next/dist/build/webpack/loaders/next-client-pages-loader.js?absolutePagePath=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Cnode_modules%5Cnext%5Cdist%5Cclient%5Ccomponents%5Cnot-found-error.js&page=%2F_not-found%2Fpage!","[project]/node_modules/next/dist/client/components/not-found-error.js"],"page":"/admin/documents","isPageHidden":true},"startTime":1779612688766,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":124000,"timestamp":340731339508,"id":5367,"parentId":3,"tags":{"updatedModules":["[project]/node_modules/next/dist/build/webpack/loaders/next-client-pages-loader.js?absolutePagePath=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Cnode_modules%5Cnext%5Cdist%5Cclient%5Ccomponents%5Cnot-found-error.js&page=%2F_not-found%2Fpage!","[project]/node_modules/next/dist/client/components/not-found-error.js"],"page":"/auth","isPageHidden":true},"startTime":1779612688767,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":104386,"timestamp":340731406862,"id":5361,"parentId":5355,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fsession%2Fpage&page=%2Fapp%2Fsession%2Fpage&appPaths=%2Fapp%2Fsession%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fsession%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612688678,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":104442,"timestamp":340731406913,"id":5362,"parentId":5355,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&page=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&appPaths=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612688678,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":104442,"timestamp":340731406941,"id":5363,"parentId":5355,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fprofile%2Fpage&page=%2Fapp%2Fprofile%2Fpage&appPaths=%2Fapp%2Fprofile%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fprofile%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612688678,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":104469,"timestamp":340731406967,"id":5364,"parentId":5355,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fdocuments%2Fpage&page=%2Fadmin%2Fdocuments%2Fpage&appPaths=%2Fadmin%2Fdocuments%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fdocuments%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612688678,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":108414,"timestamp":340731406291,"id":5360,"parentId":5355,"tags":{"request":"next-app-loader?name=app%2Fauth%2Fpage&page=%2Fauth%2Fpage&appPaths=%2Fauth%2Fpage&pagePath=private-next-app-dir%2Fauth%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612688677,"traceId":"0ca0f7fe408e086a"},{"name":"next-swc-transform","duration":586244,"timestamp":340731788734,"id":5389,"parentId":5388,"tags":{},"startTime":1779612689060,"traceId":"0ca0f7fe408e086a"},{"name":"next-swc-loader","duration":588545,"timestamp":340731786454,"id":5388,"parentId":5387,"tags":{},"startTime":1779612689058,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-tsx","duration":646614,"timestamp":340731783811,"id":5387,"parentId":5354,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\components\\admin\\DocumentUpload.tsx","layer":"ssr"},"startTime":1779612689055,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":1541738,"timestamp":340731327230,"id":5355,"parentId":5354,"tags":{},"startTime":1779612688598,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":28512,"timestamp":340732895666,"id":5391,"parentId":5390,"tags":{},"startTime":1779612690167,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":56,"timestamp":340732924383,"id":5393,"parentId":5390,"tags":{},"startTime":1779612690196,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":23990,"timestamp":340732925739,"id":5394,"parentId":5390,"tags":{},"startTime":1779612690197,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":115,"timestamp":340732950182,"id":5395,"parentId":5390,"tags":{},"startTime":1779612690221,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":207,"timestamp":340732950877,"id":5396,"parentId":5390,"tags":{},"startTime":1779612690222,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":31619,"timestamp":340732924320,"id":5392,"parentId":5390,"tags":{},"startTime":1779612690196,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":4743,"timestamp":340732961990,"id":5397,"parentId":5390,"tags":{},"startTime":1779612690233,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":26116,"timestamp":340732967143,"id":5398,"parentId":5390,"tags":{},"startTime":1779612690238,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":10577,"timestamp":340732998257,"id":5399,"parentId":5390,"tags":{},"startTime":1779612690269,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":1066,"timestamp":340733008825,"id":5400,"parentId":5390,"tags":{},"startTime":1779612690280,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":247,"timestamp":340733009811,"id":5401,"parentId":5390,"tags":{},"startTime":1779612690281,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":17814,"timestamp":340733010084,"id":5402,"parentId":5390,"tags":{},"startTime":1779612690281,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":196920,"timestamp":340732886377,"id":5390,"parentId":5354,"tags":{},"startTime":1779612690158,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":1784906,"timestamp":340731325851,"id":5354,"parentId":5330,"tags":{"name":"server"},"startTime":1779612688597,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":146806,"timestamp":340733111201,"id":5403,"parentId":5330,"tags":{},"startTime":1779612690382,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-server","duration":3163768,"timestamp":340730098382,"id":5330,"parentId":3,"tags":{"trigger":"src/components/admin/DocumentUpload.tsx"},"startTime":1779612687370,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":27527,"timestamp":340733341508,"id":5408,"parentId":5405,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779612690613,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":27353,"timestamp":340733341722,"id":5412,"parentId":5405,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779612690613,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":27090,"timestamp":340733341992,"id":5417,"parentId":5405,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779612690613,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":39457,"timestamp":340733342116,"id":5420,"parentId":5405,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612690613,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":47707,"timestamp":340733340902,"id":5406,"parentId":5405,"tags":{"request":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\compiled\\@next\\react-refresh-utils\\dist\\runtime.js"},"startTime":1779612690612,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":49874,"timestamp":340733341900,"id":5415,"parentId":5405,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cknowledge%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612690613,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":49916,"timestamp":340733341950,"id":5416,"parentId":5405,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Ccurriculum%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612690613,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":49948,"timestamp":340733342033,"id":5418,"parentId":5405,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612690613,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":49993,"timestamp":340733342076,"id":5419,"parentId":5405,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Csession%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612690613,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":49832,"timestamp":340733342333,"id":5421,"parentId":5405,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Cprofile%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612690614,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":58720,"timestamp":340733342863,"id":5422,"parentId":5405,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5C%5BtopicId%5D%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612690614,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":60014,"timestamp":340733341674,"id":5411,"parentId":5405,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cauth%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612690613,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":75772,"timestamp":340733341614,"id":5410,"parentId":5405,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Capp-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cclient-page.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cerror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Clayout-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cnot-found-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Crender-from-template-context.js%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612690613,"traceId":"0ca0f7fe408e086a"},{"name":"read-resource","duration":11810,"timestamp":340733405751,"id":5428,"parentId":5427,"tags":{},"startTime":1779612690677,"traceId":"0ca0f7fe408e086a"},{"name":"postcss-process","duration":178626,"timestamp":340733419060,"id":5430,"parentId":5429,"tags":{},"startTime":1779612690690,"traceId":"0ca0f7fe408e086a"},{"name":"postcss-loader","duration":181053,"timestamp":340733417794,"id":5429,"parentId":5427,"tags":{},"startTime":1779612690689,"traceId":"0ca0f7fe408e086a"},{"name":"css-loader","duration":30823,"timestamp":340733599107,"id":5431,"parentId":5427,"tags":{"astUsed":"true"},"startTime":1779612690870,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-css","duration":239222,"timestamp":340733404450,"id":5427,"parentId":5423,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css.webpack[javascript/auto]!=!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\build\\webpack\\loaders\\css-loader\\src\\index.js??ruleSet[1].rules[14].oneOf[12].use[2]!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\build\\webpack\\loaders\\postcss-loader\\src\\index.js??ruleSet[1].rules[14].oneOf[12].use[3]!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css","layer":null},"startTime":1779612690676,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":304539,"timestamp":340733341412,"id":5407,"parentId":5405,"tags":{"request":"./node_modules/next/dist/client/app-next-dev.js"},"startTime":1779612690613,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":304220,"timestamp":340733341767,"id":5413,"parentId":5405,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612690613,"traceId":"0ca0f7fe408e086a"},{"name":"next-swc-transform","duration":275564,"timestamp":340733386946,"id":5426,"parentId":5425,"tags":{},"startTime":1779612690658,"traceId":"0ca0f7fe408e086a"},{"name":"next-swc-loader","duration":276385,"timestamp":340733386145,"id":5425,"parentId":5424,"tags":{},"startTime":1779612690657,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-tsx","duration":344910,"timestamp":340733384284,"id":5424,"parentId":5404,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\components\\admin\\DocumentUpload.tsx","layer":"app-pages-browser"},"startTime":1779612690655,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-css","duration":418158,"timestamp":340733370398,"id":5423,"parentId":5404,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css","layer":"app-pages-browser"},"startTime":1779612690642,"traceId":"0ca0f7fe408e086a"},{"name":"build-module","duration":300,"timestamp":340733792720,"id":5432,"parentId":5423,"tags":{},"startTime":1779612691064,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":452683,"timestamp":340733341565,"id":5409,"parentId":5405,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Cstylesheet.css%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cglobals.css%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612690613,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":491733,"timestamp":340733341815,"id":5414,"parentId":5405,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cdocuments%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612690613,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":563429,"timestamp":340733270268,"id":5405,"parentId":5404,"tags":{},"startTime":1779612690541,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":9322,"timestamp":340733851452,"id":5434,"parentId":5433,"tags":{},"startTime":1779612691123,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":27,"timestamp":340733860966,"id":5436,"parentId":5433,"tags":{},"startTime":1779612691132,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":677,"timestamp":340733863897,"id":5437,"parentId":5433,"tags":{},"startTime":1779612691135,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":45,"timestamp":340733864749,"id":5438,"parentId":5433,"tags":{},"startTime":1779612691136,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":76,"timestamp":340733865467,"id":5439,"parentId":5433,"tags":{},"startTime":1779612691137,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":9558,"timestamp":340733860874,"id":5435,"parentId":5433,"tags":{},"startTime":1779612691132,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":2980,"timestamp":340733879284,"id":5440,"parentId":5433,"tags":{},"startTime":1779612691150,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":17408,"timestamp":340733882367,"id":5441,"parentId":5433,"tags":{},"startTime":1779612691154,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":15727,"timestamp":340733906258,"id":5442,"parentId":5433,"tags":{},"startTime":1779612691177,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":1138,"timestamp":340733921980,"id":5443,"parentId":5433,"tags":{},"startTime":1779612691193,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":246,"timestamp":340733923063,"id":5444,"parentId":5433,"tags":{},"startTime":1779612691194,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":19386,"timestamp":340733923345,"id":5445,"parentId":5433,"tags":{},"startTime":1779612691195,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-generateClientManifest","duration":1560,"timestamp":340733948698,"id":5447,"parentId":5404,"tags":{},"startTime":1779612691220,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-createassets","duration":1925,"timestamp":340733948366,"id":5446,"parentId":5404,"tags":{},"startTime":1779612691220,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":154491,"timestamp":340733843774,"id":5433,"parentId":5404,"tags":{},"startTime":1779612691115,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":729521,"timestamp":340733268895,"id":5404,"parentId":5356,"tags":{"name":"client"},"startTime":1779612690540,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":128982,"timestamp":340733998589,"id":5448,"parentId":5356,"tags":{},"startTime":1779612691270,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-client","duration":2799795,"timestamp":340731336233,"id":5356,"parentId":3,"tags":{"trigger":"src/components/admin/DocumentUpload.tsx"},"startTime":1779612688607,"traceId":"0ca0f7fe408e086a"}] +[{"name":"client-success","duration":15,"timestamp":340734161062,"id":5452,"parentId":3,"tags":{},"startTime":1779612691432,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":12,"timestamp":340734164923,"id":5453,"parentId":3,"tags":{},"startTime":1779612691436,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":2884000,"timestamp":340731341031,"id":5455,"parentId":3,"tags":{"updatedModules":[],"page":"/app/session","isPageHidden":true},"startTime":1779612691522,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":2912000,"timestamp":340731339380,"id":5456,"parentId":3,"tags":{"updatedModules":[],"page":"/auth","isPageHidden":true},"startTime":1779612691539,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":3523000,"timestamp":340731344109,"id":5457,"parentId":3,"tags":{"updatedModules":["[project]/src/components/admin/DocumentUpload.tsx"],"page":"/admin/documents","isPageHidden":true},"startTime":1779612692428,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":1214622,"timestamp":340734145839,"id":5450,"tags":{"url":"/app/session?_rsc=14pfl","isTurbopack":false},"startTime":1779612691417,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":8,"timestamp":340735360589,"id":5458,"parentId":5450,"tags":{"url":"/app/session?_rsc=14pfl","memory.rss":"350625792","memory.heapUsed":"248362912","memory.heapTotal":"302194688"},"startTime":1779612692632,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":1199334,"timestamp":340734169161,"id":5454,"tags":{"url":"/auth?_rsc=eqh4i","isTurbopack":false},"startTime":1779612691440,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":7,"timestamp":340735368611,"id":5459,"parentId":5454,"tags":{"url":"/auth?_rsc=eqh4i","memory.rss":"350666752","memory.heapUsed":"248559016","memory.heapTotal":"302194688"},"startTime":1779612692640,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":1219128,"timestamp":340734157592,"id":5451,"tags":{"url":"/admin/documents?_rsc=135zp","isTurbopack":false},"startTime":1779612691429,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":6,"timestamp":340735376822,"id":5460,"parentId":5451,"tags":{"url":"/admin/documents?_rsc=135zp","memory.rss":"350707712","memory.heapUsed":"248759768","memory.heapTotal":"302194688"},"startTime":1779612692648,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":19747,"timestamp":340735567302,"id":5469,"parentId":5466,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779612692838,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":19622,"timestamp":340735567452,"id":5473,"parentId":5466,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779612692839,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":18556,"timestamp":340735568524,"id":5478,"parentId":5466,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779612692840,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":23852,"timestamp":340735568584,"id":5481,"parentId":5466,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612692840,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":24067,"timestamp":340735568646,"id":5484,"parentId":5466,"tags":{"request":"next-client-pages-loader?absolutePagePath=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Cnode_modules%5Cnext%5Cdist%5Cclient%5Ccomponents%5Cnot-found-error.js&page=%2F_not-found%2Fpage!"},"startTime":1779612692840,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":27705,"timestamp":340735566861,"id":5467,"parentId":5466,"tags":{"request":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\compiled\\@next\\react-refresh-utils\\dist\\runtime.js"},"startTime":1779612692838,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":28722,"timestamp":340735568463,"id":5476,"parentId":5466,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cknowledge%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612692840,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":28768,"timestamp":340735568499,"id":5477,"parentId":5466,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Ccurriculum%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612692840,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":28804,"timestamp":340735568544,"id":5479,"parentId":5466,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612692840,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":28849,"timestamp":340735568565,"id":5480,"parentId":5466,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Csession%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612692840,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":28886,"timestamp":340735568604,"id":5482,"parentId":5466,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Cprofile%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612692840,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":32296,"timestamp":340735568276,"id":5475,"parentId":5466,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cdocuments%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612692839,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":32183,"timestamp":340735568625,"id":5483,"parentId":5466,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5C%5BtopicId%5D%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612692840,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":33489,"timestamp":340735567343,"id":5470,"parentId":5466,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Cstylesheet.css%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cglobals.css%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612692839,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":38377,"timestamp":340735567379,"id":5471,"parentId":5466,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Capp-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cclient-page.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cerror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Clayout-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cnot-found-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Crender-from-template-context.js%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612692839,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":39344,"timestamp":340735567417,"id":5472,"parentId":5466,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cauth%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612692839,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":39312,"timestamp":340735567483,"id":5474,"parentId":5466,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612692839,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":40644,"timestamp":340735567231,"id":5468,"parentId":5466,"tags":{"request":"./node_modules/next/dist/client/app-next-dev.js"},"startTime":1779612692838,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":50027,"timestamp":340735557984,"id":5466,"parentId":5465,"tags":{},"startTime":1779612692829,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":6800,"timestamp":340735616038,"id":5486,"parentId":5485,"tags":{},"startTime":1779612692887,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":34,"timestamp":340735623206,"id":5488,"parentId":5485,"tags":{},"startTime":1779612692894,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":145,"timestamp":340735623273,"id":5489,"parentId":5485,"tags":{},"startTime":1779612692894,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":44,"timestamp":340735623705,"id":5490,"parentId":5485,"tags":{},"startTime":1779612692895,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":15,"timestamp":340735623802,"id":5491,"parentId":5485,"tags":{},"startTime":1779612692895,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":5236,"timestamp":340735623176,"id":5487,"parentId":5485,"tags":{},"startTime":1779612692894,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":1660,"timestamp":340735633281,"id":5492,"parentId":5485,"tags":{},"startTime":1779612692904,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":8466,"timestamp":340735634999,"id":5493,"parentId":5485,"tags":{},"startTime":1779612692906,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":20302,"timestamp":340735649913,"id":5494,"parentId":5485,"tags":{},"startTime":1779612692921,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":743,"timestamp":340735670211,"id":5495,"parentId":5485,"tags":{},"startTime":1779612692941,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":203,"timestamp":340735670911,"id":5496,"parentId":5485,"tags":{},"startTime":1779612692942,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":6410,"timestamp":340735671132,"id":5497,"parentId":5485,"tags":{},"startTime":1779612692942,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-generateClientManifest","duration":418,"timestamp":340735681779,"id":5499,"parentId":5465,"tags":{},"startTime":1779612692953,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-createassets","duration":762,"timestamp":340735681454,"id":5498,"parentId":5465,"tags":{},"startTime":1779612692953,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":79233,"timestamp":340735612434,"id":5485,"parentId":5465,"tags":{},"startTime":1779612692884,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":135450,"timestamp":340735556319,"id":5465,"parentId":5462,"tags":{"name":"client"},"startTime":1779612692828,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":57221,"timestamp":340735691913,"id":5500,"parentId":5462,"tags":{},"startTime":1779612692963,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-client","duration":207725,"timestamp":340735545720,"id":5462,"parentId":3,"tags":{"trigger":"manual"},"startTime":1779612692817,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":15,"timestamp":340735777044,"id":5503,"parentId":3,"tags":{},"startTime":1779612693048,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":8,"timestamp":340735777600,"id":5504,"parentId":3,"tags":{},"startTime":1779612693049,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":8,"timestamp":340735777907,"id":5505,"parentId":3,"tags":{},"startTime":1779612693049,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":316000,"timestamp":340735550722,"id":5512,"parentId":3,"tags":{"updatedModules":[],"page":"/auth","isPageHidden":true},"startTime":1779612693143,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":322000,"timestamp":340735551085,"id":5513,"parentId":3,"tags":{"updatedModules":[],"page":"/app/session","isPageHidden":true},"startTime":1779612693145,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":331000,"timestamp":340735558339,"id":5514,"parentId":3,"tags":{"updatedModules":[],"page":"/admin/documents","isPageHidden":true},"startTime":1779612693217,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":97028,"timestamp":340735860822,"id":5508,"parentId":5502,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fdocuments%2Fpage&page=%2Fadmin%2Fdocuments%2Fpage&appPaths=%2Fadmin%2Fdocuments%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fdocuments%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612693132,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":97334,"timestamp":340735860853,"id":5509,"parentId":5502,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&page=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&appPaths=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612693132,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":97356,"timestamp":340735860887,"id":5510,"parentId":5502,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fsession%2Fpage&page=%2Fapp%2Fsession%2Fpage&appPaths=%2Fapp%2Fsession%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fsession%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612693132,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":97384,"timestamp":340735860919,"id":5511,"parentId":5502,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fprofile%2Fpage&page=%2Fapp%2Fprofile%2Fpage&appPaths=%2Fapp%2Fprofile%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fprofile%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612693132,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":100398,"timestamp":340735860573,"id":5506,"parentId":5502,"tags":{"request":"next-app-loader?name=app%2F_not-found%2Fpage&page=%2F_not-found%2Fpage&appPaths=&pagePath=..%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fnot-found-error.js&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612693132,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":102636,"timestamp":340735860779,"id":5507,"parentId":5502,"tags":{"request":"next-app-loader?name=app%2Fauth%2Fpage&page=%2Fauth%2Fpage&appPaths=%2Fauth%2Fpage&pagePath=private-next-app-dir%2Fauth%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612693132,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":397852,"timestamp":340735764279,"id":5502,"parentId":5501,"tags":{},"startTime":1779612693035,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":14303,"timestamp":340737259760,"id":5538,"parentId":5537,"tags":{},"startTime":1779612694531,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":22,"timestamp":340737274232,"id":5540,"parentId":5537,"tags":{},"startTime":1779612694545,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":19692,"timestamp":340737274863,"id":5541,"parentId":5537,"tags":{},"startTime":1779612694546,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":37,"timestamp":340737294732,"id":5542,"parentId":5537,"tags":{},"startTime":1779612694566,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":24,"timestamp":340737294852,"id":5543,"parentId":5537,"tags":{},"startTime":1779612694566,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":24092,"timestamp":340737274186,"id":5539,"parentId":5537,"tags":{},"startTime":1779612694545,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":1994,"timestamp":340737304244,"id":5544,"parentId":5537,"tags":{},"startTime":1779612694575,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":18430,"timestamp":340737306363,"id":5545,"parentId":5537,"tags":{},"startTime":1779612694578,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":9760,"timestamp":340737332823,"id":5546,"parentId":5537,"tags":{},"startTime":1779612694604,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":631,"timestamp":340737342574,"id":5547,"parentId":5537,"tags":{},"startTime":1779612694614,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":198,"timestamp":340737343161,"id":5548,"parentId":5537,"tags":{},"startTime":1779612694614,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":10350,"timestamp":340737343385,"id":5549,"parentId":5537,"tags":{},"startTime":1779612694615,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":206407,"timestamp":340737254977,"id":5537,"parentId":5501,"tags":{},"startTime":1779612694526,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":1735127,"timestamp":340735762846,"id":5501,"parentId":5464,"tags":{"name":"server"},"startTime":1779612693034,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":55071,"timestamp":340737498179,"id":5550,"parentId":5464,"tags":{},"startTime":1779612694769,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-server","duration":2007246,"timestamp":340735548021,"id":5464,"parentId":3,"tags":{"trigger":"manual"},"startTime":1779612692819,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":12363,"timestamp":340737618153,"id":5556,"parentId":5552,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779612694889,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":12251,"timestamp":340737618291,"id":5560,"parentId":5552,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779612694889,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":12121,"timestamp":340737618427,"id":5565,"parentId":5552,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779612694890,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":17596,"timestamp":340737618546,"id":5568,"parentId":5552,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612694890,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":17760,"timestamp":340737618635,"id":5571,"parentId":5552,"tags":{"request":"next-client-pages-loader?absolutePagePath=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Cnode_modules%5Cnext%5Cdist%5Cclient%5Ccomponents%5Cnot-found-error.js&page=%2F_not-found%2Fpage!"},"startTime":1779612694890,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":22027,"timestamp":340737617789,"id":5554,"parentId":5552,"tags":{"request":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\compiled\\@next\\react-refresh-utils\\dist\\runtime.js"},"startTime":1779612694889,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":23355,"timestamp":340737618375,"id":5563,"parentId":5552,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cknowledge%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612694890,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":23388,"timestamp":340737618401,"id":5564,"parentId":5552,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Ccurriculum%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612694890,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":23371,"timestamp":340737618491,"id":5566,"parentId":5552,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612694890,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":23413,"timestamp":340737618520,"id":5567,"parentId":5552,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Csession%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612694890,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":23424,"timestamp":340737618575,"id":5569,"parentId":5552,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Cprofile%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612694890,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":27248,"timestamp":340737618603,"id":5570,"parentId":5552,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5C%5BtopicId%5D%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612694890,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":27633,"timestamp":340737618263,"id":5559,"parentId":5552,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cauth%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612694889,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":38030,"timestamp":340737618229,"id":5558,"parentId":5552,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Capp-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cclient-page.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cerror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Clayout-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cnot-found-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Crender-from-template-context.js%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612694889,"traceId":"0ca0f7fe408e086a"},{"name":"read-resource","duration":9048,"timestamp":340737647329,"id":5577,"parentId":5576,"tags":{},"startTime":1779612694919,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":72694,"timestamp":340737618102,"id":5555,"parentId":5552,"tags":{"request":"./node_modules/next/dist/client/app-next-dev.js"},"startTime":1779612694889,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":72530,"timestamp":340737618319,"id":5561,"parentId":5552,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612694890,"traceId":"0ca0f7fe408e086a"},{"name":"next-swc-transform","duration":66180,"timestamp":340737638930,"id":5575,"parentId":5574,"tags":{},"startTime":1779612694910,"traceId":"0ca0f7fe408e086a"},{"name":"next-swc-loader","duration":66746,"timestamp":340737638384,"id":5574,"parentId":5573,"tags":{},"startTime":1779612694910,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-tsx","duration":97045,"timestamp":340737637574,"id":5573,"parentId":5551,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\components\\admin\\DocumentUpload.tsx","layer":"app-pages-browser"},"startTime":1779612694909,"traceId":"0ca0f7fe408e086a"},{"name":"postcss-process","duration":150833,"timestamp":340737656695,"id":5579,"parentId":5578,"tags":{},"startTime":1779612694928,"traceId":"0ca0f7fe408e086a"},{"name":"postcss-loader","duration":151839,"timestamp":340737656529,"id":5578,"parentId":5576,"tags":{},"startTime":1779612694928,"traceId":"0ca0f7fe408e086a"},{"name":"css-loader","duration":19615,"timestamp":340737808528,"id":5580,"parentId":5576,"tags":{"astUsed":"true"},"startTime":1779612695080,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-css","duration":185383,"timestamp":340737646882,"id":5576,"parentId":5572,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css.webpack[javascript/auto]!=!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\build\\webpack\\loaders\\css-loader\\src\\index.js??ruleSet[1].rules[14].oneOf[12].use[2]!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\build\\webpack\\loaders\\postcss-loader\\src\\index.js??ruleSet[1].rules[14].oneOf[12].use[3]!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css","layer":null},"startTime":1779612694918,"traceId":"0ca0f7fe408e086a"}] +[{"name":"add-entry","duration":219539,"timestamp":340737618346,"id":5562,"parentId":5552,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cdocuments%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612694890,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-css","duration":227678,"timestamp":340737631480,"id":5572,"parentId":5551,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css","layer":"app-pages-browser"},"startTime":1779612694903,"traceId":"0ca0f7fe408e086a"},{"name":"build-module","duration":282,"timestamp":340737860991,"id":5581,"parentId":5572,"tags":{},"startTime":1779612695132,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":243271,"timestamp":340737618199,"id":5557,"parentId":5552,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Cstylesheet.css%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cglobals.css%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612694889,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":298543,"timestamp":340737563108,"id":5552,"parentId":5551,"tags":{},"startTime":1779612694834,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":6677,"timestamp":340737879471,"id":5583,"parentId":5582,"tags":{},"startTime":1779612695151,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":40,"timestamp":340737886301,"id":5585,"parentId":5582,"tags":{},"startTime":1779612695157,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":372,"timestamp":340737886418,"id":5586,"parentId":5582,"tags":{},"startTime":1779612695158,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":52,"timestamp":340737886902,"id":5587,"parentId":5582,"tags":{},"startTime":1779612695158,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":26,"timestamp":340737887054,"id":5588,"parentId":5582,"tags":{},"startTime":1779612695158,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":6139,"timestamp":340737886255,"id":5584,"parentId":5582,"tags":{},"startTime":1779612695157,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":2707,"timestamp":340737896912,"id":5589,"parentId":5582,"tags":{},"startTime":1779612695168,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":30365,"timestamp":340737899702,"id":5590,"parentId":5582,"tags":{},"startTime":1779612695171,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":20963,"timestamp":340737938998,"id":5591,"parentId":5582,"tags":{},"startTime":1779612695210,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":1253,"timestamp":340737959949,"id":5592,"parentId":5582,"tags":{},"startTime":1779612695231,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":374,"timestamp":340737961118,"id":5593,"parentId":5582,"tags":{},"startTime":1779612695232,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":30997,"timestamp":340737961527,"id":5594,"parentId":5582,"tags":{},"startTime":1779612695233,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-generateClientManifest","duration":713,"timestamp":340737998925,"id":5596,"parentId":5551,"tags":{},"startTime":1779612695270,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-createassets","duration":1112,"timestamp":340737998562,"id":5595,"parentId":5551,"tags":{},"startTime":1779612695270,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":150845,"timestamp":340737873620,"id":5582,"parentId":5551,"tags":{},"startTime":1779612695145,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":462892,"timestamp":340737561704,"id":5551,"parentId":5536,"tags":{"name":"client"},"startTime":1779612694833,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":54180,"timestamp":340738024718,"id":5597,"parentId":5536,"tags":{},"startTime":1779612695296,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-client","duration":1784975,"timestamp":340736296432,"id":5536,"parentId":3,"tags":{"trigger":"src/components/admin/DocumentUpload.tsx.tmp.11120.aab8402c0ee2"},"startTime":1779612693568,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":13,"timestamp":340738104224,"id":5600,"parentId":3,"tags":{},"startTime":1779612695375,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":6,"timestamp":340738104712,"id":5601,"parentId":3,"tags":{},"startTime":1779612695376,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":3,"timestamp":340738104898,"id":5602,"parentId":3,"tags":{},"startTime":1779612695376,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":1857000,"timestamp":340736300125,"id":5609,"parentId":3,"tags":{"updatedModules":[],"page":"/auth","isPageHidden":true},"startTime":1779612695467,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":1910000,"timestamp":340736300228,"id":5610,"parentId":3,"tags":{"updatedModules":[],"page":"/app/session","isPageHidden":true},"startTime":1779612695483,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":72926,"timestamp":340738142851,"id":5604,"parentId":5599,"tags":{"request":"next-app-loader?name=app%2Fauth%2Fpage&page=%2Fauth%2Fpage&appPaths=%2Fauth%2Fpage&pagePath=private-next-app-dir%2Fauth%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612695414,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":72974,"timestamp":340738142896,"id":5605,"parentId":5599,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fdocuments%2Fpage&page=%2Fadmin%2Fdocuments%2Fpage&appPaths=%2Fadmin%2Fdocuments%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fdocuments%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612695414,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":73008,"timestamp":340738142929,"id":5606,"parentId":5599,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fsession%2Fpage&page=%2Fapp%2Fsession%2Fpage&appPaths=%2Fapp%2Fsession%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fsession%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612695414,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":73018,"timestamp":340738142963,"id":5607,"parentId":5599,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&page=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&appPaths=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612695414,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":73032,"timestamp":340738142995,"id":5608,"parentId":5599,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fprofile%2Fpage&page=%2Fapp%2Fprofile%2Fpage&appPaths=%2Fapp%2Fprofile%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fprofile%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612695414,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":79745,"timestamp":340738142633,"id":5603,"parentId":5599,"tags":{"request":"next-app-loader?name=app%2F_not-found%2Fpage&page=%2F_not-found%2Fpage&appPaths=&pagePath=..%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fnot-found-error.js&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612695414,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":1989000,"timestamp":340736299921,"id":5632,"parentId":3,"tags":{"updatedModules":["[project]/src/components/admin/DocumentUpload.tsx"],"page":"/admin/documents","isPageHidden":true},"startTime":1779612695640,"traceId":"0ca0f7fe408e086a"},{"name":"next-swc-transform","duration":18804,"timestamp":340738373945,"id":5635,"parentId":5634,"tags":{},"startTime":1779612695645,"traceId":"0ca0f7fe408e086a"},{"name":"next-swc-loader","duration":19239,"timestamp":340738373549,"id":5634,"parentId":5633,"tags":{},"startTime":1779612695645,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-tsx","duration":36929,"timestamp":340738372210,"id":5633,"parentId":5598,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\components\\admin\\DocumentUpload.tsx","layer":"ssr"},"startTime":1779612695643,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":378678,"timestamp":340738089083,"id":5599,"parentId":5598,"tags":{},"startTime":1779612695360,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":6682,"timestamp":340738485967,"id":5637,"parentId":5636,"tags":{},"startTime":1779612695757,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":17,"timestamp":340738492789,"id":5639,"parentId":5636,"tags":{},"startTime":1779612695764,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":18920,"timestamp":340738492880,"id":5640,"parentId":5636,"tags":{},"startTime":1779612695764,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":63,"timestamp":340738512329,"id":5641,"parentId":5636,"tags":{},"startTime":1779612695784,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":26,"timestamp":340738512530,"id":5642,"parentId":5636,"tags":{},"startTime":1779612695784,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":22442,"timestamp":340738492744,"id":5638,"parentId":5636,"tags":{},"startTime":1779612695764,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":1658,"timestamp":340738519736,"id":5643,"parentId":5636,"tags":{},"startTime":1779612695791,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":15786,"timestamp":340738521486,"id":5644,"parentId":5636,"tags":{},"startTime":1779612695793,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":5831,"timestamp":340738541724,"id":5645,"parentId":5636,"tags":{},"startTime":1779612695813,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":974,"timestamp":340738547480,"id":5646,"parentId":5636,"tags":{},"startTime":1779612695819,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":357,"timestamp":340738548389,"id":5647,"parentId":5636,"tags":{},"startTime":1779612695820,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":10536,"timestamp":340738548781,"id":5648,"parentId":5636,"tags":{},"startTime":1779612695820,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":102922,"timestamp":340738479379,"id":5636,"parentId":5598,"tags":{},"startTime":1779612695751,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":519572,"timestamp":340738087728,"id":5598,"parentId":5553,"tags":{"name":"server"},"startTime":1779612695359,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":35772,"timestamp":340738607679,"id":5649,"parentId":5553,"tags":{},"startTime":1779612695879,"traceId":"0ca0f7fe408e086a"},{"name":"compile-path","duration":3101115,"timestamp":340735546019,"id":5463,"tags":{"trigger":"/_not-found","isTurbopack":false},"startTime":1779612692817,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-server","duration":1041737,"timestamp":340737606282,"id":5553,"parentId":3,"tags":{"trigger":"src/components/admin/DocumentUpload.tsx"},"startTime":1779612694877,"traceId":"0ca0f7fe408e086a"}] +[{"name":"handle-request","duration":3640781,"timestamp":340735537390,"id":5461,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779612692809,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":6,"timestamp":340739178288,"id":5654,"parentId":5461,"tags":{"url":"/icons/192.png","memory.rss":"337776640","memory.heapUsed":"282849448","memory.heapTotal":"316493824"},"startTime":1779612696449,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":582257,"timestamp":340738725776,"id":5650,"tags":{"url":"/auth?_rsc=eqh4i","isTurbopack":false},"startTime":1779612695997,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":9,"timestamp":340739308198,"id":5655,"parentId":5650,"tags":{"url":"/auth?_rsc=eqh4i","memory.rss":"338313216","memory.heapUsed":"281773392","memory.heapTotal":"317464576"},"startTime":1779612696579,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":290130,"timestamp":340739124100,"id":5653,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779612696395,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":7,"timestamp":340739414387,"id":5656,"parentId":5653,"tags":{"url":"/icons/192.png","memory.rss":"340094976","memory.heapUsed":"290128448","memory.heapTotal":"318808064"},"startTime":1779612696686,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":698556,"timestamp":340738728354,"id":5651,"tags":{"url":"/app/session?_rsc=14pfl","isTurbopack":false},"startTime":1779612696000,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":9,"timestamp":340739427054,"id":5657,"parentId":5651,"tags":{"url":"/app/session?_rsc=14pfl","memory.rss":"340406272","memory.heapUsed":"277603296","memory.heapTotal":"319332352"},"startTime":1779612696698,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":700263,"timestamp":340738729632,"id":5652,"tags":{"url":"/admin/documents?_rsc=135zp","isTurbopack":false},"startTime":1779612696001,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":10,"timestamp":340739430040,"id":5658,"parentId":5652,"tags":{"url":"/admin/documents?_rsc=135zp","memory.rss":"340406272","memory.heapUsed":"277753424","memory.heapTotal":"319332352"},"startTime":1779612696701,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":242512,"timestamp":340820558871,"id":5659,"tags":{"url":"/admin/documents","isTurbopack":false},"startTime":1779612777830,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":5,"timestamp":340820801489,"id":5660,"parentId":5659,"tags":{"url":"/admin/documents","memory.rss":"321495040","memory.heapUsed":"241131376","memory.heapTotal":"258129920"},"startTime":1779612778072,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":80506,"timestamp":340823342274,"id":5662,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779612780613,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":2,"timestamp":340823422845,"id":5663,"parentId":5662,"tags":{"url":"/icons/192.png","memory.rss":"322482176","memory.heapUsed":"244214904","memory.heapTotal":"264421376"},"startTime":1779612780694,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":38,"timestamp":340823661418,"id":5664,"parentId":3,"tags":{},"startTime":1779612780932,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":19,"timestamp":340823661890,"id":5665,"parentId":3,"tags":{},"startTime":1779612780933,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":28,"timestamp":340823752325,"id":5666,"parentId":3,"tags":{},"startTime":1779612781023,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":89377,"timestamp":340836884709,"id":5673,"parentId":5671,"tags":{"request":"next-app-loader?name=app%2Fauth%2Fpage&page=%2Fauth%2Fpage&appPaths=%2Fauth%2Fpage&pagePath=private-next-app-dir%2Fauth%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612794156,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":89259,"timestamp":340836884865,"id":5674,"parentId":5671,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fdocuments%2Fpage&page=%2Fadmin%2Fdocuments%2Fpage&appPaths=%2Fadmin%2Fdocuments%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fdocuments%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612794156,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":89238,"timestamp":340836884903,"id":5675,"parentId":5671,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fsession%2Fpage&page=%2Fapp%2Fsession%2Fpage&appPaths=%2Fapp%2Fsession%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fsession%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612794156,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":89216,"timestamp":340836884937,"id":5676,"parentId":5671,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&page=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&appPaths=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612794156,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":89272,"timestamp":340836884969,"id":5677,"parentId":5671,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fprofile%2Fpage&page=%2Fapp%2Fprofile%2Fpage&appPaths=%2Fapp%2Fprofile%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fprofile%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612794156,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":113040,"timestamp":340836884475,"id":5672,"parentId":5671,"tags":{"request":"next-app-loader?name=app%2F_not-found%2Fpage&page=%2F_not-found%2Fpage&appPaths=&pagePath=..%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fnot-found-error.js&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612794155,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":125431,"timestamp":340836884998,"id":5678,"parentId":5671,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fknowledge%2Fpage&page=%2Fadmin%2Fknowledge%2Fpage&appPaths=%2Fadmin%2Fknowledge%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fknowledge%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612794156,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":346994,"timestamp":340836849481,"id":5671,"parentId":5670,"tags":{},"startTime":1779612794120,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":15562,"timestamp":340837384637,"id":5705,"parentId":5704,"tags":{},"startTime":1779612794656,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":34,"timestamp":340837400327,"id":5707,"parentId":5704,"tags":{},"startTime":1779612794671,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":19019,"timestamp":340837400434,"id":5708,"parentId":5704,"tags":{},"startTime":1779612794671,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":106,"timestamp":340837419598,"id":5709,"parentId":5704,"tags":{},"startTime":1779612794691,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":309,"timestamp":340837419785,"id":5710,"parentId":5704,"tags":{},"startTime":1779612794691,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":69984,"timestamp":340837400284,"id":5706,"parentId":5704,"tags":{},"startTime":1779612794671,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":1535,"timestamp":340837473640,"id":5711,"parentId":5704,"tags":{},"startTime":1779612794745,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":7729,"timestamp":340837475234,"id":5712,"parentId":5704,"tags":{},"startTime":1779612794746,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":8065,"timestamp":340837488299,"id":5713,"parentId":5704,"tags":{},"startTime":1779612794759,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":1476,"timestamp":340837496355,"id":5714,"parentId":5704,"tags":{},"startTime":1779612794767,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":617,"timestamp":340837497568,"id":5715,"parentId":5704,"tags":{},"startTime":1779612794769,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":2634,"timestamp":340837498277,"id":5716,"parentId":5704,"tags":{},"startTime":1779612794769,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":144737,"timestamp":340837380711,"id":5704,"parentId":5670,"tags":{},"startTime":1779612794652,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":705296,"timestamp":340836848672,"id":5670,"parentId":5668,"tags":{"name":"server"},"startTime":1779612794120,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":31404,"timestamp":340837554284,"id":5717,"parentId":5668,"tags":{},"startTime":1779612794825,"traceId":"0ca0f7fe408e086a"},{"name":"compile-path","duration":745441,"timestamp":340836842305,"id":5669,"tags":{"trigger":"/admin/knowledge","isTurbopack":false},"startTime":1779612794113,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-server","duration":746047,"timestamp":340836842189,"id":5668,"parentId":3,"tags":{"trigger":"manual"},"startTime":1779612794113,"traceId":"0ca0f7fe408e086a"}] +[{"name":"handle-request","duration":900277,"timestamp":340836816134,"id":5667,"tags":{"url":"/admin/knowledge?_rsc=15z2o","isTurbopack":false},"startTime":1779612794087,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":5,"timestamp":340837716474,"id":5718,"parentId":5667,"tags":{"url":"/admin/knowledge?_rsc=15z2o","memory.rss":"313741312","memory.heapUsed":"250599560","memory.heapTotal":"298876928"},"startTime":1779612794987,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":41055,"timestamp":340837730672,"id":5719,"tags":{"url":"/admin/knowledge?_rsc=g58oh","isTurbopack":false},"startTime":1779612795002,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":3,"timestamp":340837771786,"id":5720,"parentId":5719,"tags":{"url":"/admin/knowledge?_rsc=g58oh","memory.rss":"313741312","memory.heapUsed":"258228784","memory.heapTotal":"298876928"},"startTime":1779612795043,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":216570,"timestamp":340838074406,"id":5721,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779612795345,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":4,"timestamp":340838291080,"id":5722,"parentId":5721,"tags":{"url":"/icons/192.png","memory.rss":"314376192","memory.heapUsed":"263164400","memory.heapTotal":"299139072"},"startTime":1779612795562,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":136632,"timestamp":340839920044,"id":5723,"tags":{"url":"/admin/knowledge","isTurbopack":false},"startTime":1779612797191,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":5,"timestamp":340840056791,"id":5724,"parentId":5723,"tags":{"url":"/admin/knowledge","memory.rss":"314454016","memory.heapUsed":"265087408","memory.heapTotal":"299139072"},"startTime":1779612797328,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":68257,"timestamp":340841487326,"id":5726,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779612798758,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":6,"timestamp":340841555724,"id":5727,"parentId":5726,"tags":{"url":"/icons/192.png","memory.rss":"319770624","memory.heapUsed":"259584416","memory.heapTotal":"299139072"},"startTime":1779612798827,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":23,"timestamp":340841672044,"id":5728,"parentId":3,"tags":{},"startTime":1779612798943,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":13,"timestamp":340841672675,"id":5729,"parentId":3,"tags":{},"startTime":1779612798944,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":13,"timestamp":340841739651,"id":5730,"parentId":3,"tags":{},"startTime":1779612799011,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":52276,"timestamp":340848060109,"id":5731,"tags":{"url":"/admin/documents?_rsc=1est4","isTurbopack":false},"startTime":1779612805331,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":6,"timestamp":340848112493,"id":5732,"parentId":5731,"tags":{"url":"/admin/documents?_rsc=1est4","memory.rss":"320192512","memory.heapUsed":"266994664","memory.heapTotal":"299556864"},"startTime":1779612805383,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":42969,"timestamp":340848133478,"id":5733,"tags":{"url":"/admin/documents?_rsc=1s5w9","isTurbopack":false},"startTime":1779612805404,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":6,"timestamp":340848176642,"id":5734,"parentId":5733,"tags":{"url":"/admin/documents?_rsc=1s5w9","memory.rss":"319782912","memory.heapUsed":"260825840","memory.heapTotal":"299139072"},"startTime":1779612805448,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":117885,"timestamp":340848488367,"id":5735,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779612805759,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":8,"timestamp":340848606375,"id":5736,"parentId":5735,"tags":{"url":"/icons/192.png","memory.rss":"319819776","memory.heapUsed":"259924000","memory.heapTotal":"299139072"},"startTime":1779612805877,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":224255,"timestamp":340850916020,"id":5743,"parentId":5741,"tags":{"request":"next-app-loader?name=app%2Fauth%2Fpage&page=%2Fauth%2Fpage&appPaths=%2Fauth%2Fpage&pagePath=private-next-app-dir%2Fauth%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612808187,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":224295,"timestamp":340850916054,"id":5744,"parentId":5741,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fdocuments%2Fpage&page=%2Fadmin%2Fdocuments%2Fpage&appPaths=%2Fadmin%2Fdocuments%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fdocuments%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612808187,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":224306,"timestamp":340850916082,"id":5745,"parentId":5741,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fsession%2Fpage&page=%2Fapp%2Fsession%2Fpage&appPaths=%2Fapp%2Fsession%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fsession%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612808187,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":224301,"timestamp":340850916111,"id":5746,"parentId":5741,"tags":{"request":"next-app-loader?name=app%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&page=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&appPaths=%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage&pagePath=private-next-app-dir%2Fapp%2Flibrary%2F%5BtopicId%5D%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612808187,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":224296,"timestamp":340850916137,"id":5747,"parentId":5741,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fknowledge%2Fpage&page=%2Fadmin%2Fknowledge%2Fpage&appPaths=%2Fadmin%2Fknowledge%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fknowledge%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612808187,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":285446,"timestamp":340850915840,"id":5742,"parentId":5741,"tags":{"request":"next-app-loader?name=app%2F_not-found%2Fpage&page=%2F_not-found%2Fpage&appPaths=&pagePath=..%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fnot-found-error.js&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612808187,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":605443,"timestamp":340850916162,"id":5748,"parentId":5741,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fcurriculum%2Fpage&page=%2Fadmin%2Fcurriculum%2Fpage&appPaths=%2Fadmin%2Fcurriculum%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fcurriculum%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612808187,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":928645,"timestamp":340850888096,"id":5741,"parentId":5740,"tags":{},"startTime":1779612808159,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":9812,"timestamp":340851825874,"id":5775,"parentId":5774,"tags":{},"startTime":1779612809097,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":25,"timestamp":340851835775,"id":5777,"parentId":5774,"tags":{},"startTime":1779612809107,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":12423,"timestamp":340851835849,"id":5778,"parentId":5774,"tags":{},"startTime":1779612809107,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":26,"timestamp":340851848379,"id":5779,"parentId":5774,"tags":{},"startTime":1779612809119,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":19,"timestamp":340851848493,"id":5780,"parentId":5774,"tags":{},"startTime":1779612809119,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":15957,"timestamp":340851835747,"id":5776,"parentId":5774,"tags":{},"startTime":1779612809107,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":1979,"timestamp":340851854455,"id":5781,"parentId":5774,"tags":{},"startTime":1779612809125,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":8085,"timestamp":340851856489,"id":5782,"parentId":5774,"tags":{},"startTime":1779612809127,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":4552,"timestamp":340851868359,"id":5783,"parentId":5774,"tags":{},"startTime":1779612809139,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":439,"timestamp":340851872902,"id":5784,"parentId":5774,"tags":{},"startTime":1779612809144,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":150,"timestamp":340851873307,"id":5785,"parentId":5774,"tags":{},"startTime":1779612809144,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":40677,"timestamp":340851873471,"id":5786,"parentId":5774,"tags":{},"startTime":1779612809144,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":131267,"timestamp":340851823205,"id":5774,"parentId":5740,"tags":{},"startTime":1779612809094,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":1104465,"timestamp":340850887425,"id":5740,"parentId":5738,"tags":{"name":"server"},"startTime":1779612808158,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":70854,"timestamp":340851992377,"id":5787,"parentId":5738,"tags":{},"startTime":1779612809263,"traceId":"0ca0f7fe408e086a"},{"name":"compile-path","duration":1185933,"timestamp":340850881479,"id":5739,"tags":{"trigger":"/admin/curriculum","isTurbopack":false},"startTime":1779612808152,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-server","duration":1189039,"timestamp":340850881410,"id":5738,"parentId":3,"tags":{"trigger":"manual"},"startTime":1779612808152,"traceId":"0ca0f7fe408e086a"}] +[{"name":"handle-request","duration":1388027,"timestamp":340850861996,"id":5737,"tags":{"url":"/admin/curriculum?_rsc=1q4x1","isTurbopack":false},"startTime":1779612808133,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":5,"timestamp":340852250108,"id":5788,"parentId":5737,"tags":{"url":"/admin/curriculum?_rsc=1q4x1","memory.rss":"323948544","memory.heapUsed":"264669528","memory.heapTotal":"299003904"},"startTime":1779612809521,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":53843,"timestamp":340852265189,"id":5789,"tags":{"url":"/admin/curriculum?_rsc=90jz0","isTurbopack":false},"startTime":1779612809536,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":5,"timestamp":340852319096,"id":5790,"parentId":5789,"tags":{"url":"/admin/curriculum?_rsc=90jz0","memory.rss":"322428928","memory.heapUsed":"261727584","memory.heapTotal":"297484288"},"startTime":1779612809590,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":118022,"timestamp":340852554095,"id":5791,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779612809825,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":5,"timestamp":340852672228,"id":5792,"parentId":5791,"tags":{"url":"/icons/192.png","memory.rss":"323559424","memory.heapUsed":"265718016","memory.heapTotal":"300105728"},"startTime":1779612809943,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":66391,"timestamp":340865049352,"id":5793,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779612822320,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":4,"timestamp":340865115852,"id":5794,"parentId":5793,"tags":{"url":"/icons/192.png","memory.rss":"323837952","memory.heapUsed":"264823096","memory.heapTotal":"300367872"},"startTime":1779612822387,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":115759,"timestamp":340877872612,"id":5795,"tags":{"url":"/admin/documents","isTurbopack":false},"startTime":1779612835144,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":3,"timestamp":340877988450,"id":5796,"parentId":5795,"tags":{"url":"/admin/documents","memory.rss":"324550656","memory.heapUsed":"266532816","memory.heapTotal":"300892160"},"startTime":1779612835259,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":111897,"timestamp":340879198557,"id":5798,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779612836470,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":7,"timestamp":340879310596,"id":5799,"parentId":5798,"tags":{"url":"/icons/192.png","memory.rss":"325599232","memory.heapUsed":"259985328","memory.heapTotal":"301678592"},"startTime":1779612836582,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":11,"timestamp":340879381404,"id":5800,"parentId":3,"tags":{},"startTime":1779612836652,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":5,"timestamp":340879381685,"id":5801,"parentId":3,"tags":{},"startTime":1779612836653,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":15,"timestamp":340879386164,"id":5802,"parentId":3,"tags":{},"startTime":1779612836657,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":12707,"timestamp":340941541442,"id":5809,"parentId":5805,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779612898812,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":12659,"timestamp":340941541501,"id":5813,"parentId":5805,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779612898813,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":12390,"timestamp":340941541774,"id":5818,"parentId":5805,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779612898813,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":15850,"timestamp":340941541793,"id":5821,"parentId":5805,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612898813,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":15909,"timestamp":340941541811,"id":5824,"parentId":5805,"tags":{"request":"next-client-pages-loader?absolutePagePath=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Cnode_modules%5Cnext%5Cdist%5Cclient%5Ccomponents%5Cnot-found-error.js&page=%2F_not-found%2Fpage!"},"startTime":1779612898813,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":18420,"timestamp":340941541154,"id":5807,"parentId":5805,"tags":{"request":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\compiled\\@next\\react-refresh-utils\\dist\\runtime.js"},"startTime":1779612898812,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":18438,"timestamp":340941541687,"id":5816,"parentId":5805,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cknowledge%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612898813,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":18402,"timestamp":340941541740,"id":5817,"parentId":5805,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Ccurriculum%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612898813,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":18381,"timestamp":340941541781,"id":5819,"parentId":5805,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612898813,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":18393,"timestamp":340941541787,"id":5820,"parentId":5805,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Csession%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612898813,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":18402,"timestamp":340941541798,"id":5822,"parentId":5805,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Cprofile%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612898813,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":21201,"timestamp":340941541629,"id":5815,"parentId":5805,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cdocuments%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612898813,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":21130,"timestamp":340941541804,"id":5823,"parentId":5805,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5C%5BtopicId%5D%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612898813,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":28614,"timestamp":340941541472,"id":5811,"parentId":5805,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Capp-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cclient-page.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cerror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Clayout-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cnot-found-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Crender-from-template-context.js%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612898813,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":29008,"timestamp":340941541488,"id":5812,"parentId":5805,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cauth%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612898813,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":29006,"timestamp":340941541514,"id":5814,"parentId":5805,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612898813,"traceId":"0ca0f7fe408e086a"},{"name":"read-resource","duration":6765,"timestamp":340941563796,"id":5827,"parentId":5826,"tags":{},"startTime":1779612898835,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":52974,"timestamp":340941541407,"id":5808,"parentId":5805,"tags":{"request":"./node_modules/next/dist/client/app-next-dev.js"},"startTime":1779612898812,"traceId":"0ca0f7fe408e086a"},{"name":"postcss-process","duration":53266,"timestamp":340941570849,"id":5829,"parentId":5828,"tags":{},"startTime":1779612898842,"traceId":"0ca0f7fe408e086a"},{"name":"postcss-loader","duration":54402,"timestamp":340941570640,"id":5828,"parentId":5826,"tags":{},"startTime":1779612898842,"traceId":"0ca0f7fe408e086a"},{"name":"css-loader","duration":15902,"timestamp":340941625257,"id":5830,"parentId":5826,"tags":{"astUsed":"true"},"startTime":1779612898896,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-css","duration":85485,"timestamp":340941563309,"id":5826,"parentId":5825,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css.webpack[javascript/auto]!=!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\build\\webpack\\loaders\\css-loader\\src\\index.js??ruleSet[1].rules[14].oneOf[12].use[2]!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\build\\webpack\\loaders\\postcss-loader\\src\\index.js??ruleSet[1].rules[14].oneOf[12].use[3]!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css","layer":null},"startTime":1779612898834,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-css","duration":116737,"timestamp":340941554524,"id":5825,"parentId":5804,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css","layer":"app-pages-browser"},"startTime":1779612898826,"traceId":"0ca0f7fe408e086a"},{"name":"build-module","duration":188,"timestamp":340941671651,"id":5831,"parentId":5825,"tags":{},"startTime":1779612898943,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":130429,"timestamp":340941541458,"id":5810,"parentId":5805,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Cstylesheet.css%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cglobals.css%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612898813,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":139077,"timestamp":340941532896,"id":5805,"parentId":5804,"tags":{},"startTime":1779612898804,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":10635,"timestamp":340941751189,"id":5833,"parentId":5832,"tags":{},"startTime":1779612899022,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":28,"timestamp":340941761919,"id":5835,"parentId":5832,"tags":{},"startTime":1779612899033,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":224,"timestamp":340941762240,"id":5836,"parentId":5832,"tags":{},"startTime":1779612899033,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":25,"timestamp":340941762542,"id":5837,"parentId":5832,"tags":{},"startTime":1779612899034,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":19,"timestamp":340941762637,"id":5838,"parentId":5832,"tags":{},"startTime":1779612899034,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":3457,"timestamp":340941761888,"id":5834,"parentId":5832,"tags":{},"startTime":1779612899033,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":1155,"timestamp":340941770091,"id":5839,"parentId":5832,"tags":{},"startTime":1779612899041,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":12825,"timestamp":340941771306,"id":5840,"parentId":5832,"tags":{},"startTime":1779612899042,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":38346,"timestamp":340941792721,"id":5841,"parentId":5832,"tags":{},"startTime":1779612899064,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":863,"timestamp":340941831060,"id":5842,"parentId":5832,"tags":{},"startTime":1779612899102,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":319,"timestamp":340941831832,"id":5843,"parentId":5832,"tags":{},"startTime":1779612899103,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":12270,"timestamp":340941832210,"id":5844,"parentId":5832,"tags":{},"startTime":1779612899103,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-generateClientManifest","duration":2112,"timestamp":340941852696,"id":5846,"parentId":5804,"tags":{},"startTime":1779612899124,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-createassets","duration":3282,"timestamp":340941851586,"id":5845,"parentId":5804,"tags":{},"startTime":1779612899123,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":121446,"timestamp":340941746467,"id":5832,"parentId":5804,"tags":{},"startTime":1779612899018,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":337581,"timestamp":340941530599,"id":5804,"parentId":5803,"tags":{"name":"client"},"startTime":1779612898802,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":89439,"timestamp":340941868438,"id":5847,"parentId":5803,"tags":{},"startTime":1779612899139,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-client","duration":442957,"timestamp":340941521311,"id":5803,"parentId":3,"tags":{"trigger":"src/app/layout.tsx.tmp.11120.81375b1c133d"},"startTime":1779612898792,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":14,"timestamp":340942006495,"id":5851,"parentId":3,"tags":{},"startTime":1779612899278,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":6,"timestamp":340942006795,"id":5852,"parentId":3,"tags":{},"startTime":1779612899278,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":72000,"timestamp":340942003580,"id":5859,"parentId":3,"tags":{"updatedModules":[],"page":"/admin/documents","isPageHidden":true},"startTime":1779612899349,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":87000,"timestamp":340942003081,"id":5860,"parentId":3,"tags":{"updatedModules":[],"page":"/app/session","isPageHidden":true},"startTime":1779612899385,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":52487,"timestamp":340942070448,"id":5854,"parentId":5849,"tags":{"request":"next-app-loader?name=app%2Fauth%2Fpage&page=%2Fauth%2Fpage&appPaths=%2Fauth%2Fpage&pagePath=private-next-app-dir%2Fauth%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612899341,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":52452,"timestamp":340942070507,"id":5855,"parentId":5849,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fsession%2Fpage&page=%2Fapp%2Fsession%2Fpage&appPaths=%2Fapp%2Fsession%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fsession%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612899342,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":52439,"timestamp":340942070534,"id":5856,"parentId":5849,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fcurriculum%2Fpage&page=%2Fadmin%2Fcurriculum%2Fpage&appPaths=%2Fadmin%2Fcurriculum%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fcurriculum%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612899342,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":52420,"timestamp":340942070560,"id":5857,"parentId":5849,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fknowledge%2Fpage&page=%2Fadmin%2Fknowledge%2Fpage&appPaths=%2Fadmin%2Fknowledge%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fknowledge%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612899342,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":52403,"timestamp":340942070583,"id":5858,"parentId":5849,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fdocuments%2Fpage&page=%2Fadmin%2Fdocuments%2Fpage&appPaths=%2Fadmin%2Fdocuments%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fdocuments%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612899342,"traceId":"0ca0f7fe408e086a"},{"name":"next-swc-transform","duration":27473,"timestamp":340942121528,"id":5863,"parentId":5862,"tags":{},"startTime":1779612899393,"traceId":"0ca0f7fe408e086a"},{"name":"next-swc-loader","duration":27832,"timestamp":340942121188,"id":5862,"parentId":5861,"tags":{},"startTime":1779612899392,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-tsx","duration":36063,"timestamp":340942119210,"id":5861,"parentId":5848,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\layout.tsx","layer":"rsc"},"startTime":1779612899390,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":317644,"timestamp":340942069967,"id":5853,"parentId":5849,"tags":{"request":"next-app-loader?name=app%2F_not-found%2Fpage&page=%2F_not-found%2Fpage&appPaths=&pagePath=..%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fnot-found-error.js&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612899341,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":552841,"timestamp":340941989134,"id":5849,"parentId":5848,"tags":{},"startTime":1779612899260,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":7892,"timestamp":340942546343,"id":5886,"parentId":5885,"tags":{},"startTime":1779612899817,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":13,"timestamp":340942554286,"id":5888,"parentId":5885,"tags":{},"startTime":1779612899825,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":10976,"timestamp":340942554329,"id":5889,"parentId":5885,"tags":{},"startTime":1779612899825,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":24,"timestamp":340942565403,"id":5890,"parentId":5885,"tags":{},"startTime":1779612899836,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":16,"timestamp":340942565494,"id":5891,"parentId":5885,"tags":{},"startTime":1779612899837,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":14603,"timestamp":340942554269,"id":5887,"parentId":5885,"tags":{},"startTime":1779612899825,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":2171,"timestamp":340942570571,"id":5892,"parentId":5885,"tags":{},"startTime":1779612899842,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":3798,"timestamp":340942572780,"id":5893,"parentId":5885,"tags":{},"startTime":1779612899844,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":1882,"timestamp":340942578012,"id":5894,"parentId":5885,"tags":{},"startTime":1779612899849,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":214,"timestamp":340942579891,"id":5895,"parentId":5885,"tags":{},"startTime":1779612899851,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":77,"timestamp":340942580089,"id":5896,"parentId":5885,"tags":{},"startTime":1779612899851,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":6284,"timestamp":340942580171,"id":5897,"parentId":5885,"tags":{},"startTime":1779612899851,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":47071,"timestamp":340942544917,"id":5885,"parentId":5848,"tags":{},"startTime":1779612899816,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":624519,"timestamp":340941983177,"id":5848,"parentId":5806,"tags":{"name":"server"},"startTime":1779612899254,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":21610,"timestamp":340942607875,"id":5898,"parentId":5806,"tags":{},"startTime":1779612899879,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-server","duration":1089551,"timestamp":340941540714,"id":5806,"parentId":3,"tags":{"trigger":"src/app/layout.tsx"},"startTime":1779612898812,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":5760,"timestamp":340942663610,"id":5903,"parentId":5900,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779612899935,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":5725,"timestamp":340942663657,"id":5907,"parentId":5900,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779612899935,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":5664,"timestamp":340942663721,"id":5912,"parentId":5900,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779612899935,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":9587,"timestamp":340942663750,"id":5915,"parentId":5900,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612899935,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":9685,"timestamp":340942663782,"id":5918,"parentId":5900,"tags":{"request":"next-client-pages-loader?absolutePagePath=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Cnode_modules%5Cnext%5Cdist%5Cclient%5Ccomponents%5Cnot-found-error.js&page=%2F_not-found%2Fpage!"},"startTime":1779612899935,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":10832,"timestamp":340942663427,"id":5901,"parentId":5900,"tags":{"request":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\compiled\\@next\\react-refresh-utils\\dist\\runtime.js"},"startTime":1779612899934,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":11618,"timestamp":340942663699,"id":5910,"parentId":5900,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cknowledge%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612899935,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":11647,"timestamp":340942663710,"id":5911,"parentId":5900,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Ccurriculum%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612899935,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":11729,"timestamp":340942663731,"id":5913,"parentId":5900,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612899935,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":11767,"timestamp":340942663740,"id":5914,"parentId":5900,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Csession%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612899935,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":11785,"timestamp":340942663760,"id":5916,"parentId":5900,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Cprofile%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612899935,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":14217,"timestamp":340942663677,"id":5909,"parentId":5900,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cdocuments%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612899935,"traceId":"0ca0f7fe408e086a"}] +[{"name":"add-entry","duration":14675,"timestamp":340942663772,"id":5917,"parentId":5900,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5C%5BtopicId%5D%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612899935,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":14818,"timestamp":340942663647,"id":5906,"parentId":5900,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cauth%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612899935,"traceId":"0ca0f7fe408e086a"},{"name":"read-resource","duration":4238,"timestamp":340942676386,"id":5921,"parentId":5920,"tags":{},"startTime":1779612899947,"traceId":"0ca0f7fe408e086a"},{"name":"postcss-process","duration":72682,"timestamp":340942680754,"id":5923,"parentId":5922,"tags":{},"startTime":1779612899952,"traceId":"0ca0f7fe408e086a"},{"name":"postcss-loader","duration":73581,"timestamp":340942680683,"id":5922,"parentId":5920,"tags":{},"startTime":1779612899952,"traceId":"0ca0f7fe408e086a"},{"name":"css-loader","duration":19709,"timestamp":340942754475,"id":5924,"parentId":5920,"tags":{"astUsed":"true"},"startTime":1779612900026,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-css","duration":106106,"timestamp":340942676023,"id":5920,"parentId":5919,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css.webpack[javascript/auto]!=!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\build\\webpack\\loaders\\css-loader\\src\\index.js??ruleSet[1].rules[14].oneOf[12].use[2]!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\build\\webpack\\loaders\\postcss-loader\\src\\index.js??ruleSet[1].rules[14].oneOf[12].use[3]!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css","layer":null},"startTime":1779612899947,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":121504,"timestamp":340942663634,"id":5905,"parentId":5900,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Capp-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cclient-page.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cerror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Clayout-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cnot-found-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Crender-from-template-context.js%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612899935,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":129258,"timestamp":340942663586,"id":5902,"parentId":5900,"tags":{"request":"./node_modules/next/dist/client/app-next-dev.js"},"startTime":1779612899935,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":129192,"timestamp":340942663667,"id":5908,"parentId":5900,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612899935,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-css","duration":128125,"timestamp":340942669752,"id":5919,"parentId":5899,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css","layer":"app-pages-browser"},"startTime":1779612899941,"traceId":"0ca0f7fe408e086a"},{"name":"build-module","duration":50,"timestamp":340942798138,"id":5925,"parentId":5919,"tags":{},"startTime":1779612900069,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":134587,"timestamp":340942663623,"id":5904,"parentId":5900,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Cstylesheet.css%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cglobals.css%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612899935,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":165543,"timestamp":340942632699,"id":5900,"parentId":5899,"tags":{},"startTime":1779612899904,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":2406,"timestamp":340942804381,"id":5927,"parentId":5926,"tags":{},"startTime":1779612900075,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":8,"timestamp":340942806838,"id":5929,"parentId":5926,"tags":{},"startTime":1779612900078,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":223,"timestamp":340942807131,"id":5930,"parentId":5926,"tags":{},"startTime":1779612900078,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":15,"timestamp":340942807425,"id":5931,"parentId":5926,"tags":{},"startTime":1779612900078,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":9,"timestamp":340942807487,"id":5932,"parentId":5926,"tags":{},"startTime":1779612900079,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":2871,"timestamp":340942806820,"id":5928,"parentId":5926,"tags":{},"startTime":1779612900078,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":767,"timestamp":340942811247,"id":5933,"parentId":5926,"tags":{},"startTime":1779612900082,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":4449,"timestamp":340942812042,"id":5934,"parentId":5926,"tags":{},"startTime":1779612900083,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":8898,"timestamp":340942819266,"id":5935,"parentId":5926,"tags":{},"startTime":1779612900090,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":335,"timestamp":340942828160,"id":5936,"parentId":5926,"tags":{},"startTime":1779612900099,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":92,"timestamp":340942828473,"id":5937,"parentId":5926,"tags":{},"startTime":1779612900100,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":4592,"timestamp":340942828571,"id":5938,"parentId":5926,"tags":{},"startTime":1779612900100,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-generateClientManifest","duration":170,"timestamp":340942837036,"id":5940,"parentId":5899,"tags":{},"startTime":1779612900108,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-createassets","duration":288,"timestamp":340942836928,"id":5939,"parentId":5899,"tags":{},"startTime":1779612900108,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":40145,"timestamp":340942801492,"id":5926,"parentId":5899,"tags":{},"startTime":1779612900073,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":209475,"timestamp":340942632217,"id":5899,"parentId":5850,"tags":{"name":"client"},"startTime":1779612899903,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":32873,"timestamp":340942841742,"id":5941,"parentId":5850,"tags":{},"startTime":1779612900113,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-client","duration":878481,"timestamp":340941998364,"id":5850,"parentId":3,"tags":{"trigger":"src/app"},"startTime":1779612899269,"traceId":"0ca0f7fe408e086a"}] +[{"name":"client-success","duration":9,"timestamp":340942879270,"id":5942,"parentId":3,"tags":{},"startTime":1779612900150,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":9,"timestamp":340942884302,"id":5943,"parentId":3,"tags":{},"startTime":1779612900155,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":913000,"timestamp":340942003157,"id":5946,"parentId":3,"tags":{"updatedModules":[],"page":"/app/session","isPageHidden":true},"startTime":1779612900191,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":925000,"timestamp":340942004262,"id":5947,"parentId":3,"tags":{"updatedModules":[],"page":"/admin/documents","isPageHidden":true},"startTime":1779612900229,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":85911,"timestamp":340942889621,"id":5944,"tags":{"url":"/app/session?_rsc=14pfl","isTurbopack":false},"startTime":1779612900161,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":4,"timestamp":340942975590,"id":5948,"parentId":5944,"tags":{"url":"/app/session?_rsc=14pfl","memory.rss":"342921216","memory.heapUsed":"280310336","memory.heapTotal":"311799808"},"startTime":1779612900247,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":83599,"timestamp":340942894305,"id":5945,"tags":{"url":"/admin/documents?_rsc=135zp","isTurbopack":false},"startTime":1779612900165,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":4,"timestamp":340942977973,"id":5949,"parentId":5945,"tags":{"url":"/admin/documents?_rsc=135zp","memory.rss":"342921216","memory.heapUsed":"280506088","memory.heapTotal":"311799808"},"startTime":1779612900249,"traceId":"0ca0f7fe408e086a"},{"name":"handle-request","duration":219433,"timestamp":340943295547,"id":5950,"tags":{"url":"/icons/192.png","isTurbopack":false},"startTime":1779612900567,"traceId":"0ca0f7fe408e086a"},{"name":"memory-usage","duration":7,"timestamp":340943515222,"id":5951,"parentId":5950,"tags":{"url":"/icons/192.png","memory.rss":"342720512","memory.heapUsed":"280500056","memory.heapTotal":"311701504"},"startTime":1779612900786,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":20125,"timestamp":340946037109,"id":5957,"parentId":5954,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779612903308,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":20103,"timestamp":340946037189,"id":5961,"parentId":5954,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779612903308,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":20017,"timestamp":340946037284,"id":5966,"parentId":5954,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779612903308,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":26171,"timestamp":340946037343,"id":5969,"parentId":5954,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612903308,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":26315,"timestamp":340946037427,"id":5972,"parentId":5954,"tags":{"request":"next-client-pages-loader?absolutePagePath=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Cnode_modules%5Cnext%5Cdist%5Cclient%5Ccomponents%5Cnot-found-error.js&page=%2F_not-found%2Fpage!"},"startTime":1779612903308,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":28209,"timestamp":340946036873,"id":5955,"parentId":5954,"tags":{"request":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\compiled\\@next\\react-refresh-utils\\dist\\runtime.js"},"startTime":1779612903308,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":29589,"timestamp":340946037250,"id":5964,"parentId":5954,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cknowledge%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612903308,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":29633,"timestamp":340946037267,"id":5965,"parentId":5954,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Ccurriculum%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612903308,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":29664,"timestamp":340946037303,"id":5967,"parentId":5954,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612903308,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":29704,"timestamp":340946037321,"id":5968,"parentId":5954,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Csession%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612903308,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":29732,"timestamp":340946037363,"id":5970,"parentId":5954,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Cprofile%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612903308,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":33049,"timestamp":340946037231,"id":5963,"parentId":5954,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cdocuments%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612903308,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":33092,"timestamp":340946037381,"id":5971,"parentId":5954,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5C%5BtopicId%5D%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612903308,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":38439,"timestamp":340946037149,"id":5959,"parentId":5954,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Capp-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cclient-page.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cerror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Clayout-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cnot-found-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Crender-from-template-context.js%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612903308,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":38813,"timestamp":340946037172,"id":5960,"parentId":5954,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cauth%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612903308,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":38801,"timestamp":340946037206,"id":5962,"parentId":5954,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612903308,"traceId":"0ca0f7fe408e086a"},{"name":"read-resource","duration":4609,"timestamp":340946071430,"id":5975,"parentId":5974,"tags":{},"startTime":1779612903342,"traceId":"0ca0f7fe408e086a"},{"name":"postcss-process","duration":75209,"timestamp":340946076333,"id":5977,"parentId":5976,"tags":{},"startTime":1779612903347,"traceId":"0ca0f7fe408e086a"},{"name":"postcss-loader","duration":76480,"timestamp":340946076130,"id":5976,"parentId":5974,"tags":{},"startTime":1779612903347,"traceId":"0ca0f7fe408e086a"},{"name":"css-loader","duration":16695,"timestamp":340946152814,"id":5978,"parentId":5974,"tags":{"astUsed":"true"},"startTime":1779612903424,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-css","duration":100433,"timestamp":340946071091,"id":5974,"parentId":5973,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css.webpack[javascript/auto]!=!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\build\\webpack\\loaders\\css-loader\\src\\index.js??ruleSet[1].rules[14].oneOf[12].use[2]!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\build\\webpack\\loaders\\postcss-loader\\src\\index.js??ruleSet[1].rules[14].oneOf[12].use[3]!C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css","layer":null},"startTime":1779612903342,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":139926,"timestamp":340946037078,"id":5956,"parentId":5954,"tags":{"request":"./node_modules/next/dist/client/app-next-dev.js"},"startTime":1779612903308,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-css","duration":137159,"timestamp":340946058616,"id":5973,"parentId":5953,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\globals.css","layer":"app-pages-browser"},"startTime":1779612903330,"traceId":"0ca0f7fe408e086a"},{"name":"build-module","duration":61,"timestamp":340946196880,"id":5980,"parentId":5973,"tags":{},"startTime":1779612903468,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":159850,"timestamp":340946037130,"id":5958,"parentId":5954,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Cstylesheet.css%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cglobals.css%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612903308,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":171568,"timestamp":340946025446,"id":5954,"parentId":5953,"tags":{},"startTime":1779612903296,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":1977,"timestamp":340946202594,"id":5982,"parentId":5981,"tags":{},"startTime":1779612903474,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":6,"timestamp":340946204609,"id":5984,"parentId":5981,"tags":{},"startTime":1779612903476,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":111,"timestamp":340946204639,"id":5985,"parentId":5981,"tags":{},"startTime":1779612903476,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":9,"timestamp":340946204790,"id":5986,"parentId":5981,"tags":{},"startTime":1779612903476,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":7,"timestamp":340946204832,"id":5987,"parentId":5981,"tags":{},"startTime":1779612903476,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":1306,"timestamp":340946204596,"id":5983,"parentId":5981,"tags":{},"startTime":1779612903476,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":428,"timestamp":340946207050,"id":5988,"parentId":5981,"tags":{},"startTime":1779612903478,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":4815,"timestamp":340946207492,"id":5989,"parentId":5981,"tags":{},"startTime":1779612903479,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":12781,"timestamp":340946214322,"id":5990,"parentId":5981,"tags":{},"startTime":1779612903485,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":332,"timestamp":340946227101,"id":5991,"parentId":5981,"tags":{},"startTime":1779612903498,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":101,"timestamp":340946227405,"id":5992,"parentId":5981,"tags":{},"startTime":1779612903498,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":4494,"timestamp":340946227513,"id":5993,"parentId":5981,"tags":{},"startTime":1779612903499,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-generateClientManifest","duration":198,"timestamp":340946234377,"id":5995,"parentId":5953,"tags":{},"startTime":1779612903505,"traceId":"0ca0f7fe408e086a"},{"name":"NextJsBuildManifest-createassets","duration":356,"timestamp":340946234230,"id":5994,"parentId":5953,"tags":{},"startTime":1779612903505,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":39463,"timestamp":340946200796,"id":5981,"parentId":5953,"tags":{},"startTime":1779612903472,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":215912,"timestamp":340946024430,"id":5953,"parentId":5952,"tags":{"name":"client"},"startTime":1779612903295,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":69136,"timestamp":340946240408,"id":5996,"parentId":5952,"tags":{},"startTime":1779612903511,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-client","duration":297298,"timestamp":340946014061,"id":5952,"parentId":3,"tags":{"trigger":"src/app/layout.tsx.tmp.11120.11caf9cc6915"},"startTime":1779612903285,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":10,"timestamp":340946328303,"id":6000,"parentId":3,"tags":{},"startTime":1779612903599,"traceId":"0ca0f7fe408e086a"},{"name":"client-success","duration":2,"timestamp":340946328454,"id":6001,"parentId":3,"tags":{},"startTime":1779612903600,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":86000,"timestamp":340946323596,"id":6008,"parentId":3,"tags":{"updatedModules":[],"page":"/app/session","isPageHidden":true},"startTime":1779612903697,"traceId":"0ca0f7fe408e086a"},{"name":"client-hmr-latency","duration":131000,"timestamp":340946325955,"id":6009,"parentId":3,"tags":{"updatedModules":[],"page":"/admin/documents","isPageHidden":true},"startTime":1779612903758,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":249045,"timestamp":340946370326,"id":6003,"parentId":5998,"tags":{"request":"next-app-loader?name=app%2Fauth%2Fpage&page=%2Fauth%2Fpage&appPaths=%2Fauth%2Fpage&pagePath=private-next-app-dir%2Fauth%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612903641,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":249041,"timestamp":340946370373,"id":6004,"parentId":5998,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fdocuments%2Fpage&page=%2Fadmin%2Fdocuments%2Fpage&appPaths=%2Fadmin%2Fdocuments%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fdocuments%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612903641,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":249023,"timestamp":340946370409,"id":6005,"parentId":5998,"tags":{"request":"next-app-loader?name=app%2Fapp%2Fsession%2Fpage&page=%2Fapp%2Fsession%2Fpage&appPaths=%2Fapp%2Fsession%2Fpage&pagePath=private-next-app-dir%2Fapp%2Fsession%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612903641,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":248997,"timestamp":340946370445,"id":6006,"parentId":5998,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fknowledge%2Fpage&page=%2Fadmin%2Fknowledge%2Fpage&appPaths=%2Fadmin%2Fknowledge%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fknowledge%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612903641,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":248973,"timestamp":340946370479,"id":6007,"parentId":5998,"tags":{"request":"next-app-loader?name=app%2Fadmin%2Fcurriculum%2Fpage&page=%2Fadmin%2Fcurriculum%2Fpage&appPaths=%2Fadmin%2Fcurriculum%2Fpage&pagePath=private-next-app-dir%2Fadmin%2Fcurriculum%2Fpage.tsx&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612903642,"traceId":"0ca0f7fe408e086a"},{"name":"next-swc-transform","duration":14133,"timestamp":340946614887,"id":6012,"parentId":6011,"tags":{},"startTime":1779612903886,"traceId":"0ca0f7fe408e086a"},{"name":"next-swc-loader","duration":14873,"timestamp":340946614167,"id":6011,"parentId":6010,"tags":{},"startTime":1779612903885,"traceId":"0ca0f7fe408e086a"},{"name":"build-module-tsx","duration":22361,"timestamp":340946612296,"id":6010,"parentId":5997,"tags":{"name":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\src\\app\\layout.tsx","layer":"rsc"},"startTime":1779612903883,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":279389,"timestamp":340946370098,"id":6002,"parentId":5998,"tags":{"request":"next-app-loader?name=app%2F_not-found%2Fpage&page=%2F_not-found%2Fpage&appPaths=&pagePath=..%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fnot-found-error.js&appDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Csrc%5Capp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"},"startTime":1779612903641,"traceId":"0ca0f7fe408e086a"},{"name":"make","duration":718629,"timestamp":340946318499,"id":5998,"parentId":5997,"tags":{},"startTime":1779612903590,"traceId":"0ca0f7fe408e086a"},{"name":"chunk-graph","duration":5732,"timestamp":340947045847,"id":6035,"parentId":6034,"tags":{},"startTime":1779612904317,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-modules","duration":28,"timestamp":340947051670,"id":6037,"parentId":6034,"tags":{},"startTime":1779612904323,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunks","duration":15417,"timestamp":340947051749,"id":6038,"parentId":6034,"tags":{},"startTime":1779612904323,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-tree","duration":23,"timestamp":340947067273,"id":6039,"parentId":6034,"tags":{},"startTime":1779612904338,"traceId":"0ca0f7fe408e086a"},{"name":"optimize-chunk-modules","duration":17,"timestamp":340947067361,"id":6040,"parentId":6034,"tags":{},"startTime":1779612904338,"traceId":"0ca0f7fe408e086a"},{"name":"optimize","duration":17184,"timestamp":340947051642,"id":6036,"parentId":6034,"tags":{},"startTime":1779612904323,"traceId":"0ca0f7fe408e086a"},{"name":"module-hash","duration":3310,"timestamp":340947071263,"id":6041,"parentId":6034,"tags":{},"startTime":1779612904342,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation","duration":7041,"timestamp":340947074796,"id":6042,"parentId":6034,"tags":{},"startTime":1779612904346,"traceId":"0ca0f7fe408e086a"},{"name":"hash","duration":5563,"timestamp":340947085243,"id":6043,"parentId":6034,"tags":{},"startTime":1779612904356,"traceId":"0ca0f7fe408e086a"},{"name":"code-generation-jobs","duration":445,"timestamp":340947090800,"id":6044,"parentId":6034,"tags":{},"startTime":1779612904362,"traceId":"0ca0f7fe408e086a"},{"name":"module-assets","duration":179,"timestamp":340947091210,"id":6045,"parentId":6034,"tags":{},"startTime":1779612904362,"traceId":"0ca0f7fe408e086a"},{"name":"create-chunk-assets","duration":6440,"timestamp":340947091408,"id":6046,"parentId":6034,"tags":{},"startTime":1779612904362,"traceId":"0ca0f7fe408e086a"},{"name":"seal","duration":85591,"timestamp":340947043042,"id":6034,"parentId":5997,"tags":{},"startTime":1779612904314,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-compilation","duration":838698,"timestamp":340946317298,"id":5997,"parentId":5979,"tags":{"name":"server"},"startTime":1779612903588,"traceId":"0ca0f7fe408e086a"},{"name":"emit","duration":294453,"timestamp":340947156265,"id":6047,"parentId":5979,"tags":{},"startTime":1779612904427,"traceId":"0ca0f7fe408e086a"},{"name":"webpack-invalidated-server","duration":1280481,"timestamp":340946196699,"id":5979,"parentId":3,"tags":{"trigger":"src/app/layout.tsx"},"startTime":1779612903468,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":37751,"timestamp":340947601185,"id":6052,"parentId":6049,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779612904872,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":37691,"timestamp":340947601276,"id":6056,"parentId":6049,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779612904872,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":37417,"timestamp":340947601554,"id":6061,"parentId":6049,"tags":{"request":"next-flight-client-entry-loader?server=false!"},"startTime":1779612904873,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":46984,"timestamp":340947602516,"id":6064,"parentId":6049,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612904874,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":48084,"timestamp":340947602596,"id":6067,"parentId":6049,"tags":{"request":"next-client-pages-loader?absolutePagePath=C%3A%5CUsers%5CRaymondVerhoef%5CGitea%5Clearning-platform%5Capp%5Cfrontend%5Cnode_modules%5Cnext%5Cdist%5Cclient%5Ccomponents%5Cnot-found-error.js&page=%2F_not-found%2Fpage!"},"startTime":1779612904874,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":58591,"timestamp":340947598025,"id":6050,"parentId":6049,"tags":{"request":"C:\\Users\\RaymondVerhoef\\Gitea\\learning-platform\\app\\frontend\\node_modules\\next\\dist\\compiled\\@next\\react-refresh-utils\\dist\\runtime.js"},"startTime":1779612904869,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":57217,"timestamp":340947601440,"id":6059,"parentId":6049,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cknowledge%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612904872,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":57251,"timestamp":340947601479,"id":6060,"parentId":6049,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Ccurriculum%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612904873,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":57267,"timestamp":340947601585,"id":6062,"parentId":6049,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clayout.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612904873,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":56613,"timestamp":340947602306,"id":6063,"parentId":6049,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Csession%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612904873,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":56442,"timestamp":340947602548,"id":6065,"parentId":6049,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Cprofile%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612904874,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":62294,"timestamp":340947601417,"id":6058,"parentId":6049,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cadmin%5C%5Cdocuments%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612904872,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":61353,"timestamp":340947602569,"id":6066,"parentId":6049,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Capp%5C%5Clibrary%5C%5C%5BtopicId%5D%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612904874,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":62697,"timestamp":340947601255,"id":6055,"parentId":6049,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Csrc%5C%5Capp%5C%5Cauth%5C%5Cpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612904872,"traceId":"0ca0f7fe408e086a"},{"name":"read-resource","duration":17902,"timestamp":340947661058,"id":6070,"parentId":6069,"tags":{},"startTime":1779612904932,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":110372,"timestamp":340947601231,"id":6054,"parentId":6049,"tags":{"request":"next-flight-client-entry-loader?modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Capp-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cclient-page.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cerror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Clayout-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Cnot-found-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22C%3A%5C%5CUsers%5C%5CRaymondVerhoef%5C%5CGitea%5C%5Clearning-platform%5C%5Capp%5C%5Cfrontend%5C%5Cnode_modules%5C%5Cnext%5C%5Cdist%5C%5Cclient%5C%5Ccomponents%5C%5Crender-from-template-context.js%22%2C%22ids%22%3A%5B%5D%7D&server=false!"},"startTime":1779612904872,"traceId":"0ca0f7fe408e086a"},{"name":"add-entry","duration":111641,"timestamp":340947601105,"id":6051,"parentId":6049,"tags":{"request":"./node_modules/next/dist/client/app-next-dev.js"},"startTime":1779612904872,"traceId":"0ca0f7fe408e086a"}] diff --git a/app/frontend/public/favicon.svg b/app/frontend/public/favicon.svg new file mode 100644 index 0000000..fce6746 --- /dev/null +++ b/app/frontend/public/favicon.svg @@ -0,0 +1,4 @@ + diff --git a/app/frontend/public/icons/192.png b/app/frontend/public/icons/192.png new file mode 100644 index 0000000..561c434 Binary files /dev/null and b/app/frontend/public/icons/192.png differ diff --git a/app/frontend/public/icons/512.png b/app/frontend/public/icons/512.png new file mode 100644 index 0000000..0a2ace8 Binary files /dev/null and b/app/frontend/public/icons/512.png differ diff --git a/app/frontend/src/app/layout.tsx b/app/frontend/src/app/layout.tsx index 3e32157..341cfcb 100644 --- a/app/frontend/src/app/layout.tsx +++ b/app/frontend/src/app/layout.tsx @@ -6,11 +6,15 @@ export const metadata: Metadata = { title: 'Learning Platform', description: 'Employee knowledge and learning', manifest: '/manifest.json', + icons: { icon: '/favicon.svg' }, appleWebApp: { capable: true, statusBarStyle: 'default', title: 'Learning Platform', }, + other: { + 'mobile-web-app-capable': 'yes', + }, } export const viewport: Viewport = { @@ -26,7 +30,7 @@ export default function RootLayout({ children: React.ReactNode }) { return ( - +
{children} ) diff --git a/app/frontend/src/components/admin/DocumentUpload.tsx b/app/frontend/src/components/admin/DocumentUpload.tsx index a26c981..b967425 100644 --- a/app/frontend/src/components/admin/DocumentUpload.tsx +++ b/app/frontend/src/components/admin/DocumentUpload.tsx @@ -39,8 +39,18 @@ export function DocumentUpload({ onSuccess }: DocumentUploadProps) { try { // Create record in PocketBase const format = ext.slice(1) as 'pdf' | 'md' | 'txt' + + // Force explicit MIME type — Windows doesn't register .md and sends + // application/octet-stream which PocketBase rejects. + const mimeMap: Record