22 lines
17 KiB
JavaScript
22 lines
17 KiB
JavaScript
"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/dashboard/page",{
|
|
|
|
/***/ "(app-pages-browser)/./lib/services/auth.ts":
|
|
/*!******************************!*\
|
|
!*** ./lib/services/auth.ts ***!
|
|
\******************************/
|
|
/***/ ((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 */ authService: () => (/* binding */ authService)\n/* harmony export */ });\n// Auth service for handling authentication API calls\nconst API_BASE_URL = \"http://localhost:5000\" || 0;\nclass AuthService {\n async makeRequest(endpoint) {\n let options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};\n const url = \"\".concat(API_BASE_URL, \"/api/auth\").concat(endpoint);\n const response = await fetch(url, {\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n },\n ...options\n });\n if (!response.ok) {\n const errorData = await response.json().catch(()=>({\n error: 'Network error'\n }));\n throw new Error(errorData.error || \"HTTP \".concat(response.status));\n }\n return response.json();\n }\n async login(data) {\n try {\n var _response_data;\n const response = await this.makeRequest('/login', {\n method: 'POST',\n body: JSON.stringify(data)\n });\n if (response.success && ((_response_data = response.data) === null || _response_data === void 0 ? void 0 : _response_data.token)) {\n // Store token in localStorage\n localStorage.setItem('auth_token', response.data.token);\n localStorage.setItem('user_data', JSON.stringify(response.data.user));\n }\n return response;\n } catch (error) {\n return {\n success: false,\n error: error instanceof Error ? error.message : 'Login failed'\n };\n }\n }\n async register(data) {\n try {\n var _response_data;\n const response = await this.makeRequest('/register', {\n method: 'POST',\n body: JSON.stringify(data)\n });\n if (response.success && ((_response_data = response.data) === null || _response_data === void 0 ? void 0 : _response_data.token)) {\n // Store token in localStorage\n localStorage.setItem('auth_token', response.data.token);\n localStorage.setItem('user_data', JSON.stringify(response.data.user));\n }\n return response;\n } catch (error) {\n return {\n success: false,\n error: error instanceof Error ? error.message : 'Registration failed'\n };\n }\n }\n async logout() {\n localStorage.removeItem('auth_token');\n localStorage.removeItem('user_data');\n }\n getToken() {\n if (false) {}\n return localStorage.getItem('auth_token');\n }\n getUser() {\n if (false) {}\n const userData = localStorage.getItem('user_data');\n return userData ? JSON.parse(userData) : null;\n }\n isAuthenticated() {\n return this.getToken() !== null;\n }\n async checkAuthStatus() {\n const token = this.getToken();\n if (!token) return false;\n try {\n await this.makeRequest('/status', {\n headers: {\n 'Authorization': \"Bearer \".concat(token)\n }\n });\n return true;\n } catch (e) {\n // Token is invalid, clear it\n this.logout();\n return false;\n }\n }\n}\nconst authService = new AuthService();\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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SUFBSSxDQUFDTCxRQUFRLE9BQU87SUFDN0I7SUFFQSxNQUFNTSxrQkFBb0M7UUFDeEMsTUFBTWQsUUFBUSxJQUFJLENBQUNRLFFBQVE7UUFDM0IsSUFBSSxDQUFDUixPQUFPLE9BQU87UUFFbkIsSUFBSTtZQUNGLE1BQU0sSUFBSSxDQUFDckIsV0FBVyxDQUFDLFdBQVc7Z0JBQ2hDTSxTQUFTO29CQUNQLGlCQUFpQixVQUFnQixPQUFOZTtnQkFDN0I7WUFDRjtZQUNBLE9BQU87UUFDVCxFQUFFLFVBQU07WUFDTiw2QkFBNkI7WUFDN0IsSUFBSSxDQUFDTSxNQUFNO1lBQ1gsT0FBTztRQUNUO0lBQ0Y7QUFDRjtBQUVPLE1BQU1TLGNBQWMsSUFBSXJDLGNBQWMiLCJzb3VyY2VzIjpbIi9Vc2Vycy9qZXR0Y2hlbmcxMDE4L2NvZGUvZHJhbWFsaW5nLXZvY2FiLWxlYXJuaW5nL2Zyb250ZW5kL2xpYi9zZXJ2aWNlcy9hdXRoLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIEF1dGggc2VydmljZSBmb3IgaGFuZGxpbmcgYXV0aGVudGljYXRpb24gQVBJIGNhbGxzXHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIExvZ2luUmVxdWVzdCB7XHJcbiAgZW1haWw6IHN0cmluZztcclxuICBwYXNzd29yZDogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFJlZ2lzdGVyUmVxdWVzdCB7XHJcbiAgdXNlcm5hbWU6IHN0cmluZztcclxuICBlbWFpbDogc3RyaW5nO1xyXG4gIHBhc3N3b3JkOiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVXNlciB7XHJcbiAgaWQ6IHN0cmluZztcclxuICB1c2VybmFtZTogc3RyaW5nO1xyXG4gIGVtYWlsOiBzdHJpbmc7XHJcbiAgZGlzcGxheU5hbWU6IHN0cmluZyB8IG51bGw7XHJcbiAgYXZhdGFyVXJsOiBzdHJpbmcgfCBudWxsO1xyXG4gIHN1YnNjcmlwdGlvblR5cGU6IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBBdXRoUmVzcG9uc2Uge1xyXG4gIHN1Y2Nlc3M6IGJvb2xlYW47XHJcbiAgZGF0YT86IHtcclxuICAgIHRva2VuOiBzdHJpbmc7XHJcbiAgICB1c2VyOiBVc2VyO1xyXG4gIH07XHJcbiAgZXJyb3I/OiBzdHJpbmc7XHJcbn1cclxuXHJcbmNvbnN0IEFQSV9CQVNFX1VSTCA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0FQSV9VUkwgfHwgJ2h0dHA6Ly9sb2NhbGhvc3Q6NTAwMCc7XHJcblxyXG5jbGFzcyBBdXRoU2VydmljZSB7XHJcbiAgcHJpdmF0ZSBhc3luYyBtYWtlUmVxdWVzdDxUPihcclxuICAgIGVuZHBvaW50OiBzdHJpbmcsXHJcbiAgICBvcHRpb25zOiBSZXF1ZXN0SW5pdCA9IHt9XHJcbiAgKTogUHJvbWlzZTxUPiB7XHJcbiAgICBjb25zdCB1cmwgPSBgJHtBUElfQkFTRV9VUkx9L2FwaS9hdXRoJHtlbmRwb2ludH1gO1xyXG5cclxuICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2godXJsLCB7XHJcbiAgICAgIGhlYWRlcnM6IHtcclxuICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxyXG4gICAgICAgIC4uLm9wdGlvbnMuaGVhZGVycyxcclxuICAgICAgfSxcclxuICAgICAgLi4ub3B0aW9ucyxcclxuICAgIH0pO1xyXG5cclxuICAgIGlmICghcmVzcG9uc2Uub2spIHtcclxuICAgICAgY29uc3QgZXJyb3JEYXRhID0gYXdhaXQgcmVzcG9uc2UuanNvbigpLmNhdGNoKCgpID0+ICh7IGVycm9yOiAnTmV0d29yayBlcnJvcicgfSkpO1xyXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoZXJyb3JEYXRhLmVycm9yIHx8IGBIVFRQICR7cmVzcG9uc2Uuc3RhdHVzfWApO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiByZXNwb25zZS5qc29uKCk7XHJcbiAgfVxyXG5cclxuICBhc3luYyBsb2dpbihkYXRhOiBMb2dpblJlcXVlc3QpOiBQcm9taXNlPEF1dGhSZXNwb25zZT4ge1xyXG4gICAgdHJ5IHtcclxuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLm1ha2VSZXF1ZXN0PEF1dGhSZXNwb25zZT4oJy9sb2dpbicsIHtcclxuICAgICAgICBtZXRob2Q6ICdQT1NUJyxcclxuICAgICAgICBib2R5OiBKU09OLnN0cmluZ2lmeShkYXRhKSxcclxuICAgICAgfSk7XHJcblxyXG4gICAgICBpZiAocmVzcG9uc2Uuc3VjY2VzcyAmJiByZXNwb25zZS5kYXRhPy50b2tlbikge1xyXG4gICAgICAgIC8vIFN0b3JlIHRva2VuIGluIGxvY2FsU3RvcmFnZVxyXG4gICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCdhdXRoX3Rva2VuJywgcmVzcG9uc2UuZGF0YS50b2tlbik7XHJcbiAgICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ3VzZXJfZGF0YScsIEpTT04uc3RyaW5naWZ5KHJlc3BvbnNlLmRhdGEudXNlcikpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICByZXR1cm4gcmVzcG9uc2U7XHJcbiAgICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgICByZXR1cm4ge1xyXG4gICAgICAgIHN1Y2Nlc3M6IGZhbHNlLFxyXG4gICAgICAgIGVycm9yOiBlcnJvciBpbnN0YW5jZW9mIEVycm9yID8gZXJyb3IubWVzc2FnZSA6ICdMb2dpbiBmYWlsZWQnLFxyXG4gICAgICB9O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgYXN5bmMgcmVnaXN0ZXIoZGF0YTogUmVnaXN0ZXJSZXF1ZXN0KTogUHJvbWlzZTxBdXRoUmVzcG9uc2U+IHtcclxuICAgIHRyeSB7XHJcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5tYWtlUmVxdWVzdDxBdXRoUmVzcG9uc2U+KCcvcmVnaXN0ZXInLCB7XHJcbiAgICAgICAgbWV0aG9kOiAnUE9TVCcsXHJcbiAgICAgICAgYm9keTogSlNPTi5zdHJpbmdpZnkoZGF0YSksXHJcbiAgICAgIH0pO1xyXG5cclxuICAgICAgaWYgKHJlc3BvbnNlLnN1Y2Nlc3MgJiYgcmVzcG9uc2UuZGF0YT8udG9rZW4pIHtcclxuICAgICAgICAvLyBTdG9yZSB0b2tlbiBpbiBsb2NhbFN0b3JhZ2VcclxuICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgnYXV0aF90b2tlbicsIHJlc3BvbnNlLmRhdGEudG9rZW4pO1xyXG4gICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCd1c2VyX2RhdGEnLCBKU09OLnN0cmluZ2lmeShyZXNwb25zZS5kYXRhLnVzZXIpKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgcmV0dXJuIHJlc3BvbnNlO1xyXG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgICAgcmV0dXJuIHtcclxuICAgICAgICBzdWNjZXNzOiBmYWxzZSxcclxuICAgICAgICBlcnJvcjogZXJyb3IgaW5zdGFuY2VvZiBFcnJvciA/IGVycm9yLm1lc3NhZ2UgOiAnUmVnaXN0cmF0aW9uIGZhaWxlZCcsXHJcbiAgICAgIH07XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBhc3luYyBsb2dvdXQoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSgnYXV0aF90b2tlbicpO1xyXG4gICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oJ3VzZXJfZGF0YScpO1xyXG4gIH1cclxuXHJcbiAgZ2V0VG9rZW4oKTogc3RyaW5nIHwgbnVsbCB7XHJcbiAgICBpZiAodHlwZW9mIHdpbmRvdyA9PT0gJ3VuZGVmaW5lZCcpIHJldHVybiBudWxsO1xyXG4gICAgcmV0dXJuIGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdhdXRoX3Rva2VuJyk7XHJcbiAgfVxyXG5cclxuICBnZXRVc2VyKCk6IFVzZXIgfCBudWxsIHtcclxuICAgIGlmICh0eXBlb2Ygd2luZG93ID09PSAndW5kZWZpbmVkJykgcmV0dXJuIG51bGw7XHJcbiAgICBjb25zdCB1c2VyRGF0YSA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCd1c2VyX2RhdGEnKTtcclxuICAgIHJldHVybiB1c2VyRGF0YSA/IEpTT04ucGFyc2UodXNlckRhdGEpIDogbnVsbDtcclxuICB9XHJcblxyXG4gIGlzQXV0aGVudGljYXRlZCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLmdldFRva2VuKCkgIT09IG51bGw7XHJcbiAgfVxyXG5cclxuICBhc3luYyBjaGVja0F1dGhTdGF0dXMoKTogUHJvbWlzZTxib29sZWFuPiB7XHJcbiAgICBjb25zdCB0b2tlbiA9IHRoaXMuZ2V0VG9rZW4oKTtcclxuICAgIGlmICghdG9rZW4pIHJldHVybiBmYWxzZTtcclxuXHJcbiAgICB0cnkge1xyXG4gICAgICBhd2FpdCB0aGlzLm1ha2VSZXF1ZXN0KCcvc3RhdHVzJywge1xyXG4gICAgICAgIGhlYWRlcnM6IHtcclxuICAgICAgICAgICdBdXRob3JpemF0aW9uJzogYEJlYXJlciAke3Rva2VufWAsXHJcbiAgICAgICAgfSxcclxuICAgICAgfSk7XHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfSBjYXRjaCB7XHJcbiAgICAgIC8vIFRva2VuIGlzIGludmFsaWQsIGNsZWFyIGl0XHJcbiAgICAgIHRoaXMubG9nb3V0KCk7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCBjb25zdCBhdXRoU2VydmljZSA9IG5ldyBBdXRoU2VydmljZSgpOyJdLCJuYW1lcyI6WyJBUElfQkFTRV9VUkwiLCJwcm9jZXNzIiwiZW52IiwiTkVYVF9QVUJMSUNfQVBJX1VSTCIsIkF1dGhTZXJ2aWNlIiwibWFrZVJlcXVlc3QiLCJlbmRwb2ludCIsIm9wdGlvbnMiLCJ1cmwiLCJyZXNwb25zZSIsImZldGNoIiwiaGVhZGVycyIsIm9rIiwiZXJyb3JEYXRhIiwianNvbiIsImNhdGNoIiwiZXJyb3IiLCJFcnJvciIsInN0YXR1cyIsImxvZ2luIiwiZGF0YSIsIm1ldGhvZCIsImJvZHkiLCJKU09OIiwic3RyaW5naWZ5Iiwic3VjY2VzcyIsInRva2VuIiwibG9jYWxTdG9yYWdlIiwic2V0SXRlbSIsInVzZXIiLCJtZXNzYWdlIiwicmVnaXN0ZXIiLCJsb2dvdXQiLCJyZW1vdmVJdGVtIiwiZ2V0VG9rZW4iLCJnZXRJdGVtIiwiZ2V0VXNlciIsInVzZXJEYXRhIiwicGFyc2UiLCJpc0F1dGhlbnRpY2F0ZWQiLCJjaGVja0F1dGhTdGF0dXMiLCJhdXRoU2VydmljZSJdLCJpZ25vcmVMaXN0IjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./lib/services/auth.ts\n"));
|
|
|
|
/***/ })
|
|
|
|
}); |