NeahNew/.next/server/app/page.js
2026-01-01 17:53:04 +01:00

812 lines
846 KiB
JavaScript

/*
* 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/).
*/
(() => {
var exports = {};
exports.id = "app/page";
exports.ids = ["app/page"];
exports.modules = {
/***/ "(rsc)/./app/api/auth/options.ts":
/*!*********************************!*\
!*** ./app/api/auth/options.ts ***!
\*********************************/
/***/ ((__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 */ authOptions: () => (/* binding */ authOptions)\n/* harmony export */ });\n/* harmony import */ var next_auth_providers_keycloak__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! next-auth/providers/keycloak */ \"(rsc)/./node_modules/next-auth/providers/keycloak.js\");\n/* harmony import */ var jwt_decode__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! jwt-decode */ \"(rsc)/./node_modules/jwt-decode/build/esm/index.js\");\n\n\nfunction getRequiredEnvVar(name) {\n const value = process.env[name];\n if (!value) {\n throw new Error(`Missing required environment variable: ${name}`);\n }\n return value;\n}\nasync function refreshAccessToken(token) {\n try {\n const response = await fetch(`${process.env.KEYCLOAK_ISSUER}/protocol/openid-connect/token`, {\n headers: {\n \"Content-Type\": \"application/x-www-form-urlencoded\"\n },\n body: new URLSearchParams({\n client_id: process.env.KEYCLOAK_CLIENT_ID,\n client_secret: process.env.KEYCLOAK_CLIENT_SECRET,\n grant_type: \"refresh_token\",\n refresh_token: token.refreshToken || ''\n }),\n method: \"POST\"\n });\n const refreshedTokens = await response.json();\n if (!response.ok) {\n throw refreshedTokens;\n }\n return {\n ...token,\n accessToken: refreshedTokens.access_token,\n refreshToken: refreshedTokens.refresh_token ?? token.refreshToken,\n // Keep existing ID token (Keycloak doesn't return new ID token on refresh)\n idToken: token.idToken,\n accessTokenExpires: Date.now() + refreshedTokens.expires_in * 1000\n };\n } catch (error) {\n console.error(\"Error refreshing access token:\", error);\n return {\n ...token,\n error: \"RefreshAccessTokenError\"\n };\n }\n}\nconst authOptions = {\n providers: [\n (0,next_auth_providers_keycloak__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n clientId: getRequiredEnvVar(\"KEYCLOAK_CLIENT_ID\"),\n clientSecret: getRequiredEnvVar(\"KEYCLOAK_CLIENT_SECRET\"),\n issuer: getRequiredEnvVar(\"KEYCLOAK_ISSUER\"),\n authorization: {\n params: {\n scope: \"openid profile email roles\"\n }\n },\n profile (profile) {\n console.log('Keycloak profile callback:', {\n rawProfile: profile,\n rawRoles: profile.roles,\n realmAccess: profile.realm_access,\n groups: profile.groups\n });\n // Get roles from realm_access\n const roles = profile.realm_access?.roles || [];\n console.log('Profile callback raw roles:', roles);\n // Clean up roles by removing ROLE_ prefix and converting to lowercase\n const cleanRoles = roles.map((role)=>role.replace(/^ROLE_/, '').toLowerCase());\n console.log('Profile callback cleaned roles:', cleanRoles);\n return {\n id: profile.sub,\n name: profile.name ?? profile.preferred_username,\n email: profile.email,\n first_name: profile.given_name ?? '',\n last_name: profile.family_name ?? '',\n username: profile.preferred_username ?? profile.email?.split('@')[0] ?? '',\n role: cleanRoles\n };\n }\n })\n ],\n session: {\n strategy: \"jwt\",\n maxAge: 30 * 24 * 60 * 60\n },\n callbacks: {\n async jwt ({ token, account, profile }) {\n if (account && profile) {\n const keycloakProfile = profile;\n const roles = keycloakProfile.realm_access?.roles || [];\n const cleanRoles = roles.map((role)=>role.replace(/^ROLE_/, '').toLowerCase());\n token.accessToken = account.access_token ?? '';\n token.refreshToken = account.refresh_token ?? '';\n token.idToken = account.id_token ?? '';\n token.accessTokenExpires = account.expires_at ?? 0;\n token.sub = keycloakProfile.sub;\n token.role = cleanRoles;\n token.username = keycloakProfile.preferred_username ?? '';\n token.first_name = keycloakProfile.given_name ?? '';\n token.last_name = keycloakProfile.family_name ?? '';\n } else if (token.accessToken) {\n try {\n const decoded = (0,jwt_decode__WEBPACK_IMPORTED_MODULE_1__.jwtDecode)(token.accessToken);\n if (decoded.realm_access?.roles) {\n const roles = decoded.realm_access.roles;\n const cleanRoles = roles.map((role)=>role.replace(/^ROLE_/, '').toLowerCase());\n token.role = cleanRoles;\n }\n } catch (error) {\n console.error('Error decoding token:', error);\n }\n }\n if (Date.now() < token.accessTokenExpires * 1000) {\n return token;\n }\n return refreshAccessToken(token);\n },\n async session ({ session, token }) {\n if (token.error) {\n throw new Error(token.error);\n }\n const userRoles = Array.isArray(token.role) ? token.role : [];\n session.user = {\n id: token.sub ?? '',\n email: token.email ?? null,\n name: token.name ?? null,\n image: null,\n username: token.username ?? '',\n first_name: token.first_name ?? '',\n last_name: token.last_name ?? '',\n role: userRoles,\n nextcloudInitialized: false\n };\n session.accessToken = token.accessToken;\n session.idToken = token.idToken;\n return session;\n }\n },\n pages: {\n signIn: '/signin',\n error: '/signin'\n },\n debug: \"development\" === 'development'\n};\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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ZjtnQkFDRixFQUFFLE9BQU9sQixPQUFPO29CQUNkQyxRQUFRRCxLQUFLLENBQUMseUJBQXlCQTtnQkFDekM7WUFDRjtZQUVBLElBQUlILEtBQUtDLEdBQUcsS0FBSyxNQUFPRixrQkFBa0IsR0FBYyxNQUFNO2dCQUM1RCxPQUFPckI7WUFDVDtZQUVBLE9BQU9ELG1CQUFtQkM7UUFDNUI7UUFDQSxNQUFNMEQsU0FBUSxFQUFFQSxPQUFPLEVBQUUxRCxLQUFLLEVBQUU7WUFDOUIsSUFBSUEsTUFBTXlCLEtBQUssRUFBRTtnQkFDZixNQUFNLElBQUkzQixNQUFNRSxNQUFNeUIsS0FBSztZQUM3QjtZQUVBLE1BQU0yQyxZQUFZQyxNQUFNQyxPQUFPLENBQUN0RSxNQUFNNkMsSUFBSSxJQUFJN0MsTUFBTTZDLElBQUksR0FBRyxFQUFFO1lBQzdEYSxRQUFRYSxJQUFJLEdBQUc7Z0JBQ2J2QixJQUFJaEQsTUFBTWlELEdBQUcsSUFBSTtnQkFDakJFLE9BQU9uRCxNQUFNbUQsS0FBSyxJQUFJO2dCQUN0QnpELE1BQU1NLE1BQU1OLElBQUksSUFBSTtnQkFDcEI4RSxPQUFPO2dCQUNQaEIsVUFBVXhELE1BQU13RCxRQUFRLElBQUk7Z0JBQzVCSixZQUFZcEQsTUFBTW9ELFVBQVUsSUFBSTtnQkFDaENFLFdBQVd0RCxNQUFNc0QsU0FBUyxJQUFJO2dCQUM5QlQsTUFBTXVCO2dCQUNOSyxzQkFBc0I7WUFDeEI7WUFDQWYsUUFBUXhDLFdBQVcsR0FBR2xCLE1BQU1rQixXQUFXO1lBQ3ZDd0MsUUFBUXRDLE9BQU8sR0FBR3BCLE1BQU1vQixPQUFPO1lBRS9CLE9BQU9zQztRQUNUO0lBQ0Y7SUFDQWdCLE9BQU87UUFDTEMsUUFBUTtRQUNSbEQsT0FBTztJQUNUO0lBQ0FtRCxPQUFPaEYsa0JBQXlCO0FBQ2xDLEVBQUUiLCJzb3VyY2VzIjpbIi9Vc2Vycy9hbG1hL0RvY3VtZW50cy9OZWFoTmV3L2FwcC9hcGkvYXV0aC9vcHRpb25zLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBOZXh0QXV0aCwgeyBOZXh0QXV0aE9wdGlvbnMgfSBmcm9tIFwibmV4dC1hdXRoXCI7XG5pbXBvcnQgS2V5Y2xvYWtQcm92aWRlciBmcm9tIFwibmV4dC1hdXRoL3Byb3ZpZGVycy9rZXljbG9ha1wiO1xuaW1wb3J0IHsgand0RGVjb2RlIH0gZnJvbSBcImp3dC1kZWNvZGVcIjtcblxuaW50ZXJmYWNlIEtleWNsb2FrUHJvZmlsZSB7XG4gIHN1Yjogc3RyaW5nO1xuICBlbWFpbD86IHN0cmluZztcbiAgbmFtZT86IHN0cmluZztcbiAgcm9sZXM/OiBzdHJpbmdbXTtcbiAgcHJlZmVycmVkX3VzZXJuYW1lPzogc3RyaW5nO1xuICBnaXZlbl9uYW1lPzogc3RyaW5nO1xuICBmYW1pbHlfbmFtZT86IHN0cmluZztcbiAgcmVhbG1fYWNjZXNzPzoge1xuICAgIHJvbGVzOiBzdHJpbmdbXTtcbiAgfTtcbn1cblxuaW50ZXJmYWNlIERlY29kZWRUb2tlbiB7XG4gIHJlYWxtX2FjY2Vzcz86IHtcbiAgICByb2xlczogc3RyaW5nW107XG4gIH07XG4gIFtrZXk6IHN0cmluZ106IGFueTtcbn1cblxuZGVjbGFyZSBtb2R1bGUgXCJuZXh0LWF1dGhcIiB7XG4gIGludGVyZmFjZSBTZXNzaW9uIHtcbiAgICB1c2VyOiB7XG4gICAgICBpZDogc3RyaW5nO1xuICAgICAgbmFtZT86IHN0cmluZyB8IG51bGw7XG4gICAgICBlbWFpbD86IHN0cmluZyB8IG51bGw7XG4gICAgICBpbWFnZT86IHN0cmluZyB8IG51bGw7XG4gICAgICB1c2VybmFtZTogc3RyaW5nO1xuICAgICAgZmlyc3RfbmFtZTogc3RyaW5nO1xuICAgICAgbGFzdF9uYW1lOiBzdHJpbmc7XG4gICAgICByb2xlOiBzdHJpbmdbXTtcbiAgICAgIG5leHRjbG91ZEluaXRpYWxpemVkPzogYm9vbGVhbjtcbiAgICB9O1xuICAgIGFjY2Vzc1Rva2VuPzogc3RyaW5nO1xuICAgIGlkVG9rZW4/OiBzdHJpbmc7XG4gIH1cblxuICBpbnRlcmZhY2UgSldUIHtcbiAgICBzdWI/OiBzdHJpbmc7XG4gICAgYWNjZXNzVG9rZW4/OiBzdHJpbmc7XG4gICAgcmVmcmVzaFRva2VuPzogc3RyaW5nO1xuICAgIGlkVG9rZW4/OiBzdHJpbmc7XG4gICAgYWNjZXNzVG9rZW5FeHBpcmVzPzogbnVtYmVyO1xuICAgIHJvbGU/OiBzdHJpbmdbXTtcbiAgICB1c2VybmFtZT86IHN0cmluZztcbiAgICBmaXJzdF9uYW1lPzogc3RyaW5nO1xuICAgIGxhc3RfbmFtZT86IHN0cmluZztcbiAgICBlcnJvcj86IHN0cmluZztcbiAgICBlbWFpbD86IHN0cmluZyB8IG51bGw7XG4gICAgbmFtZT86IHN0cmluZyB8IG51bGw7XG4gIH1cbn1cblxuZnVuY3Rpb24gZ2V0UmVxdWlyZWRFbnZWYXIobmFtZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgY29uc3QgdmFsdWUgPSBwcm9jZXNzLmVudltuYW1lXTtcbiAgaWYgKCF2YWx1ZSkge1xuICAgIHRocm93IG5ldyBFcnJvcihgTWlzc2luZyByZXF1aXJlZCBlbnZpcm9ubWVudCB2YXJpYWJsZTogJHtuYW1lfWApO1xuICB9XG4gIHJldHVybiB2YWx1ZTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gcmVmcmVzaEFjY2Vzc1Rva2VuKHRva2VuOiB7XG4gIGFjY2Vzc1Rva2VuPzogc3RyaW5nO1xuICByZWZyZXNoVG9rZW4/OiBzdHJpbmc7XG4gIGlkVG9rZW4/OiBzdHJpbmc7XG4gIGFjY2Vzc1Rva2VuRXhwaXJlcz86IG51bWJlcjtcbiAgW2tleTogc3RyaW5nXTogYW55O1xufSkge1xuICB0cnkge1xuICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2goYCR7cHJvY2Vzcy5lbnYuS0VZQ0xPQUtfSVNTVUVSfS9wcm90b2NvbC9vcGVuaWQtY29ubmVjdC90b2tlbmAsIHtcbiAgICAgIGhlYWRlcnM6IHsgXCJDb250ZW50LVR5cGVcIjogXCJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWRcIiB9LFxuICAgICAgYm9keTogbmV3IFVSTFNlYXJjaFBhcmFtcyh7XG4gICAgICAgIGNsaWVudF9pZDogcHJvY2Vzcy5lbnYuS0VZQ0xPQUtfQ0xJRU5UX0lEISxcbiAgICAgICAgY2xpZW50X3NlY3JldDogcHJvY2Vzcy5lbnYuS0VZQ0xPQUtfQ0xJRU5UX1NFQ1JFVCEsXG4gICAgICAgIGdyYW50X3R5cGU6IFwicmVmcmVzaF90b2tlblwiLFxuICAgICAgICByZWZyZXNoX3Rva2VuOiB0b2tlbi5yZWZyZXNoVG9rZW4gfHwgJycsXG4gICAgICB9KSxcbiAgICAgIG1ldGhvZDogXCJQT1NUXCIsXG4gICAgfSk7XG5cbiAgICBjb25zdCByZWZyZXNoZWRUb2tlbnMgPSBhd2FpdCByZXNwb25zZS5qc29uKCk7XG5cbiAgICBpZiAoIXJlc3BvbnNlLm9rKSB7XG4gICAgICB0aHJvdyByZWZyZXNoZWRUb2tlbnM7XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLnRva2VuLFxuICAgICAgYWNjZXNzVG9rZW46IHJlZnJlc2hlZFRva2Vucy5hY2Nlc3NfdG9rZW4sXG4gICAgICByZWZyZXNoVG9rZW46IHJlZnJlc2hlZFRva2Vucy5yZWZyZXNoX3Rva2VuID8/IHRva2VuLnJlZnJlc2hUb2tlbixcbiAgICAgIC8vIEtlZXAgZXhpc3RpbmcgSUQgdG9rZW4gKEtleWNsb2FrIGRvZXNuJ3QgcmV0dXJuIG5ldyBJRCB0b2tlbiBvbiByZWZyZXNoKVxuICAgICAgaWRUb2tlbjogdG9rZW4uaWRUb2tlbixcbiAgICAgIGFjY2Vzc1Rva2VuRXhwaXJlczogRGF0ZS5ub3coKSArIHJlZnJlc2hlZFRva2Vucy5leHBpcmVzX2luICogMTAwMCxcbiAgICB9O1xuICB9IGNhdGNoIChlcnJvcikge1xuICAgIGNvbnNvbGUuZXJyb3IoXCJFcnJvciByZWZyZXNoaW5nIGFjY2VzcyB0b2tlbjpcIiwgZXJyb3IpO1xuICAgIHJldHVybiB7XG4gICAgICAuLi50b2tlbixcbiAgICAgIGVycm9yOiBcIlJlZnJlc2hBY2Nlc3NUb2tlbkVycm9yXCIsXG4gICAgfTtcbiAgfVxufVxuXG5leHBvcnQgY29uc3QgYXV0aE9wdGlvbnM6IE5leHRBdXRoT3B0aW9ucyA9IHtcbiAgcHJvdmlkZXJzOiBbXG4gICAgS2V5Y2xvYWtQcm92aWRlcih7XG4gICAgICBjbGllbnRJZDogZ2V0UmVxdWlyZWRFbnZWYXIoXCJLRVlDTE9BS19DTElFTlRfSURcIiksXG4gICAgICBjbGllbnRTZWNyZXQ6IGdldFJlcXVpcmVkRW52VmFyKFwiS0VZQ0xPQUtfQ0xJRU5UX1NFQ1JFVFwiKSxcbiAgICAgIGlzc3VlcjogZ2V0UmVxdWlyZWRFbnZWYXIoXCJLRVlDTE9BS19JU1NVRVJcIiksXG4gICAgICBhdXRob3JpemF0aW9uOiB7XG4gICAgICAgIHBhcmFtczoge1xuICAgICAgICAgIHNjb3BlOiBcIm9wZW5pZCBwcm9maWxlIGVtYWlsIHJvbGVzXCJcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHByb2ZpbGUocHJvZmlsZSkge1xuICAgICAgICBjb25zb2xlLmxvZygnS2V5Y2xvYWsgcHJvZmlsZSBjYWxsYmFjazonLCB7XG4gICAgICAgICAgcmF3UHJvZmlsZTogcHJvZmlsZSxcbiAgICAgICAgICByYXdSb2xlczogcHJvZmlsZS5yb2xlcyxcbiAgICAgICAgICByZWFsbUFjY2VzczogcHJvZmlsZS5yZWFsbV9hY2Nlc3MsXG4gICAgICAgICAgZ3JvdXBzOiBwcm9maWxlLmdyb3Vwc1xuICAgICAgICB9KTtcblxuICAgICAgICAvLyBHZXQgcm9sZXMgZnJvbSByZWFsbV9hY2Nlc3NcbiAgICAgICAgY29uc3Qgcm9sZXMgPSBwcm9maWxlLnJlYWxtX2FjY2Vzcz8ucm9sZXMgfHwgW107XG4gICAgICAgIGNvbnNvbGUubG9nKCdQcm9maWxlIGNhbGxiYWNrIHJhdyByb2xlczonLCByb2xlcyk7XG5cbiAgICAgICAgLy8gQ2xlYW4gdXAgcm9sZXMgYnkgcmVtb3ZpbmcgUk9MRV8gcHJlZml4IGFuZCBjb252ZXJ0aW5nIHRvIGxvd2VyY2FzZVxuICAgICAgICBjb25zdCBjbGVhblJvbGVzID0gcm9sZXMubWFwKChyb2xlOiBzdHJpbmcpID0+IFxuICAgICAgICAgIHJvbGUucmVwbGFjZSgvXlJPTEVfLywgJycpLnRvTG93ZXJDYXNlKClcbiAgICAgICAgKTtcblxuICAgICAgICBjb25zb2xlLmxvZygnUHJvZmlsZSBjYWxsYmFjayBjbGVhbmVkIHJvbGVzOicsIGNsZWFuUm9sZXMpO1xuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgaWQ6IHByb2ZpbGUuc3ViLFxuICAgICAgICAgIG5hbWU6IHByb2ZpbGUubmFtZSA/PyBwcm9maWxlLnByZWZlcnJlZF91c2VybmFtZSxcbiAgICAgICAgICBlbWFpbDogcHJvZmlsZS5lbWFpbCxcbiAgICAgICAgICBmaXJzdF9uYW1lOiBwcm9maWxlLmdpdmVuX25hbWUgPz8gJycsXG4gICAgICAgICAgbGFzdF9uYW1lOiBwcm9maWxlLmZhbWlseV9uYW1lID8/ICcnLFxuICAgICAgICAgIHVzZXJuYW1lOiBwcm9maWxlLnByZWZlcnJlZF91c2VybmFtZSA/PyBwcm9maWxlLmVtYWlsPy5zcGxpdCgnQCcpWzBdID8/ICcnLFxuICAgICAgICAgIHJvbGU6IGNsZWFuUm9sZXMsXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgfSksXG4gIF0sXG4gIHNlc3Npb246IHtcbiAgICBzdHJhdGVneTogXCJqd3RcIixcbiAgICBtYXhBZ2U6IDMwICogMjQgKiA2MCAqIDYwLCAvLyAzMCBkYXlzXG4gIH0sXG4gIGNhbGxiYWNrczoge1xuICAgIGFzeW5jIGp3dCh7IHRva2VuLCBhY2NvdW50LCBwcm9maWxlIH0pIHtcbiAgICAgIGlmIChhY2NvdW50ICYmIHByb2ZpbGUpIHtcbiAgICAgICAgY29uc3Qga2V5Y2xvYWtQcm9maWxlID0gcHJvZmlsZSBhcyBLZXljbG9ha1Byb2ZpbGU7XG4gICAgICAgIGNvbnN0IHJvbGVzID0ga2V5Y2xvYWtQcm9maWxlLnJlYWxtX2FjY2Vzcz8ucm9sZXMgfHwgW107XG4gICAgICAgIGNvbnN0IGNsZWFuUm9sZXMgPSByb2xlcy5tYXAoKHJvbGU6IHN0cmluZykgPT4gXG4gICAgICAgICAgcm9sZS5yZXBsYWNlKC9eUk9MRV8vLCAnJykudG9Mb3dlckNhc2UoKVxuICAgICAgICApO1xuXG4gICAgICAgIHRva2VuLmFjY2Vzc1Rva2VuID0gYWNjb3VudC5hY2Nlc3NfdG9rZW4gPz8gJyc7XG4gICAgICAgIHRva2VuLnJlZnJlc2hUb2tlbiA9IGFjY291bnQucmVmcmVzaF90b2tlbiA/PyAnJztcbiAgICAgICAgdG9rZW4uaWRUb2tlbiA9IGFjY291bnQuaWRfdG9rZW4gPz8gJyc7XG4gICAgICAgIHRva2VuLmFjY2Vzc1Rva2VuRXhwaXJlcyA9IGFjY291bnQuZXhwaXJlc19hdCA/PyAwO1xuICAgICAgICB0b2tlbi5zdWIgPSBrZXljbG9ha1Byb2ZpbGUuc3ViO1xuICAgICAgICB0b2tlbi5yb2xlID0gY2xlYW5Sb2xlcztcbiAgICAgICAgdG9rZW4udXNlcm5hbWUgPSBrZXljbG9ha1Byb2ZpbGUucHJlZmVycmVkX3VzZXJuYW1lID8/ICcnO1xuICAgICAgICB0b2tlbi5maXJzdF9uYW1lID0ga2V5Y2xvYWtQcm9maWxlLmdpdmVuX25hbWUgPz8gJyc7XG4gICAgICAgIHRva2VuLmxhc3RfbmFtZSA9IGtleWNsb2FrUHJvZmlsZS5mYW1pbHlfbmFtZSA/PyAnJztcbiAgICAgIH0gZWxzZSBpZiAodG9rZW4uYWNjZXNzVG9rZW4pIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBjb25zdCBkZWNvZGVkID0gand0RGVjb2RlPERlY29kZWRUb2tlbj4odG9rZW4uYWNjZXNzVG9rZW4pO1xuICAgICAgICAgIGlmIChkZWNvZGVkLnJlYWxtX2FjY2Vzcz8ucm9sZXMpIHtcbiAgICAgICAgICAgIGNvbnN0IHJvbGVzID0gZGVjb2RlZC5yZWFsbV9hY2Nlc3Mucm9sZXM7XG4gICAgICAgICAgICBjb25zdCBjbGVhblJvbGVzID0gcm9sZXMubWFwKChyb2xlOiBzdHJpbmcpID0+IFxuICAgICAgICAgICAgICByb2xlLnJlcGxhY2UoL15ST0xFXy8sICcnKS50b0xvd2VyQ2FzZSgpXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgdG9rZW4ucm9sZSA9IGNsZWFuUm9sZXM7XG4gICAgICAgICAgfVxuICAgICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGRlY29kaW5nIHRva2VuOicsIGVycm9yKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAoRGF0ZS5ub3coKSA8ICh0b2tlbi5hY2Nlc3NUb2tlbkV4cGlyZXMgYXMgbnVtYmVyKSAqIDEwMDApIHtcbiAgICAgICAgcmV0dXJuIHRva2VuO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gcmVmcmVzaEFjY2Vzc1Rva2VuKHRva2VuKTtcbiAgICB9LFxuICAgIGFzeW5jIHNlc3Npb24oeyBzZXNzaW9uLCB0b2tlbiB9KSB7XG4gICAgICBpZiAodG9rZW4uZXJyb3IpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKHRva2VuLmVycm9yKTtcbiAgICAgIH1cblxuICAgICAgY29uc3QgdXNlclJvbGVzID0gQXJyYXkuaXNBcnJheSh0b2tlbi5yb2xlKSA/IHRva2VuLnJvbGUgOiBbXTtcbiAgICAgIHNlc3Npb24udXNlciA9IHtcbiAgICAgICAgaWQ6IHRva2VuLnN1YiA/PyAnJyxcbiAgICAgICAgZW1haWw6IHRva2VuLmVtYWlsID8/IG51bGwsXG4gICAgICAgIG5hbWU6IHRva2VuLm5hbWUgPz8gbnVsbCxcbiAgICAgICAgaW1hZ2U6IG51bGwsXG4gICAgICAgIHVzZXJuYW1lOiB0b2tlbi51c2VybmFtZSA/PyAnJyxcbiAgICAgICAgZmlyc3RfbmFtZTogdG9rZW4uZmlyc3RfbmFtZSA/PyAnJyxcbiAgICAgICAgbGFzdF9uYW1lOiB0b2tlbi5sYXN0X25hbWUgPz8gJycsXG4gICAgICAgIHJvbGU6IHVzZXJSb2xlcyxcbiAgICAgICAgbmV4dGNsb3VkSW5pdGlhbGl6ZWQ6IGZhbHNlLFxuICAgICAgfTtcbiAgICAgIHNlc3Npb24uYWNjZXNzVG9rZW4gPSB0b2tlbi5hY2Nlc3NUb2tlbjtcbiAgICAgIHNlc3Npb24uaWRUb2tlbiA9IHRva2VuLmlkVG9rZW47XG5cbiAgICAgIHJldHVybiBzZXNzaW9uO1xuICAgIH1cbiAgfSxcbiAgcGFnZXM6IHtcbiAgICBzaWduSW46ICcvc2lnbmluJyxcbiAgICBlcnJvcjogJy9zaWduaW4nLFxuICB9LFxuICBkZWJ1ZzogcHJvY2Vzcy5lbnYuTk9ERV9FTlYgPT09ICdkZXZlbG9wbWVudCcsXG59O1xuXG4vLyBKV1QgaW50ZXJmYWNlIGlzIGRlY2xhcmVkIGluIHRoZSBtb2R1bGUgZGVjbGFyYXRpb24gYWJvdmVcblxuaW50ZXJmYWNlIFByb2ZpbGUge1xuICBzdWI/OiBzdHJpbmc7XG4gIGVtYWlsPzogc3RyaW5nO1xuICBuYW1lPzogc3RyaW5nO1xuICByb2xlcz86IHN0cmluZ1tdO1xufSAiXSwibmFtZXMiOlsiS2V5Y2xvYWtQcm92aWRlciIsImp3dERlY29kZSIsImdldFJlcXVpcmVkRW52VmFyIiwibmFtZSIsInZhbHVlIiwicHJvY2VzcyIsImVudiIsIkVycm9yIiwicmVmcmVzaEFjY2Vzc1Rva2VuIiwidG9rZW4iLCJyZXNwb25zZSIsImZldGNoIiwiS0VZQ0xPQUtfSVNTVUVSIiwiaGVhZGVycyIsImJvZHkiLCJVUkxTZWFyY2hQYXJhbXMiLCJjbGllbnRfaWQiLCJLRVlDTE9BS19DTElFTlRfSUQiLCJjbGllbnRfc2VjcmV0IiwiS0VZQ0xPQUtfQ0xJRU5UX1NFQ1JFVCIsImdyYW50X3R5cGUiLCJyZWZyZXNoX3Rva2VuIiwicmVmcmVzaFRva2VuIiwibWV0aG9kIiwicmVmcmVzaGVkVG9rZW5zIiwianNvbiIsIm9rIiwiYWNjZXNzVG9rZW4iLCJhY2Nlc3NfdG9rZW4iLCJpZFRva2VuIiwiYWNjZXNzVG9rZW5FeHBpcmVzIiwiRGF0ZSIsIm5vdyIsImV4cGlyZXNfaW4iLCJlcnJvciIsImNvbnNvbGUiLCJhdXRoT3B0aW9ucyIsInByb3ZpZGVycyIsImNsaWVudElkIiwiY2xpZW50U2VjcmV0IiwiaXNzdWVyIiwiYXV0aG9yaXphdGlvbiIsInBhcmFtcyIsInNjb3BlIiwicHJvZmlsZSIsImxvZyIsInJhd1Byb2ZpbGUiLCJyYXdSb2xlcyIsInJvbGVzIiwicmVhbG1BY2Nlc3MiLCJyZWFsbV9hY2Nlc3MiLCJncm91cHMiLCJjbGVhblJvbGVzIiwibWFwIiwicm9sZSIsInJlcGxhY2UiLCJ0b0xvd2VyQ2FzZSIsImlkIiwic3ViIiwicHJlZmVycmVkX3VzZXJuYW1lIiwiZW1haWwiLCJmaXJzdF9uYW1lIiwiZ2l2ZW5fbmFtZSIsImxhc3RfbmFtZSIsImZhbWlseV9uYW1lIiwidXNlcm5hbWUiLCJzcGxpdCIsInNlc3Npb24iLCJzdHJhdGVneSIsIm1heEFnZSIsImNhbGxiYWNrcyIsImp3dCIsImFjY291bnQiLCJrZXljbG9ha1Byb2ZpbGUiLCJpZF90b2tlbiIsImV4cGlyZXNfYXQiLCJkZWNvZGVkIiwidXNlclJvbGVzIiwiQXJyYXkiLCJpc0FycmF5IiwidXNlciIsImltYWdlIiwibmV4dGNsb3VkSW5pdGlhbGl6ZWQiLCJwYWdlcyIsInNpZ25JbiIsImRlYnVnIl0sImlnbm9yZUxpc3QiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(rsc)/./app/api/auth/options.ts\n");
/***/ }),
/***/ "(rsc)/./app/globals.css":
/*!*************************!*\
!*** ./app/globals.css ***!
\*************************/
/***/ ((__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\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (\"e6d1710ebeca\");\nif (false) {}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9hcHAvZ2xvYmFscy5jc3MiLCJtYXBwaW5ncyI6Ijs7OztBQUFBLGlFQUFlLGNBQWM7QUFDN0IsSUFBSSxLQUFVLEVBQUUsRUFBdUIiLCJzb3VyY2VzIjpbIi9Vc2Vycy9hbG1hL0RvY3VtZW50cy9OZWFoTmV3L2FwcC9nbG9iYWxzLmNzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCBcImU2ZDE3MTBlYmVjYVwiXG5pZiAobW9kdWxlLmhvdCkgeyBtb2R1bGUuaG90LmFjY2VwdCgpIH1cbiJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(rsc)/./app/globals.css\n");
/***/ }),
/***/ "(rsc)/./app/layout.tsx":
/*!************************!*\
!*** ./app/layout.tsx ***!
\************************/
/***/ ((__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 */ });\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-dev-runtime */ \"(rsc)/./node_modules/next/dist/server/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 next_font_google_target_css_path_app_layout_tsx_import_Inter_arguments_subsets_latin_variableName_inter___WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! next/font/google/target.css?{\"path\":\"app/layout.tsx\",\"import\":\"Inter\",\"arguments\":[{\"subsets\":[\"latin\"]}],\"variableName\":\"inter\"} */ \"(rsc)/./node_modules/next/font/google/target.css?{\\\"path\\\":\\\"app/layout.tsx\\\",\\\"import\\\":\\\"Inter\\\",\\\"arguments\\\":[{\\\"subsets\\\":[\\\"latin\\\"]}],\\\"variableName\\\":\\\"inter\\\"}\");\n/* harmony import */ var next_font_google_target_css_path_app_layout_tsx_import_Inter_arguments_subsets_latin_variableName_inter___WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(next_font_google_target_css_path_app_layout_tsx_import_Inter_arguments_subsets_latin_variableName_inter___WEBPACK_IMPORTED_MODULE_8__);\n/* harmony import */ var _globals_css__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./globals.css */ \"(rsc)/./app/globals.css\");\n/* harmony import */ var next_headers__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! next/headers */ \"(rsc)/./node_modules/next/dist/api/headers.js\");\n/* harmony import */ var next_auth_next__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! next-auth/next */ \"(rsc)/./node_modules/next-auth/next/index.js\");\n/* harmony import */ var _app_api_auth_options__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @/app/api/auth/options */ \"(rsc)/./app/api/auth/options.ts\");\n/* harmony import */ var _components_providers__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/components/providers */ \"(rsc)/./components/providers.tsx\");\n/* harmony import */ var _components_layout_layout_wrapper__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @/components/layout/layout-wrapper */ \"(rsc)/./components/layout/layout-wrapper.tsx\");\n/* harmony import */ var _lib_redis__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @/lib/redis */ \"(rsc)/./lib/redis.ts\");\n\n\n\n\n\n\n\n\n\n// Warm up Redis connection during app initialization\n(0,_lib_redis__WEBPACK_IMPORTED_MODULE_7__.warmupRedisCache)().catch(console.error);\nasync function RootLayout({ children }) {\n const session = await (0,next_auth_next__WEBPACK_IMPORTED_MODULE_3__.getServerSession)(_app_api_auth_options__WEBPACK_IMPORTED_MODULE_4__.authOptions);\n const headersList = await (0,next_headers__WEBPACK_IMPORTED_MODULE_2__.headers)();\n const pathname = headersList.get(\"x-pathname\") || \"\";\n const isSignInPage = pathname === \"/signin\";\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"html\", {\n lang: \"fr\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"head\", {\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"script\", {\n dangerouslySetInnerHTML: {\n __html: `\n // Disable React DevTools in production\n if (typeof window !== 'undefined' && typeof window.__REACT_DEVTOOLS_GLOBAL_HOOK__ === 'object') {\n window.__REACT_DEVTOOLS_GLOBAL_HOOK__.inject = function() {};\n }\n `\n }\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/app/layout.tsx\",\n lineNumber: 29,\n columnNumber: 9\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/app/layout.tsx\",\n lineNumber: 28,\n columnNumber: 7\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"body\", {\n className: (next_font_google_target_css_path_app_layout_tsx_import_Inter_arguments_subsets_latin_variableName_inter___WEBPACK_IMPORTED_MODULE_8___default().className),\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_providers__WEBPACK_IMPORTED_MODULE_5__.Providers, {\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_layout_layout_wrapper__WEBPACK_IMPORTED_MODULE_6__.LayoutWrapper, {\n isSignInPage: isSignInPage,\n isAuthenticated: !!session,\n children: children\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/app/layout.tsx\",\n lineNumber: 40,\n columnNumber: 11\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/app/layout.tsx\",\n lineNumber: 39,\n columnNumber: 9\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/app/layout.tsx\",\n lineNumber: 38,\n columnNumber: 7\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/app/layout.tsx\",\n lineNumber: 27,\n columnNumber: 5\n }, this);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9hcHAvbGF5b3V0LnRzeCIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBVU1BO0FBUmlCO0FBQ2dCO0FBQ1c7QUFDRztBQUNGO0FBQ2dCO0FBQ3BCO0FBSS9DLHFEQUFxRDtBQUNyRE0sNERBQWdCQSxHQUFHQyxLQUFLLENBQUNDLFFBQVFDLEtBQUs7QUFFdkIsZUFBZUMsV0FBVyxFQUN2Q0MsUUFBUSxFQUdUO0lBQ0MsTUFBTUMsVUFBVSxNQUFNVixnRUFBZ0JBLENBQUNDLDhEQUFXQTtJQUNsRCxNQUFNVSxjQUFjLE1BQU1aLHFEQUFPQTtJQUNqQyxNQUFNYSxXQUFXRCxZQUFZRSxHQUFHLENBQUMsaUJBQWlCO0lBQ2xELE1BQU1DLGVBQWVGLGFBQWE7SUFFbEMscUJBQ0UsOERBQUNHO1FBQUtDLE1BQUs7OzBCQUNULDhEQUFDQzswQkFDQyw0RUFBQ0M7b0JBQU9DLHlCQUF5Qjt3QkFDL0JDLFFBQVEsQ0FBQzs7Ozs7VUFLVCxDQUFDO29CQUNIOzs7Ozs7Ozs7OzswQkFFRiw4REFBQ0M7Z0JBQUtDLFdBQVd4QiwySkFBZTswQkFDOUIsNEVBQUNJLDREQUFTQTs4QkFDUiw0RUFBQ0MsNEVBQWFBO3dCQUNaVyxjQUFjQTt3QkFDZFMsaUJBQWlCLENBQUMsQ0FBQ2I7a0NBRWxCRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQU1iIiwic291cmNlcyI6WyIvVXNlcnMvYWxtYS9Eb2N1bWVudHMvTmVhaE5ldy9hcHAvbGF5b3V0LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IE1ldGFkYXRhIH0gZnJvbSBcIm5leHRcIjtcbmltcG9ydCB7IEludGVyIH0gZnJvbSBcIm5leHQvZm9udC9nb29nbGVcIjtcbmltcG9ydCBcIi4vZ2xvYmFscy5jc3NcIjtcbmltcG9ydCB7IGhlYWRlcnMgfSBmcm9tIFwibmV4dC9oZWFkZXJzXCI7XG5pbXBvcnQgeyBnZXRTZXJ2ZXJTZXNzaW9uIH0gZnJvbSBcIm5leHQtYXV0aC9uZXh0XCI7XG5pbXBvcnQgeyBhdXRoT3B0aW9ucyB9IGZyb20gXCJAL2FwcC9hcGkvYXV0aC9vcHRpb25zXCI7XG5pbXBvcnQgeyBQcm92aWRlcnMgfSBmcm9tIFwiQC9jb21wb25lbnRzL3Byb3ZpZGVyc1wiO1xuaW1wb3J0IHsgTGF5b3V0V3JhcHBlciB9IGZyb20gXCJAL2NvbXBvbmVudHMvbGF5b3V0L2xheW91dC13cmFwcGVyXCI7XG5pbXBvcnQgeyB3YXJtdXBSZWRpc0NhY2hlIH0gZnJvbSAnQC9saWIvcmVkaXMnO1xuXG5jb25zdCBpbnRlciA9IEludGVyKHsgc3Vic2V0czogW1wibGF0aW5cIl0gfSk7XG5cbi8vIFdhcm0gdXAgUmVkaXMgY29ubmVjdGlvbiBkdXJpbmcgYXBwIGluaXRpYWxpemF0aW9uXG53YXJtdXBSZWRpc0NhY2hlKCkuY2F0Y2goY29uc29sZS5lcnJvcik7XG5cbmV4cG9ydCBkZWZhdWx0IGFzeW5jIGZ1bmN0aW9uIFJvb3RMYXlvdXQoe1xuICBjaGlsZHJlbixcbn06IHtcbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZTtcbn0pIHtcbiAgY29uc3Qgc2Vzc2lvbiA9IGF3YWl0IGdldFNlcnZlclNlc3Npb24oYXV0aE9wdGlvbnMpO1xuICBjb25zdCBoZWFkZXJzTGlzdCA9IGF3YWl0IGhlYWRlcnMoKTtcbiAgY29uc3QgcGF0aG5hbWUgPSBoZWFkZXJzTGlzdC5nZXQoXCJ4LXBhdGhuYW1lXCIpIHx8IFwiXCI7XG4gIGNvbnN0IGlzU2lnbkluUGFnZSA9IHBhdGhuYW1lID09PSBcIi9zaWduaW5cIjtcblxuICByZXR1cm4gKFxuICAgIDxodG1sIGxhbmc9XCJmclwiPlxuICAgICAgPGhlYWQ+XG4gICAgICAgIDxzY3JpcHQgZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUw9e3tcbiAgICAgICAgICBfX2h0bWw6IGBcbiAgICAgICAgICAgIC8vIERpc2FibGUgUmVhY3QgRGV2VG9vbHMgaW4gcHJvZHVjdGlvblxuICAgICAgICAgICAgaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmIHR5cGVvZiB3aW5kb3cuX19SRUFDVF9ERVZUT09MU19HTE9CQUxfSE9PS19fID09PSAnb2JqZWN0Jykge1xuICAgICAgICAgICAgICB3aW5kb3cuX19SRUFDVF9ERVZUT09MU19HTE9CQUxfSE9PS19fLmluamVjdCA9IGZ1bmN0aW9uKCkge307XG4gICAgICAgICAgICB9XG4gICAgICAgICAgYFxuICAgICAgICB9fSAvPlxuICAgICAgPC9oZWFkPlxuICAgICAgPGJvZHkgY2xhc3NOYW1lPXtpbnRlci5jbGFzc05hbWV9PlxuICAgICAgICA8UHJvdmlkZXJzPlxuICAgICAgICAgIDxMYXlvdXRXcmFwcGVyIFxuICAgICAgICAgICAgaXNTaWduSW5QYWdlPXtpc1NpZ25JblBhZ2V9IFxuICAgICAgICAgICAgaXNBdXRoZW50aWNhdGVkPXshIXNlc3Npb259XG4gICAgICAgICAgPlxuICAgICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICAgIDwvTGF5b3V0V3JhcHBlcj5cbiAgICAgICAgPC9Qcm92aWRlcnM+XG4gICAgICA8L2JvZHk+XG4gICAgPC9odG1sPlxuICApO1xufVxuIl0sIm5hbWVzIjpbImludGVyIiwiaGVhZGVycyIsImdldFNlcnZlclNlc3Npb24iLCJhdXRoT3B0aW9ucyIsIlByb3ZpZGVycyIsIkxheW91dFdyYXBwZXIiLCJ3YXJtdXBSZWRpc0NhY2hlIiwiY2F0Y2giLCJjb25zb2xlIiwiZXJyb3IiLCJSb290TGF5b3V0IiwiY2hpbGRyZW4iLCJzZXNzaW9uIiwiaGVhZGVyc0xpc3QiLCJwYXRobmFtZSIsImdldCIsImlzU2lnbkluUGFnZSIsImh0bWwiLCJsYW5nIiwiaGVhZCIsInNjcmlwdCIsImRhbmdlcm91c2x5U2V0SW5uZXJIVE1MIiwiX19odG1sIiwiYm9keSIsImNsYXNzTmFtZSIsImlzQXV0aGVudGljYXRlZCJdLCJpZ25vcmVMaXN0IjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(rsc)/./app/layout.tsx\n");
/***/ }),
/***/ "(rsc)/./app/page.tsx":
/*!**********************!*\
!*** ./app/page.tsx ***!
\**********************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react_server_dom_webpack_server_edge__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react-server-dom-webpack/server.edge */ "(rsc)/./node_modules/next/dist/server/route-modules/app-page/vendored/rsc/react-server-dom-webpack-server-edge.js");
/* harmony import */ var react_server_dom_webpack_server_edge__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_server_dom_webpack_server_edge__WEBPACK_IMPORTED_MODULE_0__);
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ((0,react_server_dom_webpack_server_edge__WEBPACK_IMPORTED_MODULE_0__.registerClientReference)(
function() { throw new Error("Attempted to call the default export of \"/Users/alma/Documents/NeahNew/app/page.tsx\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component."); },
"/Users/alma/Documents/NeahNew/app/page.tsx",
"default",
));
/***/ }),
/***/ "(rsc)/./components/layout/layout-wrapper.tsx":
/*!**********************************************!*\
!*** ./components/layout/layout-wrapper.tsx ***!
\**********************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ LayoutWrapper: () => (/* binding */ LayoutWrapper)
/* harmony export */ });
/* harmony import */ var react_server_dom_webpack_server_edge__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react-server-dom-webpack/server.edge */ "(rsc)/./node_modules/next/dist/server/route-modules/app-page/vendored/rsc/react-server-dom-webpack-server-edge.js");
/* harmony import */ var react_server_dom_webpack_server_edge__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_server_dom_webpack_server_edge__WEBPACK_IMPORTED_MODULE_0__);
const LayoutWrapper = (0,react_server_dom_webpack_server_edge__WEBPACK_IMPORTED_MODULE_0__.registerClientReference)(
function() { throw new Error("Attempted to call LayoutWrapper() from the server but LayoutWrapper is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component."); },
"/Users/alma/Documents/NeahNew/components/layout/layout-wrapper.tsx",
"LayoutWrapper",
);
/***/ }),
/***/ "(rsc)/./components/providers.tsx":
/*!**********************************!*\
!*** ./components/providers.tsx ***!
\**********************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ Providers: () => (/* binding */ Providers)
/* harmony export */ });
/* harmony import */ var react_server_dom_webpack_server_edge__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react-server-dom-webpack/server.edge */ "(rsc)/./node_modules/next/dist/server/route-modules/app-page/vendored/rsc/react-server-dom-webpack-server-edge.js");
/* harmony import */ var react_server_dom_webpack_server_edge__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_server_dom_webpack_server_edge__WEBPACK_IMPORTED_MODULE_0__);
const Providers = (0,react_server_dom_webpack_server_edge__WEBPACK_IMPORTED_MODULE_0__.registerClientReference)(
function() { throw new Error("Attempted to call Providers() from the server but Providers is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component."); },
"/Users/alma/Documents/NeahNew/components/providers.tsx",
"Providers",
);
/***/ }),
/***/ "(rsc)/./lib/redis.ts":
/*!**********************!*\
!*** ./lib/redis.ts ***!
\**********************/
/***/ ((__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 */ KEYS: () => (/* binding */ KEYS),\n/* harmony export */ TTL: () => (/* binding */ TTL),\n/* harmony export */ cacheCalendarData: () => (/* binding */ cacheCalendarData),\n/* harmony export */ cacheEmailContent: () => (/* binding */ cacheEmailContent),\n/* harmony export */ cacheEmailCredentials: () => (/* binding */ cacheEmailCredentials),\n/* harmony export */ cacheEmailList: () => (/* binding */ cacheEmailList),\n/* harmony export */ cacheImapSession: () => (/* binding */ cacheImapSession),\n/* harmony export */ cacheMessagesData: () => (/* binding */ cacheMessagesData),\n/* harmony export */ cacheNewsData: () => (/* binding */ cacheNewsData),\n/* harmony export */ cacheTasksData: () => (/* binding */ cacheTasksData),\n/* harmony export */ closeRedisConnection: () => (/* binding */ closeRedisConnection),\n/* harmony export */ decryptData: () => (/* binding */ decryptData),\n/* harmony export */ encryptData: () => (/* binding */ encryptData),\n/* harmony export */ getCachedCalendarData: () => (/* binding */ getCachedCalendarData),\n/* harmony export */ getCachedEmailContent: () => (/* binding */ getCachedEmailContent),\n/* harmony export */ getCachedEmailCredentials: () => (/* binding */ getCachedEmailCredentials),\n/* harmony export */ getCachedEmailList: () => (/* binding */ getCachedEmailList),\n/* harmony export */ getCachedImapSession: () => (/* binding */ getCachedImapSession),\n/* harmony export */ getCachedMessagesData: () => (/* binding */ getCachedMessagesData),\n/* harmony export */ getCachedNewsData: () => (/* binding */ getCachedNewsData),\n/* harmony export */ getCachedTasksData: () => (/* binding */ getCachedTasksData),\n/* harmony export */ getEmailCredentials: () => (/* binding */ getEmailCredentials),\n/* harmony export */ getRedisClient: () => (/* binding */ getRedisClient),\n/* harmony export */ getRedisStatus: () => (/* binding */ getRedisStatus),\n/* harmony export */ invalidateCalendarCache: () => (/* binding */ invalidateCalendarCache),\n/* harmony export */ invalidateEmailContentCache: () => (/* binding */ invalidateEmailContentCache),\n/* harmony export */ invalidateFolderCache: () => (/* binding */ invalidateFolderCache),\n/* harmony export */ invalidateMessagesCache: () => (/* binding */ invalidateMessagesCache),\n/* harmony export */ invalidateNewsCache: () => (/* binding */ invalidateNewsCache),\n/* harmony export */ invalidateTasksCache: () => (/* binding */ invalidateTasksCache),\n/* harmony export */ invalidateUserEmailCache: () => (/* binding */ invalidateUserEmailCache),\n/* harmony export */ warmupRedisCache: () => (/* binding */ warmupRedisCache)\n/* harmony export */ });\n/* harmony import */ var ioredis__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ioredis */ \"(rsc)/./node_modules/ioredis/built/index.js\");\n/* harmony import */ var ioredis__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(ioredis__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var crypto_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! crypto-js */ \"(rsc)/./node_modules/crypto-js/index.js\");\n/* harmony import */ var crypto_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(crypto_js__WEBPACK_IMPORTED_MODULE_1__);\n\n\n// Initialize Redis client\nlet redisClient = null;\nlet isConnecting = false;\nlet connectionAttempts = 0;\nconst MAX_RECONNECT_ATTEMPTS = 5;\n/**\n * Get a Redis client instance (singleton pattern) with improved connection management\n */ function getRedisClient() {\n if (redisClient && redisClient.status === 'ready') {\n return redisClient;\n }\n if (isConnecting) {\n // If we're already trying to connect, return the existing client\n // This prevents multiple simultaneous connection attempts\n if (redisClient) return redisClient;\n // This is a fallback in case we're connecting but don't have a client yet\n console.warn('Redis connection in progress, creating temporary client');\n }\n if (!redisClient) {\n isConnecting = true;\n connectionAttempts = 0;\n // Set Redis connection parameters from environment variables only\n const redisOptions = {\n host: process.env.REDIS_HOST,\n port: process.env.REDIS_PORT ? parseInt(process.env.REDIS_PORT) : undefined,\n password: process.env.REDIS_PASSWORD,\n retryStrategy: (times)=>{\n connectionAttempts = times;\n if (times > MAX_RECONNECT_ATTEMPTS) {\n console.error(`Redis connection failed after ${times} attempts, giving up`);\n return null; // Stop trying to reconnect\n }\n const delay = Math.min(times * 100, 5000);\n console.log(`Redis reconnect attempt ${times}, retrying in ${delay}ms`);\n return delay;\n },\n maxRetriesPerRequest: 5,\n enableOfflineQueue: true,\n connectTimeout: 10000,\n disconnectTimeout: 2000,\n keepAlive: 10000,\n keyPrefix: '' // No prefix to keep keys clean\n };\n console.log('Connecting to Redis using environment variables');\n redisClient = new (ioredis__WEBPACK_IMPORTED_MODULE_0___default())(redisOptions);\n redisClient.on('error', (err)=>{\n console.error('Redis connection error:', err);\n // Only set to null if we've exceeded max attempts\n if (connectionAttempts > MAX_RECONNECT_ATTEMPTS) {\n console.error('Redis connection failed permanently, will create new client on next request');\n redisClient = null;\n isConnecting = false;\n }\n });\n redisClient.on('connect', ()=>{\n console.log('Successfully connected to Redis');\n isConnecting = false;\n connectionAttempts = 0;\n });\n redisClient.on('reconnecting', ()=>{\n console.log('Reconnecting to Redis...');\n isConnecting = true;\n });\n redisClient.on('ready', ()=>{\n console.log('Redis connection warmed up');\n isConnecting = false;\n });\n redisClient.on('end', ()=>{\n console.log('Redis connection ended');\n // Don't set to null here - let the error handler decide\n });\n }\n return redisClient;\n}\n/**\n * Close Redis connection (useful for serverless environments)\n */ async function closeRedisConnection() {\n if (redisClient) {\n await redisClient.quit();\n redisClient = null;\n }\n}\n// Encryption key from environment variable or fallback\nconst getEncryptionKey = ()=>{\n return process.env.REDIS_ENCRYPTION_KEY || 'default-encryption-key-change-in-production';\n};\n/**\n * Encrypt sensitive data before storing in Redis\n */ function encryptData(data) {\n return crypto_js__WEBPACK_IMPORTED_MODULE_1___default().AES.encrypt(data, getEncryptionKey()).toString();\n}\n/**\n * Decrypt sensitive data retrieved from Redis\n */ function decryptData(encryptedData) {\n const bytes = crypto_js__WEBPACK_IMPORTED_MODULE_1___default().AES.decrypt(encryptedData, getEncryptionKey());\n return bytes.toString((crypto_js__WEBPACK_IMPORTED_MODULE_1___default().enc).Utf8);\n}\n// Cache key definitions\nconst KEYS = {\n CREDENTIALS: (userId, accountId)=>`email:credentials:${userId}:${accountId}`,\n SESSION: (userId)=>`email:session:${userId}`,\n EMAIL_LIST: (userId, accountId, folder, page, perPage)=>`email:list:${userId}:${accountId}:${folder}:${page}:${perPage}`,\n EMAIL_CONTENT: (userId, accountId, emailId)=>`email:content:${userId}:${accountId}:${emailId}`,\n // New widget cache keys\n CALENDAR: (userId)=>`widget:calendar:${userId}`,\n NEWS: (limit = '100')=>`widget:news:${limit}`,\n TASKS: (userId)=>`widget:tasks:${userId}`,\n MESSAGES: (userId)=>`widget:messages:${userId}`\n};\n// TTL constants in seconds\nconst TTL = {\n CREDENTIALS: 60 * 60 * 24,\n SESSION: 60 * 60 * 4,\n EMAIL_LIST: 60 * 5,\n EMAIL_CONTENT: 60 * 15,\n // New widget cache TTLs\n CALENDAR: 60 * 10,\n NEWS: 60 * 15,\n TASKS: 60 * 10,\n MESSAGES: 60 * 2 // 2 minutes for messages (more frequent updates)\n};\n/**\n * Cache email credentials in Redis\n */ async function cacheEmailCredentials(userId, accountId, credentials) {\n const redis = getRedisClient();\n const key = KEYS.CREDENTIALS(userId, accountId);\n // Validate credentials before caching\n if (!credentials.email || !credentials.host || !credentials.password && !credentials.useOAuth) {\n console.error(`Cannot cache incomplete credentials for user ${userId}`);\n return;\n }\n try {\n console.log(`Caching credentials for user ${userId}`);\n // Create a copy without the password to store\n const secureCredentials = {\n email: credentials.email,\n host: credentials.host,\n port: credentials.port,\n secure: credentials.secure ?? true,\n // Include the extended fields\n ...credentials.smtp_host && {\n smtp_host: credentials.smtp_host\n },\n ...credentials.smtp_port && {\n smtp_port: credentials.smtp_port\n },\n ...credentials.smtp_secure !== undefined && {\n smtp_secure: credentials.smtp_secure\n },\n ...credentials.display_name && {\n display_name: credentials.display_name\n },\n ...credentials.color && {\n color: credentials.color\n },\n // Include OAuth fields\n ...credentials.useOAuth !== undefined && {\n useOAuth: credentials.useOAuth\n },\n ...credentials.accessToken && {\n accessToken: credentials.accessToken\n },\n ...credentials.refreshToken && {\n refreshToken: credentials.refreshToken\n },\n ...credentials.tokenExpiry && {\n tokenExpiry: credentials.tokenExpiry\n }\n };\n // Encrypt password if provided\n if (credentials.password) {\n try {\n const encrypted = encryptData(credentials.password);\n console.log(`Successfully encrypted password for user ${userId}`);\n secureCredentials.encryptedPassword = encrypted;\n } catch (encryptError) {\n console.error(`Failed to encrypt password for user ${userId}:`, encryptError);\n // Continue anyway since we might have OAuth tokens\n }\n }\n await redis.set(key, JSON.stringify(secureCredentials), 'EX', TTL.CREDENTIALS);\n console.log(`Credentials cached for user ${userId}`);\n } catch (error) {\n console.error(`Error caching credentials for user ${userId}:`, error);\n }\n}\n/**\n * Get email credentials from Redis\n */ async function getEmailCredentials(userId, accountId) {\n const redis = getRedisClient();\n const key = KEYS.CREDENTIALS(userId, accountId);\n try {\n const credStr = await redis.get(key);\n if (!credStr) {\n return null;\n }\n const creds = JSON.parse(credStr);\n let password;\n // Handle OAuth accounts (they might not have a password)\n if (creds.encryptedPassword) {\n try {\n // Decrypt the password\n password = decryptData(creds.encryptedPassword);\n } catch (decryptError) {\n console.error(`Failed to decrypt password for user ${userId}:`, decryptError);\n // For OAuth accounts, we can continue without a password\n if (!creds.useOAuth) {\n return null;\n }\n }\n }\n // Return the full credentials with decrypted password if available\n const result = {\n email: creds.email,\n host: creds.host,\n port: creds.port,\n secure: creds.secure ?? true,\n ...password && {\n password\n },\n ...creds.smtp_host && {\n smtp_host: creds.smtp_host\n },\n ...creds.smtp_port && {\n smtp_port: creds.smtp_port\n },\n ...creds.smtp_secure !== undefined && {\n smtp_secure: creds.smtp_secure\n },\n ...creds.display_name && {\n display_name: creds.display_name\n },\n ...creds.color && {\n color: creds.color\n },\n // Include OAuth fields\n ...creds.useOAuth !== undefined && {\n useOAuth: creds.useOAuth\n },\n ...creds.accessToken && {\n accessToken: creds.accessToken\n },\n ...creds.refreshToken && {\n refreshToken: creds.refreshToken\n },\n ...creds.tokenExpiry && {\n tokenExpiry: creds.tokenExpiry\n }\n };\n return result;\n } catch (error) {\n console.error(`Error getting credentials for user ${userId}:`, error);\n return null;\n }\n}\n/**\n * Cache IMAP session data for quick reconnection\n */ async function cacheImapSession(userId, sessionData) {\n const redis = getRedisClient();\n const key = KEYS.SESSION(userId);\n // Always update the lastActive timestamp\n sessionData.lastActive = Date.now();\n await redis.set(key, JSON.stringify(sessionData), 'EX', TTL.SESSION);\n}\n/**\n * Get cached IMAP session data\n */ async function getCachedImapSession(userId) {\n const redis = getRedisClient();\n const key = KEYS.SESSION(userId);\n const cachedData = await redis.get(key);\n if (!cachedData) return null;\n return JSON.parse(cachedData);\n}\n/**\n * Cache email list in Redis\n */ async function cacheEmailList(userId, accountId, folder, page, perPage, data) {\n const redis = getRedisClient();\n const key = KEYS.EMAIL_LIST(userId, accountId, folder, page, perPage);\n await redis.set(key, JSON.stringify(data), 'EX', TTL.EMAIL_LIST);\n}\n/**\n * Get cached email list from Redis\n */ async function getCachedEmailList(userId, accountId, folder, page, perPage) {\n const redis = getRedisClient();\n const key = KEYS.EMAIL_LIST(userId, accountId, folder, page, perPage);\n const cachedData = await redis.get(key);\n if (!cachedData) return null;\n return JSON.parse(cachedData);\n}\n/**\n * Cache email content in Redis\n */ async function cacheEmailContent(userId, accountId, emailId, data) {\n const redis = getRedisClient();\n const key = KEYS.EMAIL_CONTENT(userId, accountId, emailId);\n await redis.set(key, JSON.stringify(data), 'EX', TTL.EMAIL_CONTENT);\n}\n/**\n * Get cached email content from Redis\n */ async function getCachedEmailContent(userId, accountId, emailId) {\n const redis = getRedisClient();\n const key = KEYS.EMAIL_CONTENT(userId, accountId, emailId);\n const cachedData = await redis.get(key);\n if (!cachedData) return null;\n return JSON.parse(cachedData);\n}\n/**\n * Invalidate all email caches for a folder\n */ async function invalidateFolderCache(userId, accountId, folder) {\n const redis = getRedisClient();\n const pattern = `email:list:${userId}:${accountId}:${folder}:*`;\n // Use SCAN to find and delete keys matching the pattern\n let cursor = '0';\n do {\n const [nextCursor, keys] = await redis.scan(cursor, 'MATCH', pattern, 'COUNT', 100);\n cursor = nextCursor;\n if (keys.length > 0) {\n await redis.del(...keys);\n }\n }while (cursor !== '0');\n}\n/**\n * Invalidate email content cache\n */ async function invalidateEmailContentCache(userId, accountId, emailId) {\n const redis = getRedisClient();\n const key = KEYS.EMAIL_CONTENT(userId, accountId, emailId);\n await redis.del(key);\n}\n/**\n * Warm up Redis connection to avoid cold starts\n */ async function warmupRedisCache() {\n try {\n // Ping Redis to establish connection early\n const redis = getRedisClient();\n await redis.ping();\n console.log('Redis connection warmed up');\n return true;\n } catch (error) {\n console.error('Error warming up Redis:', error);\n return false;\n }\n}\n/**\n * Get Redis connection status\n */ async function getRedisStatus() {\n try {\n const redis = getRedisClient();\n const pong = await redis.ping();\n return {\n status: 'connected',\n ping: pong\n };\n } catch (error) {\n return {\n status: 'error',\n error: error instanceof Error ? error.message : String(error)\n };\n }\n}\n/**\n * Invalidate all user email caches (email lists and content)\n */ async function invalidateUserEmailCache(userId) {\n const redis = getRedisClient();\n // Patterns to delete\n const patterns = [\n `email:list:${userId}:*`,\n `email:content:${userId}:*`\n ];\n for (const pattern of patterns){\n let cursor = '0';\n do {\n const [nextCursor, keys] = await redis.scan(cursor, 'MATCH', pattern, 'COUNT', 100);\n cursor = nextCursor;\n if (keys.length > 0) {\n await redis.del(...keys);\n }\n }while (cursor !== '0');\n }\n}\n/**\n * Get cached email credentials from Redis\n * @deprecated Use getEmailCredentials instead\n */ async function getCachedEmailCredentials(userId, accountId) {\n return getEmailCredentials(userId, accountId);\n}\n/**\n * Cache calendar data for a user\n */ async function cacheCalendarData(userId, data) {\n const redis = getRedisClient();\n const key = KEYS.CALENDAR(userId);\n try {\n await redis.set(key, JSON.stringify(data), 'EX', TTL.CALENDAR);\n console.log(`Calendar data cached for user ${userId}`);\n } catch (error) {\n console.error(`Error caching calendar data for user ${userId}:`, error);\n }\n}\n/**\n * Get cached calendar data for a user\n */ async function getCachedCalendarData(userId) {\n const redis = getRedisClient();\n const key = KEYS.CALENDAR(userId);\n try {\n const cachedData = await redis.get(key);\n if (!cachedData) {\n return null;\n }\n return JSON.parse(cachedData);\n } catch (error) {\n console.error(`Error getting cached calendar data for user ${userId}:`, error);\n return null;\n }\n}\n/**\n * Invalidate calendar cache for a user\n */ async function invalidateCalendarCache(userId) {\n const redis = getRedisClient();\n const key = KEYS.CALENDAR(userId);\n try {\n await redis.del(key);\n console.log(`Calendar cache invalidated for user ${userId}`);\n } catch (error) {\n console.error(`Error invalidating calendar cache for user ${userId}:`, error);\n }\n}\n/**\n * Cache news data (global, not user-specific)\n */ async function cacheNewsData(data, limit = '100') {\n const redis = getRedisClient();\n const key = KEYS.NEWS(limit);\n try {\n await redis.set(key, JSON.stringify(data), 'EX', TTL.NEWS);\n console.log(`News data cached successfully (${data.length} articles, limit=${limit})`);\n } catch (error) {\n console.error('Error caching news data:', error);\n }\n}\n/**\n * Get cached news data\n */ async function getCachedNewsData(limit = '100') {\n const redis = getRedisClient();\n const key = KEYS.NEWS(limit);\n try {\n const cachedData = await redis.get(key);\n if (!cachedData) {\n return null;\n }\n const parsedData = JSON.parse(cachedData);\n console.log(`Retrieved ${parsedData.length} articles from cache with limit=${limit}`);\n return parsedData;\n } catch (error) {\n console.error('Error getting cached news data:', error);\n return null;\n }\n}\n/**\n * Invalidate news cache\n */ async function invalidateNewsCache(limit) {\n const redis = getRedisClient();\n try {\n if (limit) {\n // Invalidate specific limit cache\n const key = KEYS.NEWS(limit);\n await redis.del(key);\n console.log(`News cache invalidated for limit=${limit}`);\n } else {\n // Try to invalidate for some common limits\n const limits = [\n '5',\n '50',\n '100',\n '200'\n ];\n for (const lim of limits){\n const key = KEYS.NEWS(lim);\n await redis.del(key);\n }\n console.log('All news caches invalidated');\n }\n } catch (error) {\n console.error('Error invalidating news cache:', error);\n }\n}\n/**\n * Cache tasks data for a user\n */ async function cacheTasksData(userId, data) {\n const redis = getRedisClient();\n const key = KEYS.TASKS(userId);\n try {\n await redis.set(key, JSON.stringify(data), 'EX', TTL.TASKS);\n console.log(`Tasks data cached for user ${userId}`);\n } catch (error) {\n console.error(`Error caching tasks data for user ${userId}:`, error);\n }\n}\n/**\n * Get cached tasks data for a user\n */ async function getCachedTasksData(userId) {\n const redis = getRedisClient();\n const key = KEYS.TASKS(userId);\n try {\n const cachedData = await redis.get(key);\n if (!cachedData) {\n return null;\n }\n return JSON.parse(cachedData);\n } catch (error) {\n console.error(`Error getting cached tasks data for user ${userId}:`, error);\n return null;\n }\n}\n/**\n * Invalidate tasks cache for a user\n */ async function invalidateTasksCache(userId) {\n const redis = getRedisClient();\n const key = KEYS.TASKS(userId);\n try {\n await redis.del(key);\n console.log(`Tasks cache invalidated for user ${userId}`);\n } catch (error) {\n console.error(`Error invalidating tasks cache for user ${userId}:`, error);\n }\n}\n/**\n * Cache messages data for a user\n */ async function cacheMessagesData(userId, data) {\n const redis = getRedisClient();\n const key = KEYS.MESSAGES(userId);\n try {\n await redis.set(key, JSON.stringify(data), 'EX', TTL.MESSAGES);\n console.log(`Messages data cached for user ${userId}`);\n } catch (error) {\n console.error(`Error caching messages data for user ${userId}:`, error);\n }\n}\n/**\n * Get cached messages data for a user\n */ async function getCachedMessagesData(userId) {\n const redis = getRedisClient();\n const key = KEYS.MESSAGES(userId);\n try {\n const cachedData = await redis.get(key);\n if (!cachedData) {\n return null;\n }\n return JSON.parse(cachedData);\n } catch (error) {\n console.error(`Error getting cached messages data for user ${userId}:`, error);\n return null;\n }\n}\n/**\n * Invalidate messages cache for a user\n */ async function invalidateMessagesCache(userId) {\n const redis = getRedisClient();\n const key = KEYS.MESSAGES(userId);\n try {\n await redis.del(key);\n console.log(`Messages cache invalidated for user ${userId}`);\n } catch (error) {\n console.error(`Error invalidating messages cache for user ${userId}:`, error);\n }\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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QUFFLE9BQU85QixPQUFPO1FBQ2RmLFFBQVFlLEtBQUssQ0FBQyxDQUFDLDJDQUEyQyxFQUFFOEIsT0FBTyxDQUFDLENBQUMsRUFBRTlCO0lBQ3pFO0FBQ0YiLCJzb3VyY2VzIjpbIi9Vc2Vycy9hbG1hL0RvY3VtZW50cy9OZWFoTmV3L2xpYi9yZWRpcy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVkaXMgZnJvbSAnaW9yZWRpcyc7XG5pbXBvcnQgQ3J5cHRvSlMgZnJvbSAnY3J5cHRvLWpzJztcblxuLy8gSW5pdGlhbGl6ZSBSZWRpcyBjbGllbnRcbmxldCByZWRpc0NsaWVudDogUmVkaXMgfCBudWxsID0gbnVsbDtcbmxldCBpc0Nvbm5lY3RpbmcgPSBmYWxzZTtcbmxldCBjb25uZWN0aW9uQXR0ZW1wdHMgPSAwO1xuY29uc3QgTUFYX1JFQ09OTkVDVF9BVFRFTVBUUyA9IDU7XG5cbi8qKlxuICogR2V0IGEgUmVkaXMgY2xpZW50IGluc3RhbmNlIChzaW5nbGV0b24gcGF0dGVybikgd2l0aCBpbXByb3ZlZCBjb25uZWN0aW9uIG1hbmFnZW1lbnRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFJlZGlzQ2xpZW50KCk6IFJlZGlzIHtcbiAgaWYgKHJlZGlzQ2xpZW50ICYmIHJlZGlzQ2xpZW50LnN0YXR1cyA9PT0gJ3JlYWR5Jykge1xuICAgIHJldHVybiByZWRpc0NsaWVudDtcbiAgfVxuICBcbiAgaWYgKGlzQ29ubmVjdGluZykge1xuICAgIC8vIElmIHdlJ3JlIGFscmVhZHkgdHJ5aW5nIHRvIGNvbm5lY3QsIHJldHVybiB0aGUgZXhpc3RpbmcgY2xpZW50XG4gICAgLy8gVGhpcyBwcmV2ZW50cyBtdWx0aXBsZSBzaW11bHRhbmVvdXMgY29ubmVjdGlvbiBhdHRlbXB0c1xuICAgIGlmIChyZWRpc0NsaWVudCkgcmV0dXJuIHJlZGlzQ2xpZW50O1xuICAgIFxuICAgIC8vIFRoaXMgaXMgYSBmYWxsYmFjayBpbiBjYXNlIHdlJ3JlIGNvbm5lY3RpbmcgYnV0IGRvbid0IGhhdmUgYSBjbGllbnQgeWV0XG4gICAgY29uc29sZS53YXJuKCdSZWRpcyBjb25uZWN0aW9uIGluIHByb2dyZXNzLCBjcmVhdGluZyB0ZW1wb3JhcnkgY2xpZW50Jyk7XG4gIH1cbiAgXG4gIGlmICghcmVkaXNDbGllbnQpIHtcbiAgICBpc0Nvbm5lY3RpbmcgPSB0cnVlO1xuICAgIGNvbm5lY3Rpb25BdHRlbXB0cyA9IDA7XG4gICAgXG4gICAgLy8gU2V0IFJlZGlzIGNvbm5lY3Rpb24gcGFyYW1ldGVycyBmcm9tIGVudmlyb25tZW50IHZhcmlhYmxlcyBvbmx5XG4gICAgY29uc3QgcmVkaXNPcHRpb25zID0ge1xuICAgICAgaG9zdDogcHJvY2Vzcy5lbnYuUkVESVNfSE9TVCxcbiAgICAgIHBvcnQ6IHByb2Nlc3MuZW52LlJFRElTX1BPUlQgPyBwYXJzZUludChwcm9jZXNzLmVudi5SRURJU19QT1JUKSA6IHVuZGVmaW5lZCxcbiAgICAgIHBhc3N3b3JkOiBwcm9jZXNzLmVudi5SRURJU19QQVNTV09SRCxcbiAgICAgIHJldHJ5U3RyYXRlZ3k6ICh0aW1lczogbnVtYmVyKSA9PiB7XG4gICAgICAgIGNvbm5lY3Rpb25BdHRlbXB0cyA9IHRpbWVzO1xuICAgICAgICBpZiAodGltZXMgPiBNQVhfUkVDT05ORUNUX0FUVEVNUFRTKSB7XG4gICAgICAgICAgY29uc29sZS5lcnJvcihgUmVkaXMgY29ubmVjdGlvbiBmYWlsZWQgYWZ0ZXIgJHt0aW1lc30gYXR0ZW1wdHMsIGdpdmluZyB1cGApO1xuICAgICAgICAgIHJldHVybiBudWxsOyAvLyBTdG9wIHRyeWluZyB0byByZWNvbm5lY3RcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBkZWxheSA9IE1hdGgubWluKHRpbWVzICogMTAwLCA1MDAwKTtcbiAgICAgICAgY29uc29sZS5sb2coYFJlZGlzIHJlY29ubmVjdCBhdHRlbXB0ICR7dGltZXN9LCByZXRyeWluZyBpbiAke2RlbGF5fW1zYCk7XG4gICAgICAgIHJldHVybiBkZWxheTtcbiAgICAgIH0sXG4gICAgICBtYXhSZXRyaWVzUGVyUmVxdWVzdDogNSxcbiAgICAgIGVuYWJsZU9mZmxpbmVRdWV1ZTogdHJ1ZSxcbiAgICAgIGNvbm5lY3RUaW1lb3V0OiAxMDAwMCwgLy8gMTAgc2Vjb25kc1xuICAgICAgZGlzY29ubmVjdFRpbWVvdXQ6IDIwMDAsIC8vIDIgc2Vjb25kc1xuICAgICAga2VlcEFsaXZlOiAxMDAwMCwgLy8gMTAgc2Vjb25kc1xuICAgICAga2V5UHJlZml4OiAnJyAvLyBObyBwcmVmaXggdG8ga2VlcCBrZXlzIGNsZWFuXG4gICAgfTtcbiAgICBcbiAgICBjb25zb2xlLmxvZygnQ29ubmVjdGluZyB0byBSZWRpcyB1c2luZyBlbnZpcm9ubWVudCB2YXJpYWJsZXMnKTtcbiAgICByZWRpc0NsaWVudCA9IG5ldyBSZWRpcyhyZWRpc09wdGlvbnMpO1xuICAgIFxuICAgIHJlZGlzQ2xpZW50Lm9uKCdlcnJvcicsIChlcnIpID0+IHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ1JlZGlzIGNvbm5lY3Rpb24gZXJyb3I6JywgZXJyKTtcbiAgICAgIFxuICAgICAgLy8gT25seSBzZXQgdG8gbnVsbCBpZiB3ZSd2ZSBleGNlZWRlZCBtYXggYXR0ZW1wdHNcbiAgICAgIGlmIChjb25uZWN0aW9uQXR0ZW1wdHMgPiBNQVhfUkVDT05ORUNUX0FUVEVNUFRTKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ1JlZGlzIGNvbm5lY3Rpb24gZmFpbGVkIHBlcm1hbmVudGx5LCB3aWxsIGNyZWF0ZSBuZXcgY2xpZW50IG9uIG5leHQgcmVxdWVzdCcpO1xuICAgICAgICByZWRpc0NsaWVudCA9IG51bGw7XG4gICAgICAgIGlzQ29ubmVjdGluZyA9IGZhbHNlO1xuICAgICAgfVxuICAgIH0pO1xuICAgIFxuICAgIHJlZGlzQ2xpZW50Lm9uKCdjb25uZWN0JywgKCkgPT4ge1xuICAgICAgY29uc29sZS5sb2coJ1N1Y2Nlc3NmdWxseSBjb25uZWN0ZWQgdG8gUmVkaXMnKTtcbiAgICAgIGlzQ29ubmVjdGluZyA9IGZhbHNlO1xuICAgICAgY29ubmVjdGlvbkF0dGVtcHRzID0gMDtcbiAgICB9KTtcbiAgICBcbiAgICByZWRpc0NsaWVudC5vbigncmVjb25uZWN0aW5nJywgKCkgPT4ge1xuICAgICAgY29uc29sZS5sb2coJ1JlY29ubmVjdGluZyB0byBSZWRpcy4uLicpO1xuICAgICAgaXNDb25uZWN0aW5nID0gdHJ1ZTtcbiAgICB9KTtcbiAgICBcbiAgICByZWRpc0NsaWVudC5vbigncmVhZHknLCAoKSA9PiB7XG4gICAgICBjb25zb2xlLmxvZygnUmVkaXMgY29ubmVjdGlvbiB3YXJtZWQgdXAnKTtcbiAgICAgIGlzQ29ubmVjdGluZyA9IGZhbHNlO1xuICAgIH0pO1xuICAgIFxuICAgIHJlZGlzQ2xpZW50Lm9uKCdlbmQnLCAoKSA9PiB7XG4gICAgICBjb25zb2xlLmxvZygnUmVkaXMgY29ubmVjdGlvbiBlbmRlZCcpO1xuICAgICAgLy8gRG9uJ3Qgc2V0IHRvIG51bGwgaGVyZSAtIGxldCB0aGUgZXJyb3IgaGFuZGxlciBkZWNpZGVcbiAgICB9KTtcbiAgfVxuICBcbiAgcmV0dXJuIHJlZGlzQ2xpZW50O1xufVxuXG4vKipcbiAqIENsb3NlIFJlZGlzIGNvbm5lY3Rpb24gKHVzZWZ1bCBmb3Igc2VydmVybGVzcyBlbnZpcm9ubWVudHMpXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBjbG9zZVJlZGlzQ29ubmVjdGlvbigpOiBQcm9taXNlPHZvaWQ+IHtcbiAgaWYgKHJlZGlzQ2xpZW50KSB7XG4gICAgYXdhaXQgcmVkaXNDbGllbnQucXVpdCgpO1xuICAgIHJlZGlzQ2xpZW50ID0gbnVsbDtcbiAgfVxufVxuXG4vLyBFbmNyeXB0aW9uIGtleSBmcm9tIGVudmlyb25tZW50IHZhcmlhYmxlIG9yIGZhbGxiYWNrXG5jb25zdCBnZXRFbmNyeXB0aW9uS2V5ID0gKCkgPT4ge1xuICByZXR1cm4gcHJvY2Vzcy5lbnYuUkVESVNfRU5DUllQVElPTl9LRVkgfHwgJ2RlZmF1bHQtZW5jcnlwdGlvbi1rZXktY2hhbmdlLWluLXByb2R1Y3Rpb24nO1xufTtcblxuLyoqXG4gKiBFbmNyeXB0IHNlbnNpdGl2ZSBkYXRhIGJlZm9yZSBzdG9yaW5nIGluIFJlZGlzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBlbmNyeXB0RGF0YShkYXRhOiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gQ3J5cHRvSlMuQUVTLmVuY3J5cHQoZGF0YSwgZ2V0RW5jcnlwdGlvbktleSgpKS50b1N0cmluZygpO1xufVxuXG4vKipcbiAqIERlY3J5cHQgc2Vuc2l0aXZlIGRhdGEgcmV0cmlldmVkIGZyb20gUmVkaXNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGRlY3J5cHREYXRhKGVuY3J5cHRlZERhdGE6IHN0cmluZyk6IHN0cmluZyB7XG4gIGNvbnN0IGJ5dGVzID0gQ3J5cHRvSlMuQUVTLmRlY3J5cHQoZW5jcnlwdGVkRGF0YSwgZ2V0RW5jcnlwdGlvbktleSgpKTtcbiAgcmV0dXJuIGJ5dGVzLnRvU3RyaW5nKENyeXB0b0pTLmVuYy5VdGY4KTtcbn1cblxuLy8gQ2FjaGUga2V5IGRlZmluaXRpb25zXG5leHBvcnQgY29uc3QgS0VZUyA9IHtcbiAgQ1JFREVOVElBTFM6ICh1c2VySWQ6IHN0cmluZywgYWNjb3VudElkOiBzdHJpbmcpID0+IGBlbWFpbDpjcmVkZW50aWFsczoke3VzZXJJZH06JHthY2NvdW50SWR9YCxcbiAgU0VTU0lPTjogKHVzZXJJZDogc3RyaW5nKSA9PiBgZW1haWw6c2Vzc2lvbjoke3VzZXJJZH1gLFxuICBFTUFJTF9MSVNUOiAodXNlcklkOiBzdHJpbmcsIGFjY291bnRJZDogc3RyaW5nLCBmb2xkZXI6IHN0cmluZywgcGFnZTogbnVtYmVyLCBwZXJQYWdlOiBudW1iZXIpID0+IFxuICAgIGBlbWFpbDpsaXN0OiR7dXNlcklkfToke2FjY291bnRJZH06JHtmb2xkZXJ9OiR7cGFnZX06JHtwZXJQYWdlfWAsXG4gIEVNQUlMX0NPTlRFTlQ6ICh1c2VySWQ6IHN0cmluZywgYWNjb3VudElkOiBzdHJpbmcsIGVtYWlsSWQ6IHN0cmluZykgPT4gXG4gICAgYGVtYWlsOmNvbnRlbnQ6JHt1c2VySWR9OiR7YWNjb3VudElkfToke2VtYWlsSWR9YCxcbiAgLy8gTmV3IHdpZGdldCBjYWNoZSBrZXlzXG4gIENBTEVOREFSOiAodXNlcklkOiBzdHJpbmcpID0+IGB3aWRnZXQ6Y2FsZW5kYXI6JHt1c2VySWR9YCxcbiAgTkVXUzogKGxpbWl0ID0gJzEwMCcpID0+IGB3aWRnZXQ6bmV3czoke2xpbWl0fWAsICAvLyBJbmNsdWRlIGxpbWl0IGluIGNhY2hlIGtleVxuICBUQVNLUzogKHVzZXJJZDogc3RyaW5nKSA9PiBgd2lkZ2V0OnRhc2tzOiR7dXNlcklkfWAsXG4gIE1FU1NBR0VTOiAodXNlcklkOiBzdHJpbmcpID0+IGB3aWRnZXQ6bWVzc2FnZXM6JHt1c2VySWR9YFxufTtcblxuLy8gVFRMIGNvbnN0YW50cyBpbiBzZWNvbmRzXG5leHBvcnQgY29uc3QgVFRMID0ge1xuICBDUkVERU5USUFMUzogNjAgKiA2MCAqIDI0LCAvLyAyNCBob3Vyc1xuICBTRVNTSU9OOiA2MCAqIDYwICogNCwgICAgICAvLyA0IGhvdXJzIChpbmNyZWFzZWQgZnJvbSAzMCBtaW51dGVzKVxuICBFTUFJTF9MSVNUOiA2MCAqIDUsICAgICAgICAvLyA1IG1pbnV0ZXNcbiAgRU1BSUxfQ09OVEVOVDogNjAgKiAxNSwgICAgLy8gMTUgbWludXRlc1xuICAvLyBOZXcgd2lkZ2V0IGNhY2hlIFRUTHNcbiAgQ0FMRU5EQVI6IDYwICogMTAsICAgICAgICAgLy8gMTAgbWludXRlcyBmb3IgY2FsZW5kYXIgZXZlbnRzXG4gIE5FV1M6IDYwICogMTUsICAgICAgICAgICAgIC8vIDE1IG1pbnV0ZXMgZm9yIG5ld3NcbiAgVEFTS1M6IDYwICogMTAsICAgICAgICAgICAgLy8gMTAgbWludXRlcyBmb3IgdGFza3NcbiAgTUVTU0FHRVM6IDYwICogMiAgICAgICAgICAgLy8gMiBtaW51dGVzIGZvciBtZXNzYWdlcyAobW9yZSBmcmVxdWVudCB1cGRhdGVzKVxufTtcblxuaW50ZXJmYWNlIEVtYWlsQ3JlZGVudGlhbHMge1xuICBlbWFpbDogc3RyaW5nO1xuICBwYXNzd29yZD86IHN0cmluZztcbiAgaG9zdDogc3RyaW5nO1xuICBwb3J0OiBudW1iZXI7XG4gIHNlY3VyZT86IGJvb2xlYW47XG4gIGVuY3J5cHRlZFBhc3N3b3JkPzogc3RyaW5nO1xuICBzbXRwX2hvc3Q/OiBzdHJpbmc7XG4gIHNtdHBfcG9ydD86IG51bWJlcjtcbiAgc210cF9zZWN1cmU/OiBib29sZWFuO1xuICBkaXNwbGF5X25hbWU/OiBzdHJpbmc7XG4gIGNvbG9yPzogc3RyaW5nO1xuICB1c2VPQXV0aD86IGJvb2xlYW47XG4gIGFjY2Vzc1Rva2VuPzogc3RyaW5nO1xuICByZWZyZXNoVG9rZW4/OiBzdHJpbmc7XG4gIHRva2VuRXhwaXJ5PzogbnVtYmVyO1xufVxuXG5pbnRlcmZhY2UgSW1hcFNlc3Npb25EYXRhIHtcbiAgY29ubmVjdGlvbklkPzogc3RyaW5nO1xuICBsYXN0QWN0aXZlOiBudW1iZXI7XG4gIG1haWxib3hlcz86IHN0cmluZ1tdO1xuICBsYXN0VmlzaXQ/OiBudW1iZXI7XG4gIGRlZmF1bHRBY2NvdW50SWQ/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ2FjaGUgZW1haWwgY3JlZGVudGlhbHMgaW4gUmVkaXNcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGNhY2hlRW1haWxDcmVkZW50aWFscyhcbiAgdXNlcklkOiBzdHJpbmcsXG4gIGFjY291bnRJZDogc3RyaW5nLFxuICBjcmVkZW50aWFsczogRW1haWxDcmVkZW50aWFsc1xuKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlZGlzID0gZ2V0UmVkaXNDbGllbnQoKTtcbiAgY29uc3Qga2V5ID0gS0VZUy5DUkVERU5USUFMUyh1c2VySWQsIGFjY291bnRJZCk7XG4gIFxuICAvLyBWYWxpZGF0ZSBjcmVkZW50aWFscyBiZWZvcmUgY2FjaGluZ1xuICBpZiAoIWNyZWRlbnRpYWxzLmVtYWlsIHx8ICFjcmVkZW50aWFscy5ob3N0IHx8ICghY3JlZGVudGlhbHMucGFzc3dvcmQgJiYgIWNyZWRlbnRpYWxzLnVzZU9BdXRoKSkge1xuICAgIGNvbnNvbGUuZXJyb3IoYENhbm5vdCBjYWNoZSBpbmNvbXBsZXRlIGNyZWRlbnRpYWxzIGZvciB1c2VyICR7dXNlcklkfWApO1xuICAgIHJldHVybjtcbiAgfVxuICBcbiAgdHJ5IHtcbiAgICBjb25zb2xlLmxvZyhgQ2FjaGluZyBjcmVkZW50aWFscyBmb3IgdXNlciAke3VzZXJJZH1gKTtcbiAgICBcbiAgICAvLyBDcmVhdGUgYSBjb3B5IHdpdGhvdXQgdGhlIHBhc3N3b3JkIHRvIHN0b3JlXG4gICAgY29uc3Qgc2VjdXJlQ3JlZGVudGlhbHM6IEVtYWlsQ3JlZGVudGlhbHMgPSB7XG4gICAgICBlbWFpbDogY3JlZGVudGlhbHMuZW1haWwsXG4gICAgICBob3N0OiBjcmVkZW50aWFscy5ob3N0LFxuICAgICAgcG9ydDogY3JlZGVudGlhbHMucG9ydCxcbiAgICAgIHNlY3VyZTogY3JlZGVudGlhbHMuc2VjdXJlID8/IHRydWUsXG4gICAgICAvLyBJbmNsdWRlIHRoZSBleHRlbmRlZCBmaWVsZHNcbiAgICAgIC4uLihjcmVkZW50aWFscy5zbXRwX2hvc3QgJiYgeyBzbXRwX2hvc3Q6IGNyZWRlbnRpYWxzLnNtdHBfaG9zdCB9KSxcbiAgICAgIC4uLihjcmVkZW50aWFscy5zbXRwX3BvcnQgJiYgeyBzbXRwX3BvcnQ6IGNyZWRlbnRpYWxzLnNtdHBfcG9ydCB9KSxcbiAgICAgIC4uLihjcmVkZW50aWFscy5zbXRwX3NlY3VyZSAhPT0gdW5kZWZpbmVkICYmIHsgc210cF9zZWN1cmU6IGNyZWRlbnRpYWxzLnNtdHBfc2VjdXJlIH0pLFxuICAgICAgLi4uKGNyZWRlbnRpYWxzLmRpc3BsYXlfbmFtZSAmJiB7IGRpc3BsYXlfbmFtZTogY3JlZGVudGlhbHMuZGlzcGxheV9uYW1lIH0pLFxuICAgICAgLi4uKGNyZWRlbnRpYWxzLmNvbG9yICYmIHsgY29sb3I6IGNyZWRlbnRpYWxzLmNvbG9yIH0pLFxuICAgICAgLy8gSW5jbHVkZSBPQXV0aCBmaWVsZHNcbiAgICAgIC4uLihjcmVkZW50aWFscy51c2VPQXV0aCAhPT0gdW5kZWZpbmVkICYmIHsgdXNlT0F1dGg6IGNyZWRlbnRpYWxzLnVzZU9BdXRoIH0pLFxuICAgICAgLi4uKGNyZWRlbnRpYWxzLmFjY2Vzc1Rva2VuICYmIHsgYWNjZXNzVG9rZW46IGNyZWRlbnRpYWxzLmFjY2Vzc1Rva2VuIH0pLFxuICAgICAgLi4uKGNyZWRlbnRpYWxzLnJlZnJlc2hUb2tlbiAmJiB7IHJlZnJlc2hUb2tlbjogY3JlZGVudGlhbHMucmVmcmVzaFRva2VuIH0pLFxuICAgICAgLi4uKGNyZWRlbnRpYWxzLnRva2VuRXhwaXJ5ICYmIHsgdG9rZW5FeHBpcnk6IGNyZWRlbnRpYWxzLnRva2VuRXhwaXJ5IH0pXG4gICAgfTtcbiAgICBcbiAgICAvLyBFbmNyeXB0IHBhc3N3b3JkIGlmIHByb3ZpZGVkXG4gICAgaWYgKGNyZWRlbnRpYWxzLnBhc3N3b3JkKSB7XG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCBlbmNyeXB0ZWQgPSBlbmNyeXB0RGF0YShjcmVkZW50aWFscy5wYXNzd29yZCk7XG4gICAgICAgIGNvbnNvbGUubG9nKGBTdWNjZXNzZnVsbHkgZW5jcnlwdGVkIHBhc3N3b3JkIGZvciB1c2VyICR7dXNlcklkfWApO1xuICAgICAgICBzZWN1cmVDcmVkZW50aWFscy5lbmNyeXB0ZWRQYXNzd29yZCA9IGVuY3J5cHRlZDtcbiAgICAgIH0gY2F0Y2ggKGVuY3J5cHRFcnJvcikge1xuICAgICAgICBjb25zb2xlLmVycm9yKGBGYWlsZWQgdG8gZW5jcnlwdCBwYXNzd29yZCBmb3IgdXNlciAke3VzZXJJZH06YCwgZW5jcnlwdEVycm9yKTtcbiAgICAgICAgLy8gQ29udGludWUgYW55d2F5IHNpbmNlIHdlIG1pZ2h0IGhhdmUgT0F1dGggdG9rZW5zXG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgIGF3YWl0IHJlZGlzLnNldChrZXksIEpTT04uc3RyaW5naWZ5KHNlY3VyZUNyZWRlbnRpYWxzKSwgJ0VYJywgVFRMLkNSRURFTlRJQUxTKTtcbiAgICBjb25zb2xlLmxvZyhgQ3JlZGVudGlhbHMgY2FjaGVkIGZvciB1c2VyICR7dXNlcklkfWApO1xuICB9IGNhdGNoIChlcnJvcikge1xuICAgIGNvbnNvbGUuZXJyb3IoYEVycm9yIGNhY2hpbmcgY3JlZGVudGlhbHMgZm9yIHVzZXIgJHt1c2VySWR9OmAsIGVycm9yKTtcbiAgfVxufVxuXG4vKipcbiAqIEdldCBlbWFpbCBjcmVkZW50aWFscyBmcm9tIFJlZGlzXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRFbWFpbENyZWRlbnRpYWxzKFxuICB1c2VySWQ6IHN0cmluZyxcbiAgYWNjb3VudElkOiBzdHJpbmdcbik6IFByb21pc2U8RW1haWxDcmVkZW50aWFscyB8IG51bGw+IHtcbiAgY29uc3QgcmVkaXMgPSBnZXRSZWRpc0NsaWVudCgpO1xuICBjb25zdCBrZXkgPSBLRVlTLkNSRURFTlRJQUxTKHVzZXJJZCwgYWNjb3VudElkKTtcbiAgXG4gIHRyeSB7XG4gICAgY29uc3QgY3JlZFN0ciA9IGF3YWl0IHJlZGlzLmdldChrZXkpO1xuICAgIFxuICAgIGlmICghY3JlZFN0cikge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIFxuICAgIGNvbnN0IGNyZWRzID0gSlNPTi5wYXJzZShjcmVkU3RyKSBhcyBFbWFpbENyZWRlbnRpYWxzO1xuICAgIFxuICAgIGxldCBwYXNzd29yZDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgIFxuICAgIC8vIEhhbmRsZSBPQXV0aCBhY2NvdW50cyAodGhleSBtaWdodCBub3QgaGF2ZSBhIHBhc3N3b3JkKVxuICAgIGlmIChjcmVkcy5lbmNyeXB0ZWRQYXNzd29yZCkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgLy8gRGVjcnlwdCB0aGUgcGFzc3dvcmRcbiAgICAgICAgcGFzc3dvcmQgPSBkZWNyeXB0RGF0YShjcmVkcy5lbmNyeXB0ZWRQYXNzd29yZCk7XG4gICAgICB9IGNhdGNoIChkZWNyeXB0RXJyb3IpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcihgRmFpbGVkIHRvIGRlY3J5cHQgcGFzc3dvcmQgZm9yIHVzZXIgJHt1c2VySWR9OmAsIGRlY3J5cHRFcnJvcik7XG4gICAgICAgIC8vIEZvciBPQXV0aCBhY2NvdW50cywgd2UgY2FuIGNvbnRpbnVlIHdpdGhvdXQgYSBwYXNzd29yZFxuICAgICAgICBpZiAoIWNyZWRzLnVzZU9BdXRoKSB7XG4gICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gUmV0dXJuIHRoZSBmdWxsIGNyZWRlbnRpYWxzIHdpdGggZGVjcnlwdGVkIHBhc3N3b3JkIGlmIGF2YWlsYWJsZVxuICAgIGNvbnN0IHJlc3VsdDogRW1haWxDcmVkZW50aWFscyA9IHtcbiAgICAgIGVtYWlsOiBjcmVkcy5lbWFpbCxcbiAgICAgIGhvc3Q6IGNyZWRzLmhvc3QsXG4gICAgICBwb3J0OiBjcmVkcy5wb3J0LFxuICAgICAgc2VjdXJlOiBjcmVkcy5zZWN1cmUgPz8gdHJ1ZSxcbiAgICAgIC4uLihwYXNzd29yZCAmJiB7IHBhc3N3b3JkIH0pLFxuICAgICAgLi4uKGNyZWRzLnNtdHBfaG9zdCAmJiB7IHNtdHBfaG9zdDogY3JlZHMuc210cF9ob3N0IH0pLFxuICAgICAgLi4uKGNyZWRzLnNtdHBfcG9ydCAmJiB7IHNtdHBfcG9ydDogY3JlZHMuc210cF9wb3J0IH0pLFxuICAgICAgLi4uKGNyZWRzLnNtdHBfc2VjdXJlICE9PSB1bmRlZmluZWQgJiYgeyBzbXRwX3NlY3VyZTogY3JlZHMuc210cF9zZWN1cmUgfSksXG4gICAgICAuLi4oY3JlZHMuZGlzcGxheV9uYW1lICYmIHsgZGlzcGxheV9uYW1lOiBjcmVkcy5kaXNwbGF5X25hbWUgfSksXG4gICAgICAuLi4oY3JlZHMuY29sb3IgJiYgeyBjb2xvcjogY3JlZHMuY29sb3IgfSksXG4gICAgICAvLyBJbmNsdWRlIE9BdXRoIGZpZWxkc1xuICAgICAgLi4uKGNyZWRzLnVzZU9BdXRoICE9PSB1bmRlZmluZWQgJiYgeyB1c2VPQXV0aDogY3JlZHMudXNlT0F1dGggfSksXG4gICAgICAuLi4oY3JlZHMuYWNjZXNzVG9rZW4gJiYgeyBhY2Nlc3NUb2tlbjogY3JlZHMuYWNjZXNzVG9rZW4gfSksXG4gICAgICAuLi4oY3JlZHMucmVmcmVzaFRva2VuICYmIHsgcmVmcmVzaFRva2VuOiBjcmVkcy5yZWZyZXNoVG9rZW4gfSksXG4gICAgICAuLi4oY3JlZHMudG9rZW5FeHBpcnkgJiYgeyB0b2tlbkV4cGlyeTogY3JlZHMudG9rZW5FeHBpcnkgfSlcbiAgICB9O1xuICAgIFxuICAgIHJldHVybiByZXN1bHQ7XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgY29uc29sZS5lcnJvcihgRXJyb3IgZ2V0dGluZyBjcmVkZW50aWFscyBmb3IgdXNlciAke3VzZXJJZH06YCwgZXJyb3IpO1xuICAgIHJldHVybiBudWxsO1xuICB9XG59XG5cbi8qKlxuICogQ2FjaGUgSU1BUCBzZXNzaW9uIGRhdGEgZm9yIHF1aWNrIHJlY29ubmVjdGlvblxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gY2FjaGVJbWFwU2Vzc2lvbihcbiAgdXNlcklkOiBzdHJpbmcsXG4gIHNlc3Npb25EYXRhOiBJbWFwU2Vzc2lvbkRhdGFcbik6IFByb21pc2U8dm9pZD4ge1xuICBjb25zdCByZWRpcyA9IGdldFJlZGlzQ2xpZW50KCk7XG4gIGNvbnN0IGtleSA9IEtFWVMuU0VTU0lPTih1c2VySWQpO1xuICBcbiAgLy8gQWx3YXlzIHVwZGF0ZSB0aGUgbGFzdEFjdGl2ZSB0aW1lc3RhbXBcbiAgc2Vzc2lvbkRhdGEubGFzdEFjdGl2ZSA9IERhdGUubm93KCk7XG4gIFxuICBhd2FpdCByZWRpcy5zZXQoa2V5LCBKU09OLnN0cmluZ2lmeShzZXNzaW9uRGF0YSksICdFWCcsIFRUTC5TRVNTSU9OKTtcbn1cblxuLyoqXG4gKiBHZXQgY2FjaGVkIElNQVAgc2Vzc2lvbiBkYXRhXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRDYWNoZWRJbWFwU2Vzc2lvbihcbiAgdXNlcklkOiBzdHJpbmdcbik6IFByb21pc2U8SW1hcFNlc3Npb25EYXRhIHwgbnVsbD4ge1xuICBjb25zdCByZWRpcyA9IGdldFJlZGlzQ2xpZW50KCk7XG4gIGNvbnN0IGtleSA9IEtFWVMuU0VTU0lPTih1c2VySWQpO1xuICBcbiAgY29uc3QgY2FjaGVkRGF0YSA9IGF3YWl0IHJlZGlzLmdldChrZXkpO1xuICBpZiAoIWNhY2hlZERhdGEpIHJldHVybiBudWxsO1xuICBcbiAgcmV0dXJuIEpTT04ucGFyc2UoY2FjaGVkRGF0YSkgYXMgSW1hcFNlc3Npb25EYXRhO1xufVxuXG4vKipcbiAqIENhY2hlIGVtYWlsIGxpc3QgaW4gUmVkaXNcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGNhY2hlRW1haWxMaXN0KFxuICB1c2VySWQ6IHN0cmluZyxcbiAgYWNjb3VudElkOiBzdHJpbmcsXG4gIGZvbGRlcjogc3RyaW5nLFxuICBwYWdlOiBudW1iZXIsXG4gIHBlclBhZ2U6IG51bWJlcixcbiAgZGF0YTogYW55XG4pOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3QgcmVkaXMgPSBnZXRSZWRpc0NsaWVudCgpO1xuICBjb25zdCBrZXkgPSBLRVlTLkVNQUlMX0xJU1QodXNlcklkLCBhY2NvdW50SWQsIGZvbGRlciwgcGFnZSwgcGVyUGFnZSk7XG4gIFxuICBhd2FpdCByZWRpcy5zZXQoa2V5LCBKU09OLnN0cmluZ2lmeShkYXRhKSwgJ0VYJywgVFRMLkVNQUlMX0xJU1QpO1xufVxuXG4vKipcbiAqIEdldCBjYWNoZWQgZW1haWwgbGlzdCBmcm9tIFJlZGlzXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRDYWNoZWRFbWFpbExpc3QoXG4gIHVzZXJJZDogc3RyaW5nLFxuICBhY2NvdW50SWQ6IHN0cmluZyxcbiAgZm9sZGVyOiBzdHJpbmcsXG4gIHBhZ2U6IG51bWJlcixcbiAgcGVyUGFnZTogbnVtYmVyXG4pOiBQcm9taXNlPGFueSB8IG51bGw+IHtcbiAgY29uc3QgcmVkaXMgPSBnZXRSZWRpc0NsaWVudCgpO1xuICBjb25zdCBrZXkgPSBLRVlTLkVNQUlMX0xJU1QodXNlcklkLCBhY2NvdW50SWQsIGZvbGRlciwgcGFnZSwgcGVyUGFnZSk7XG4gIFxuICBjb25zdCBjYWNoZWREYXRhID0gYXdhaXQgcmVkaXMuZ2V0KGtleSk7XG4gIGlmICghY2FjaGVkRGF0YSkgcmV0dXJuIG51bGw7XG4gIFxuICByZXR1cm4gSlNPTi5wYXJzZShjYWNoZWREYXRhKTtcbn1cblxuLyoqXG4gKiBDYWNoZSBlbWFpbCBjb250ZW50IGluIFJlZGlzXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBjYWNoZUVtYWlsQ29udGVudChcbiAgdXNlcklkOiBzdHJpbmcsXG4gIGFjY291bnRJZDogc3RyaW5nLFxuICBlbWFpbElkOiBzdHJpbmcsXG4gIGRhdGE6IGFueVxuKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlZGlzID0gZ2V0UmVkaXNDbGllbnQoKTtcbiAgY29uc3Qga2V5ID0gS0VZUy5FTUFJTF9DT05URU5UKHVzZXJJZCwgYWNjb3VudElkLCBlbWFpbElkKTtcbiAgXG4gIGF3YWl0IHJlZGlzLnNldChrZXksIEpTT04uc3RyaW5naWZ5KGRhdGEpLCAnRVgnLCBUVEwuRU1BSUxfQ09OVEVOVCk7XG59XG5cbi8qKlxuICogR2V0IGNhY2hlZCBlbWFpbCBjb250ZW50IGZyb20gUmVkaXNcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldENhY2hlZEVtYWlsQ29udGVudChcbiAgdXNlcklkOiBzdHJpbmcsXG4gIGFjY291bnRJZDogc3RyaW5nLFxuICBlbWFpbElkOiBzdHJpbmdcbik6IFByb21pc2U8YW55IHwgbnVsbD4ge1xuICBjb25zdCByZWRpcyA9IGdldFJlZGlzQ2xpZW50KCk7XG4gIGNvbnN0IGtleSA9IEtFWVMuRU1BSUxfQ09OVEVOVCh1c2VySWQsIGFjY291bnRJZCwgZW1haWxJZCk7XG4gIFxuICBjb25zdCBjYWNoZWREYXRhID0gYXdhaXQgcmVkaXMuZ2V0KGtleSk7XG4gIGlmICghY2FjaGVkRGF0YSkgcmV0dXJuIG51bGw7XG4gIFxuICByZXR1cm4gSlNPTi5wYXJzZShjYWNoZWREYXRhKTtcbn1cblxuLyoqXG4gKiBJbnZhbGlkYXRlIGFsbCBlbWFpbCBjYWNoZXMgZm9yIGEgZm9sZGVyXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBpbnZhbGlkYXRlRm9sZGVyQ2FjaGUoXG4gIHVzZXJJZDogc3RyaW5nLFxuICBhY2NvdW50SWQ6IHN0cmluZyxcbiAgZm9sZGVyOiBzdHJpbmdcbik6IFByb21pc2U8dm9pZD4ge1xuICBjb25zdCByZWRpcyA9IGdldFJlZGlzQ2xpZW50KCk7XG4gIGNvbnN0IHBhdHRlcm4gPSBgZW1haWw6bGlzdDoke3VzZXJJZH06JHthY2NvdW50SWR9OiR7Zm9sZGVyfToqYDtcbiAgXG4gIC8vIFVzZSBTQ0FOIHRvIGZpbmQgYW5kIGRlbGV0ZSBrZXlzIG1hdGNoaW5nIHRoZSBwYXR0ZXJuXG4gIGxldCBjdXJzb3IgPSAnMCc7XG4gIGRvIHtcbiAgICBjb25zdCBbbmV4dEN1cnNvciwga2V5c10gPSBhd2FpdCByZWRpcy5zY2FuKGN1cnNvciwgJ01BVENIJywgcGF0dGVybiwgJ0NPVU5UJywgMTAwKTtcbiAgICBjdXJzb3IgPSBuZXh0Q3Vyc29yO1xuICAgIFxuICAgIGlmIChrZXlzLmxlbmd0aCA+IDApIHtcbiAgICAgIGF3YWl0IHJlZGlzLmRlbCguLi5rZXlzKTtcbiAgICB9XG4gIH0gd2hpbGUgKGN1cnNvciAhPT0gJzAnKTtcbn1cblxuLyoqXG4gKiBJbnZhbGlkYXRlIGVtYWlsIGNvbnRlbnQgY2FjaGVcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGludmFsaWRhdGVFbWFpbENvbnRlbnRDYWNoZShcbiAgdXNlcklkOiBzdHJpbmcsXG4gIGFjY291bnRJZDogc3RyaW5nLFxuICBlbWFpbElkOiBzdHJpbmdcbik6IFByb21pc2U8dm9pZD4ge1xuICBjb25zdCByZWRpcyA9IGdldFJlZGlzQ2xpZW50KCk7XG4gIGNvbnN0IGtleSA9IEtFWVMuRU1BSUxfQ09OVEVOVCh1c2VySWQsIGFjY291bnRJZCwgZW1haWxJZCk7XG4gIFxuICBhd2FpdCByZWRpcy5kZWwoa2V5KTtcbn1cblxuLyoqXG4gKiBXYXJtIHVwIFJlZGlzIGNvbm5lY3Rpb24gdG8gYXZvaWQgY29sZCBzdGFydHNcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHdhcm11cFJlZGlzQ2FjaGUoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gIHRyeSB7XG4gICAgLy8gUGluZyBSZWRpcyB0byBlc3RhYmxpc2ggY29ubmVjdGlvbiBlYXJseVxuICAgIGNvbnN0IHJlZGlzID0gZ2V0UmVkaXNDbGllbnQoKTtcbiAgICBhd2FpdCByZWRpcy5waW5nKCk7XG4gICAgY29uc29sZS5sb2coJ1JlZGlzIGNvbm5lY3Rpb24gd2FybWVkIHVwJyk7XG4gICAgcmV0dXJuIHRydWU7XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgY29uc29sZS5lcnJvcignRXJyb3Igd2FybWluZyB1cCBSZWRpczonLCBlcnJvcik7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG59XG5cbi8qKlxuICogR2V0IFJlZGlzIGNvbm5lY3Rpb24gc3RhdHVzXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRSZWRpc1N0YXR1cygpOiBQcm9taXNlPHtcbiAgc3RhdHVzOiAnY29ubmVjdGVkJyB8ICdlcnJvcic7XG4gIHBpbmc/OiBzdHJpbmc7XG4gIGVycm9yPzogc3RyaW5nO1xufT4ge1xuICB0cnkge1xuICAgIGNvbnN0IHJlZGlzID0gZ2V0UmVkaXNDbGllbnQoKTtcbiAgICBjb25zdCBwb25nID0gYXdhaXQgcmVkaXMucGluZygpO1xuICAgIHJldHVybiB7XG4gICAgICBzdGF0dXM6ICdjb25uZWN0ZWQnLFxuICAgICAgcGluZzogcG9uZ1xuICAgIH07XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHN0YXR1czogJ2Vycm9yJyxcbiAgICAgIGVycm9yOiBlcnJvciBpbnN0YW5jZW9mIEVycm9yID8gZXJyb3IubWVzc2FnZSA6IFN0cmluZyhlcnJvcilcbiAgICB9O1xuICB9XG59XG5cbi8qKlxuICogSW52YWxpZGF0ZSBhbGwgdXNlciBlbWFpbCBjYWNoZXMgKGVtYWlsIGxpc3RzIGFuZCBjb250ZW50KVxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gaW52YWxpZGF0ZVVzZXJFbWFpbENhY2hlKFxuICB1c2VySWQ6IHN0cmluZ1xuKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlZGlzID0gZ2V0UmVkaXNDbGllbnQoKTtcbiAgXG4gIC8vIFBhdHRlcm5zIHRvIGRlbGV0ZVxuICBjb25zdCBwYXR0ZXJucyA9IFtcbiAgICBgZW1haWw6bGlzdDoke3VzZXJJZH06KmAsXG4gICAgYGVtYWlsOmNvbnRlbnQ6JHt1c2VySWR9OipgXG4gIF07XG4gIFxuICBmb3IgKGNvbnN0IHBhdHRlcm4gb2YgcGF0dGVybnMpIHtcbiAgICBsZXQgY3Vyc29yID0gJzAnO1xuICAgIGRvIHtcbiAgICAgIGNvbnN0IFtuZXh0Q3Vyc29yLCBrZXlzXSA9IGF3YWl0IHJlZGlzLnNjYW4oY3Vyc29yLCAnTUFUQ0gnLCBwYXR0ZXJuLCAnQ09VTlQnLCAxMDApO1xuICAgICAgY3Vyc29yID0gbmV4dEN1cnNvcjtcbiAgICAgIFxuICAgICAgaWYgKGtleXMubGVuZ3RoID4gMCkge1xuICAgICAgICBhd2FpdCByZWRpcy5kZWwoLi4ua2V5cyk7XG4gICAgICB9XG4gICAgfSB3aGlsZSAoY3Vyc29yICE9PSAnMCcpO1xuICB9XG59XG5cbi8qKlxuICogR2V0IGNhY2hlZCBlbWFpbCBjcmVkZW50aWFscyBmcm9tIFJlZGlzXG4gKiBAZGVwcmVjYXRlZCBVc2UgZ2V0RW1haWxDcmVkZW50aWFscyBpbnN0ZWFkXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRDYWNoZWRFbWFpbENyZWRlbnRpYWxzKFxuICB1c2VySWQ6IHN0cmluZyxcbiAgYWNjb3VudElkOiBzdHJpbmdcbik6IFByb21pc2U8RW1haWxDcmVkZW50aWFscyB8IG51bGw+IHtcbiAgcmV0dXJuIGdldEVtYWlsQ3JlZGVudGlhbHModXNlcklkLCBhY2NvdW50SWQpO1xufVxuXG4vKipcbiAqIENhY2hlIGNhbGVuZGFyIGRhdGEgZm9yIGEgdXNlclxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gY2FjaGVDYWxlbmRhckRhdGEoXG4gIHVzZXJJZDogc3RyaW5nLFxuICBkYXRhOiBhbnlcbik6IFByb21pc2U8dm9pZD4ge1xuICBjb25zdCByZWRpcyA9IGdldFJlZGlzQ2xpZW50KCk7XG4gIGNvbnN0IGtleSA9IEtFWVMuQ0FMRU5EQVIodXNlcklkKTtcbiAgXG4gIHRyeSB7XG4gICAgYXdhaXQgcmVkaXMuc2V0KGtleSwgSlNPTi5zdHJpbmdpZnkoZGF0YSksICdFWCcsIFRUTC5DQUxFTkRBUik7XG4gICAgY29uc29sZS5sb2coYENhbGVuZGFyIGRhdGEgY2FjaGVkIGZvciB1c2VyICR7dXNlcklkfWApO1xuICB9IGNhdGNoIChlcnJvcikge1xuICAgIGNvbnNvbGUuZXJyb3IoYEVycm9yIGNhY2hpbmcgY2FsZW5kYXIgZGF0YSBmb3IgdXNlciAke3VzZXJJZH06YCwgZXJyb3IpO1xuICB9XG59XG5cbi8qKlxuICogR2V0IGNhY2hlZCBjYWxlbmRhciBkYXRhIGZvciBhIHVzZXJcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldENhY2hlZENhbGVuZGFyRGF0YShcbiAgdXNlcklkOiBzdHJpbmdcbik6IFByb21pc2U8YW55IHwgbnVsbD4ge1xuICBjb25zdCByZWRpcyA9IGdldFJlZGlzQ2xpZW50KCk7XG4gIGNvbnN0IGtleSA9IEtFWVMuQ0FMRU5EQVIodXNlcklkKTtcbiAgXG4gIHRyeSB7XG4gICAgY29uc3QgY2FjaGVkRGF0YSA9IGF3YWl0IHJlZGlzLmdldChrZXkpO1xuICAgIGlmICghY2FjaGVkRGF0YSkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIFxuICAgIHJldHVybiBKU09OLnBhcnNlKGNhY2hlZERhdGEpO1xuICB9IGNhdGNoIChlcnJvcikge1xuICAgIGNvbnNvbGUuZXJyb3IoYEVycm9yIGdldHRpbmcgY2FjaGVkIGNhbGVuZGFyIGRhdGEgZm9yIHVzZXIgJHt1c2VySWR9OmAsIGVycm9yKTtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxufVxuXG4vKipcbiAqIEludmFsaWRhdGUgY2FsZW5kYXIgY2FjaGUgZm9yIGEgdXNlclxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gaW52YWxpZGF0ZUNhbGVuZGFyQ2FjaGUoXG4gIHVzZXJJZDogc3RyaW5nXG4pOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3QgcmVkaXMgPSBnZXRSZWRpc0NsaWVudCgpO1xuICBjb25zdCBrZXkgPSBLRVlTLkNBTEVOREFSKHVzZXJJZCk7XG4gIFxuICB0cnkge1xuICAgIGF3YWl0IHJlZGlzLmRlbChrZXkpO1xuICAgIGNvbnNvbGUubG9nKGBDYWxlbmRhciBjYWNoZSBpbnZhbGlkYXRlZCBmb3IgdXNlciAke3VzZXJJZH1gKTtcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICBjb25zb2xlLmVycm9yKGBFcnJvciBpbnZhbGlkYXRpbmcgY2FsZW5kYXIgY2FjaGUgZm9yIHVzZXIgJHt1c2VySWR9OmAsIGVycm9yKTtcbiAgfVxufVxuXG4vKipcbiAqIENhY2hlIG5ld3MgZGF0YSAoZ2xvYmFsLCBub3QgdXNlci1zcGVjaWZpYylcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGNhY2hlTmV3c0RhdGEoXG4gIGRhdGE6IGFueSxcbiAgbGltaXQgPSAnMTAwJ1xuKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlZGlzID0gZ2V0UmVkaXNDbGllbnQoKTtcbiAgY29uc3Qga2V5ID0gS0VZUy5ORVdTKGxpbWl0KTtcbiAgXG4gIHRyeSB7XG4gICAgYXdhaXQgcmVkaXMuc2V0KGtleSwgSlNPTi5zdHJpbmdpZnkoZGF0YSksICdFWCcsIFRUTC5ORVdTKTtcbiAgICBjb25zb2xlLmxvZyhgTmV3cyBkYXRhIGNhY2hlZCBzdWNjZXNzZnVsbHkgKCR7ZGF0YS5sZW5ndGh9IGFydGljbGVzLCBsaW1pdD0ke2xpbWl0fSlgKTtcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICBjb25zb2xlLmVycm9yKCdFcnJvciBjYWNoaW5nIG5ld3MgZGF0YTonLCBlcnJvcik7XG4gIH1cbn1cblxuLyoqXG4gKiBHZXQgY2FjaGVkIG5ld3MgZGF0YVxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0Q2FjaGVkTmV3c0RhdGEobGltaXQgPSAnMTAwJyk6IFByb21pc2U8YW55IHwgbnVsbD4ge1xuICBjb25zdCByZWRpcyA9IGdldFJlZGlzQ2xpZW50KCk7XG4gIGNvbnN0IGtleSA9IEtFWVMuTkVXUyhsaW1pdCk7XG4gIFxuICB0cnkge1xuICAgIGNvbnN0IGNhY2hlZERhdGEgPSBhd2FpdCByZWRpcy5nZXQoa2V5KTtcbiAgICBpZiAoIWNhY2hlZERhdGEpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgICBcbiAgICBjb25zdCBwYXJzZWREYXRhID0gSlNPTi5wYXJzZShjYWNoZWREYXRhKTtcbiAgICBjb25zb2xlLmxvZyhgUmV0cmlldmVkICR7cGFyc2VkRGF0YS5sZW5ndGh9IGFydGljbGVzIGZyb20gY2FjaGUgd2l0aCBsaW1pdD0ke2xpbWl0fWApO1xuICAgIHJldHVybiBwYXJzZWREYXRhO1xuICB9IGNhdGNoIChlcnJvcikge1xuICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGdldHRpbmcgY2FjaGVkIG5ld3MgZGF0YTonLCBlcnJvcik7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbn1cblxuLyoqXG4gKiBJbnZhbGlkYXRlIG5ld3MgY2FjaGVcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGludmFsaWRhdGVOZXdzQ2FjaGUobGltaXQ/OiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3QgcmVkaXMgPSBnZXRSZWRpc0NsaWVudCgpO1xuICBcbiAgdHJ5IHtcbiAgICBpZiAobGltaXQpIHtcbiAgICAgIC8vIEludmFsaWRhdGUgc3BlY2lmaWMgbGltaXQgY2FjaGVcbiAgICAgIGNvbnN0IGtleSA9IEtFWVMuTkVXUyhsaW1pdCk7XG4gICAgICBhd2FpdCByZWRpcy5kZWwoa2V5KTtcbiAgICAgIGNvbnNvbGUubG9nKGBOZXdzIGNhY2hlIGludmFsaWRhdGVkIGZvciBsaW1pdD0ke2xpbWl0fWApO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBUcnkgdG8gaW52YWxpZGF0ZSBmb3Igc29tZSBjb21tb24gbGltaXRzXG4gICAgICBjb25zdCBsaW1pdHMgPSBbJzUnLCAnNTAnLCAnMTAwJywgJzIwMCddO1xuICAgICAgZm9yIChjb25zdCBsaW0gb2YgbGltaXRzKSB7XG4gICAgICAgIGNvbnN0IGtleSA9IEtFWVMuTkVXUyhsaW0pO1xuICAgICAgICBhd2FpdCByZWRpcy5kZWwoa2V5KTtcbiAgICAgIH1cbiAgICAgIGNvbnNvbGUubG9nKCdBbGwgbmV3cyBjYWNoZXMgaW52YWxpZGF0ZWQnKTtcbiAgICB9XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgY29uc29sZS5lcnJvcignRXJyb3IgaW52YWxpZGF0aW5nIG5ld3MgY2FjaGU6JywgZXJyb3IpO1xuICB9XG59XG5cbi8qKlxuICogQ2FjaGUgdGFza3MgZGF0YSBmb3IgYSB1c2VyXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBjYWNoZVRhc2tzRGF0YShcbiAgdXNlcklkOiBzdHJpbmcsXG4gIGRhdGE6IGFueVxuKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlZGlzID0gZ2V0UmVkaXNDbGllbnQoKTtcbiAgY29uc3Qga2V5ID0gS0VZUy5UQVNLUyh1c2VySWQpO1xuICBcbiAgdHJ5IHtcbiAgICBhd2FpdCByZWRpcy5zZXQoa2V5LCBKU09OLnN0cmluZ2lmeShkYXRhKSwgJ0VYJywgVFRMLlRBU0tTKTtcbiAgICBjb25zb2xlLmxvZyhgVGFza3MgZGF0YSBjYWNoZWQgZm9yIHVzZXIgJHt1c2VySWR9YCk7XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgY29uc29sZS5lcnJvcihgRXJyb3IgY2FjaGluZyB0YXNrcyBkYXRhIGZvciB1c2VyICR7dXNlcklkfTpgLCBlcnJvcik7XG4gIH1cbn1cblxuLyoqXG4gKiBHZXQgY2FjaGVkIHRhc2tzIGRhdGEgZm9yIGEgdXNlclxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0Q2FjaGVkVGFza3NEYXRhKFxuICB1c2VySWQ6IHN0cmluZ1xuKTogUHJvbWlzZTxhbnkgfCBudWxsPiB7XG4gIGNvbnN0IHJlZGlzID0gZ2V0UmVkaXNDbGllbnQoKTtcbiAgY29uc3Qga2V5ID0gS0VZUy5UQVNLUyh1c2VySWQpO1xuICBcbiAgdHJ5IHtcbiAgICBjb25zdCBjYWNoZWREYXRhID0gYXdhaXQgcmVkaXMuZ2V0KGtleSk7XG4gICAgaWYgKCFjYWNoZWREYXRhKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgXG4gICAgcmV0dXJuIEpTT04ucGFyc2UoY2FjaGVkRGF0YSk7XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgY29uc29sZS5lcnJvcihgRXJyb3IgZ2V0dGluZyBjYWNoZWQgdGFza3MgZGF0YSBmb3IgdXNlciAke3VzZXJJZH06YCwgZXJyb3IpO1xuICAgIHJldHVybiBudWxsO1xuICB9XG59XG5cbi8qKlxuICogSW52YWxpZGF0ZSB0YXNrcyBjYWNoZSBmb3IgYSB1c2VyXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBpbnZhbGlkYXRlVGFza3NDYWNoZShcbiAgdXNlcklkOiBzdHJpbmdcbik6IFByb21pc2U8dm9pZD4ge1xuICBjb25zdCByZWRpcyA9IGdldFJlZGlzQ2xpZW50KCk7XG4gIGNvbnN0IGtleSA9IEtFWVMuVEFTS1ModXNlcklkKTtcbiAgXG4gIHRyeSB7XG4gICAgYXdhaXQgcmVkaXMuZGVsKGtleSk7XG4gICAgY29uc29sZS5sb2coYFRhc2tzIGNhY2hlIGludmFsaWRhdGVkIGZvciB1c2VyICR7dXNlcklkfWApO1xuICB9IGNhdGNoIChlcnJvcikge1xuICAgIGNvbnNvbGUuZXJyb3IoYEVycm9yIGludmFsaWRhdGluZyB0YXNrcyBjYWNoZSBmb3IgdXNlciAke3VzZXJJZH06YCwgZXJyb3IpO1xuICB9XG59XG5cbi8qKlxuICogQ2FjaGUgbWVzc2FnZXMgZGF0YSBmb3IgYSB1c2VyXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBjYWNoZU1lc3NhZ2VzRGF0YShcbiAgdXNlcklkOiBzdHJpbmcsXG4gIGRhdGE6IGFueVxuKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHJlZGlzID0gZ2V0UmVkaXNDbGllbnQoKTtcbiAgY29uc3Qga2V5ID0gS0VZUy5NRVNTQUdFUyh1c2VySWQpO1xuICBcbiAgdHJ5IHtcbiAgICBhd2FpdCByZWRpcy5zZXQoa2V5LCBKU09OLnN0cmluZ2lmeShkYXRhKSwgJ0VYJywgVFRMLk1FU1NBR0VTKTtcbiAgICBjb25zb2xlLmxvZyhgTWVzc2FnZXMgZGF0YSBjYWNoZWQgZm9yIHVzZXIgJHt1c2VySWR9YCk7XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgY29uc29sZS5lcnJvcihgRXJyb3IgY2FjaGluZyBtZXNzYWdlcyBkYXRhIGZvciB1c2VyICR7dXNlcklkfTpgLCBlcnJvcik7XG4gIH1cbn1cblxuLyoqXG4gKiBHZXQgY2FjaGVkIG1lc3NhZ2VzIGRhdGEgZm9yIGEgdXNlclxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0Q2FjaGVkTWVzc2FnZXNEYXRhKFxuICB1c2VySWQ6IHN0cmluZ1xuKTogUHJvbWlzZTxhbnkgfCBudWxsPiB7XG4gIGNvbnN0IHJlZGlzID0gZ2V0UmVkaXNDbGllbnQoKTtcbiAgY29uc3Qga2V5ID0gS0VZUy5NRVNTQUdFUyh1c2VySWQpO1xuICBcbiAgdHJ5IHtcbiAgICBjb25zdCBjYWNoZWREYXRhID0gYXdhaXQgcmVkaXMuZ2V0KGtleSk7XG4gICAgaWYgKCFjYWNoZWREYXRhKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgXG4gICAgcmV0dXJuIEpTT04ucGFyc2UoY2FjaGVkRGF0YSk7XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgY29uc29sZS5lcnJvcihgRXJyb3IgZ2V0dGluZyBjYWNoZWQgbWVzc2FnZXMgZGF0YSBmb3IgdXNlciAke3VzZXJJZH06YCwgZXJyb3IpO1xuICAgIHJldHVybiBudWxsO1xuICB9XG59XG5cbi8qKlxuICogSW52YWxpZGF0ZSBtZXNzYWdlcyBjYWNoZSBmb3IgYSB1c2VyXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBpbnZhbGlkYXRlTWVzc2FnZXNDYWNoZShcbiAgdXNlcklkOiBzdHJpbmdcbik6IFByb21pc2U8dm9pZD4ge1xuICBjb25zdCByZWRpcyA9IGdldFJlZGlzQ2xpZW50KCk7XG4gIGNvbnN0IGtleSA9IEtFWVMuTUVTU0FHRVModXNlcklkKTtcbiAgXG4gIHRyeSB7XG4gICAgYXdhaXQgcmVkaXMuZGVsKGtleSk7XG4gICAgY29uc29sZS5sb2coYE1lc3NhZ2VzIGNhY2hlIGludmFsaWRhdGVkIGZvciB1c2VyICR7dXNlcklkfWApO1xuICB9IGNhdGNoIChlcnJvcikge1xuICAgIGNvbnNvbGUuZXJyb3IoYEVycm9yIGludmFsaWRhdGluZyBtZXNzYWdlcyBjYWNoZSBmb3IgdXNlciAke3VzZXJJZH06YCwgZXJyb3IpO1xuICB9XG59ICJdLCJuYW1lcyI6WyJSZWRpcyIsIkNyeXB0b0pTIiwicmVkaXNDbGllbnQiLCJpc0Nvbm5lY3RpbmciLCJjb25uZWN0aW9uQXR0ZW1wdHMiLCJNQVhfUkVDT05ORUNUX0FUVEVNUFRTIiwiZ2V0UmVkaXNDbGllbnQiLCJzdGF0dXMiLCJjb25zb2xlIiwid2FybiIsInJlZGlzT3B0aW9ucyIsImhvc3QiLCJwcm9jZXNzIiwiZW52IiwiUkVESVNfSE9TVCIsInBvcnQiLCJSRURJU19QT1JUIiwicGFyc2VJbnQiLCJ1bmRlZmluZWQiLCJwYXNzd29yZCIsIlJFRElTX1BBU1NXT1JEIiwicmV0cnlTdHJhdGVneSIsInRpbWVzIiwiZXJyb3IiLCJkZWxheSIsIk1hdGgiLCJtaW4iLCJsb2ciLCJtYXhSZXRyaWVzUGVyUmVxdWVzdCIsImVuYWJsZU9mZmxpbmVRdWV1ZSIsImNvbm5lY3RUaW1lb3V0IiwiZGlzY29ubmVjdFRpbWVvdXQiLCJrZWVwQWxpdmUiLCJrZXlQcmVmaXgiLCJvbiIsImVyciIsImNsb3NlUmVkaXNDb25uZWN0aW9uIiwicXVpdCIsImdldEVuY3J5cHRpb25LZXkiLCJSRURJU19FTkNSWVBUSU9OX0tFWSIsImVuY3J5cHREYXRhIiwiZGF0YSIsIkFFUyIsImVuY3J5cHQiLCJ0b1N0cmluZyIsImRlY3J5cHREYXRhIiwiZW5jcnlwdGVkRGF0YSIsImJ5dGVzIiwiZGVjcnlwdCIsImVuYyIsIlV0ZjgiLCJLRVlTIiwiQ1JFREVOVElBTFMiLCJ1c2VySWQiLCJhY2NvdW50SWQiLCJTRVNTSU9OIiwiRU1BSUxfTElTVCIsImZvbGRlciIsInBhZ2UiLCJwZXJQYWdlIiwiRU1BSUxfQ09OVEVOVCIsImVtYWlsSWQiLCJDQUxFTkRBUiIsIk5FV1MiLCJsaW1pdCIsIlRBU0tTIiwiTUVTU0FHRVMiLCJUVEwiLCJjYWNoZUVtYWlsQ3JlZGVudGlhbHMiLCJjcmVkZW50aWFscyIsInJlZGlzIiwia2V5IiwiZW1haWwiLCJ1c2VPQXV0aCIsInNlY3VyZUNyZWRlbnRpYWxzIiwic2VjdXJlIiwic210cF9ob3N0Iiwic210cF9wb3J0Iiwic210cF9zZWN1cmUiLCJkaXNwbGF5X25hbWUiLCJjb2xvciIsImFjY2Vzc1Rva2VuIiwicmVmcmVzaFRva2VuIiwidG9rZW5FeHBpcnkiLCJlbmNyeXB0ZWQiLCJlbmNyeXB0ZWRQYXNzd29yZCIsImVuY3J5cHRFcnJvciIsInNldCIsIkpTT04iLCJzdHJpbmdpZnkiLCJnZXRFbWFpbENyZWRlbnRpYWxzIiwiY3JlZFN0ciIsImdldCIsImNyZWRzIiwicGFyc2UiLCJkZWNyeXB0RXJyb3IiLCJyZXN1bHQiLCJjYWNoZUltYXBTZXNzaW9uIiwic2Vzc2lvbkRhdGEiLCJsYXN0QWN0aXZlIiwiRGF0ZSIsIm5vdyIsImdldENhY2hlZEltYXBTZXNzaW9uIiwiY2FjaGVkRGF0YSIsImNhY2hlRW1haWxMaXN0IiwiZ2V0Q2FjaGVkRW1haWxMaXN0IiwiY2FjaGVFbWFpbENvbnRlbnQiLCJnZXRDYWNoZWRFbWFpbENvbnRlbnQiLCJpbnZhbGlkYXRlRm9sZGVyQ2FjaGUiLCJwYXR0ZXJuIiwiY3Vyc29yIiwibmV4dEN1cnNvciIsImtleXMiLCJzY2FuIiwibGVuZ3RoIiwiZGVsIiwiaW52YWxpZGF0ZUVtYWlsQ29udGVudENhY2hlIiwid2FybXVwUmVkaXNDYWNoZSIsInBpbmciLCJnZXRSZWRpc1N0YXR1cyIsInBvbmciLCJFcnJvciIsIm1lc3NhZ2UiLCJTdHJpbmciLCJpbnZhbGlkYXRlVXNlckVtYWlsQ2FjaGUiLCJwYXR0ZXJucyIsImdldENhY2hlZEVtYWlsQ3JlZGVudGlhbHMiLCJjYWNoZUNhbGVuZGFyRGF0YSIsImdldENhY2hlZENhbGVuZGFyRGF0YSIsImludmFsaWRhdGVDYWxlbmRhckNhY2hlIiwiY2FjaGVOZXdzRGF0YSIsImdldENhY2hlZE5ld3NEYXRhIiwicGFyc2VkRGF0YSIsImludmFsaWRhdGVOZXdzQ2FjaGUiLCJsaW1pdHMiLCJsaW0iLCJjYWNoZVRhc2tzRGF0YSIsImdldENhY2hlZFRhc2tzRGF0YSIsImludmFsaWRhdGVUYXNrc0NhY2hlIiwiY2FjaGVNZXNzYWdlc0RhdGEiLCJnZXRDYWNoZWRNZXNzYWdlc0RhdGEiLCJpbnZhbGlkYXRlTWVzc2FnZXNDYWNoZSJdLCJpZ25vcmVMaXN0IjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(rsc)/./lib/redis.ts\n");
/***/ }),
/***/ "(rsc)/./node_modules/next/dist/build/webpack/loaders/next-app-loader/index.js?name=app%2Fpage&page=%2Fpage&appPaths=%2Fpage&pagePath=private-next-app-dir%2Fpage.tsx&appDir=%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fapp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=%2FUsers%2Falma%2FDocuments%2FNeahNew&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!":
/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/next/dist/build/webpack/loaders/next-app-loader/index.js?name=app%2Fpage&page=%2Fpage&appPaths=%2Fpage&pagePath=private-next-app-dir%2Fpage.tsx&appDir=%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fapp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=%2FUsers%2Falma%2FDocuments%2FNeahNew&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D! ***!
\**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((__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 */ GlobalError: () => (/* reexport default from dynamic */ next_dist_client_components_error_boundary__WEBPACK_IMPORTED_MODULE_2___default.a),\n/* harmony export */ __next_app__: () => (/* binding */ __next_app__),\n/* harmony export */ pages: () => (/* binding */ pages),\n/* harmony export */ routeModule: () => (/* binding */ routeModule),\n/* harmony export */ tree: () => (/* binding */ tree)\n/* harmony export */ });\n/* harmony import */ var next_dist_server_route_modules_app_page_module_compiled__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! next/dist/server/route-modules/app-page/module.compiled */ \"(ssr)/./node_modules/next/dist/server/route-modules/app-page/module.compiled.js?cc4a\");\n/* harmony import */ var next_dist_server_route_modules_app_page_module_compiled__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(next_dist_server_route_modules_app_page_module_compiled__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var next_dist_server_route_kind__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! next/dist/server/route-kind */ \"(rsc)/./node_modules/next/dist/server/route-kind.js\");\n/* harmony import */ var next_dist_client_components_error_boundary__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! next/dist/client/components/error-boundary */ \"(rsc)/./node_modules/next/dist/client/components/error-boundary.js\");\n/* harmony import */ var next_dist_client_components_error_boundary__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(next_dist_client_components_error_boundary__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var next_dist_server_app_render_entry_base__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! next/dist/server/app-render/entry-base */ \"(rsc)/./node_modules/next/dist/server/app-render/entry-base.js\");\n/* harmony import */ var next_dist_server_app_render_entry_base__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(next_dist_server_app_render_entry_base__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony reexport (unknown) */ var __WEBPACK_REEXPORT_OBJECT__ = {};\n/* harmony reexport (unknown) */ for(const __WEBPACK_IMPORT_KEY__ in next_dist_server_app_render_entry_base__WEBPACK_IMPORTED_MODULE_3__) if([\"default\",\"tree\",\"pages\",\"GlobalError\",\"__next_app__\",\"routeModule\"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = () => next_dist_server_app_render_entry_base__WEBPACK_IMPORTED_MODULE_3__[__WEBPACK_IMPORT_KEY__]\n/* harmony reexport (unknown) */ __webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);\nconst module0 = () => Promise.resolve(/*! import() eager */).then(__webpack_require__.bind(__webpack_require__, /*! ./app/layout.tsx */ \"(rsc)/./app/layout.tsx\"));\nconst module1 = () => Promise.resolve(/*! import() eager */).then(__webpack_require__.t.bind(__webpack_require__, /*! next/dist/client/components/not-found-error */ \"(rsc)/./node_modules/next/dist/client/components/not-found-error.js\", 23));\nconst module2 = () => Promise.resolve(/*! import() eager */).then(__webpack_require__.t.bind(__webpack_require__, /*! next/dist/client/components/forbidden-error */ \"(rsc)/./node_modules/next/dist/client/components/forbidden-error.js\", 23));\nconst module3 = () => Promise.resolve(/*! import() eager */).then(__webpack_require__.t.bind(__webpack_require__, /*! next/dist/client/components/unauthorized-error */ \"(rsc)/./node_modules/next/dist/client/components/unauthorized-error.js\", 23));\nconst page4 = () => Promise.resolve(/*! import() eager */).then(__webpack_require__.bind(__webpack_require__, /*! ./app/page.tsx */ \"(rsc)/./app/page.tsx\"));\n\n\n// We inject the tree and pages here so that we can use them in the route\n// module.\nconst tree = {\n children: [\n '',\n {\n children: ['__PAGE__', {}, {\n page: [page4, \"/Users/alma/Documents/NeahNew/app/page.tsx\"],\n \n }]\n },\n {\n 'layout': [module0, \"/Users/alma/Documents/NeahNew/app/layout.tsx\"],\n'not-found': [module1, \"next/dist/client/components/not-found-error\"],\n'forbidden': [module2, \"next/dist/client/components/forbidden-error\"],\n'unauthorized': [module3, \"next/dist/client/components/unauthorized-error\"],\n \n }\n ]\n }.children;\nconst pages = [\"/Users/alma/Documents/NeahNew/app/page.tsx\"];\n\n\nconst __next_app_require__ = __webpack_require__\nconst __next_app_load_chunk__ = () => Promise.resolve()\nconst __next_app__ = {\n require: __next_app_require__,\n loadChunk: __next_app_load_chunk__\n};\n\n// Create and export the route module that will be consumed.\nconst routeModule = new next_dist_server_route_modules_app_page_module_compiled__WEBPACK_IMPORTED_MODULE_0__.AppPageRouteModule({\n definition: {\n kind: next_dist_server_route_kind__WEBPACK_IMPORTED_MODULE_1__.RouteKind.APP_PAGE,\n page: \"/page\",\n pathname: \"/\",\n // The following aren't used in production.\n bundlePath: '',\n filename: '',\n appPaths: []\n },\n userland: {\n loaderTree: tree\n }\n});\n\n//# sourceMappingURL=app-page.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2J1aWxkL3dlYnBhY2svbG9hZGVycy9uZXh0LWFwcC1sb2FkZXIvaW5kZXguanM/bmFtZT1hcHAlMkZwYWdlJnBhZ2U9JTJGcGFnZSZhcHBQYXRocz0lMkZwYWdlJnBhZ2VQYXRoPXByaXZhdGUtbmV4dC1hcHAtZGlyJTJGcGFnZS50c3gmYXBwRGlyPSUyRlVzZXJzJTJGYWxtYSUyRkRvY3VtZW50cyUyRk5lYWhOZXclMkZhcHAmcGFnZUV4dGVuc2lvbnM9dHN4JnBhZ2VFeHRlbnNpb25zPXRzJnBhZ2VFeHRlbnNpb25zPWpzeCZwYWdlRXh0ZW5zaW9ucz1qcyZyb290RGlyPSUyRlVzZXJzJTJGYWxtYSUyRkRvY3VtZW50cyUyRk5lYWhOZXcmaXNEZXY9dHJ1ZSZ0c2NvbmZpZ1BhdGg9dHNjb25maWcuanNvbiZiYXNlUGF0aD0mYXNzZXRQcmVmaXg9Jm5leHRDb25maWdPdXRwdXQ9JnByZWZlcnJlZFJlZ2lvbj0mbWlkZGxld2FyZUNvbmZpZz1lMzAlM0QhIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHNCQUFzQiw0SUFBaUY7QUFDdkcsc0JBQXNCLDBOQUFnRjtBQUN0RyxzQkFBc0IsME5BQWdGO0FBQ3RHLHNCQUFzQixnT0FBbUY7QUFDekcsb0JBQW9CLHdJQUErRTtBQUdqRztBQUdBO0FBQ0Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUNBQWlDO0FBQ2pDO0FBQ0E7QUFDQSxTQUFTO0FBQ1QsT0FBTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDdUI7QUFHckI7QUFDRiw2QkFBNkIsbUJBQW1CO0FBQ2hEO0FBQ087QUFDUDtBQUNBO0FBQ0E7QUFHRTtBQUNGO0FBQ08sd0JBQXdCLHVHQUFrQjtBQUNqRDtBQUNBLGNBQWMsa0VBQVM7QUFDdkI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBLENBQUM7O0FBRUQiLCJzb3VyY2VzIjpbIiJdLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBtb2R1bGUwID0gKCkgPT4gaW1wb3J0KC8qIHdlYnBhY2tNb2RlOiBcImVhZ2VyXCIgKi8gXCIvVXNlcnMvYWxtYS9Eb2N1bWVudHMvTmVhaE5ldy9hcHAvbGF5b3V0LnRzeFwiKTtcbmNvbnN0IG1vZHVsZTEgPSAoKSA9PiBpbXBvcnQoLyogd2VicGFja01vZGU6IFwiZWFnZXJcIiAqLyBcIm5leHQvZGlzdC9jbGllbnQvY29tcG9uZW50cy9ub3QtZm91bmQtZXJyb3JcIik7XG5jb25zdCBtb2R1bGUyID0gKCkgPT4gaW1wb3J0KC8qIHdlYnBhY2tNb2RlOiBcImVhZ2VyXCIgKi8gXCJuZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvZm9yYmlkZGVuLWVycm9yXCIpO1xuY29uc3QgbW9kdWxlMyA9ICgpID0+IGltcG9ydCgvKiB3ZWJwYWNrTW9kZTogXCJlYWdlclwiICovIFwibmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3VuYXV0aG9yaXplZC1lcnJvclwiKTtcbmNvbnN0IHBhZ2U0ID0gKCkgPT4gaW1wb3J0KC8qIHdlYnBhY2tNb2RlOiBcImVhZ2VyXCIgKi8gXCIvVXNlcnMvYWxtYS9Eb2N1bWVudHMvTmVhaE5ldy9hcHAvcGFnZS50c3hcIik7XG5pbXBvcnQgeyBBcHBQYWdlUm91dGVNb2R1bGUgfSBmcm9tIFwibmV4dC9kaXN0L3NlcnZlci9yb3V0ZS1tb2R1bGVzL2FwcC1wYWdlL21vZHVsZS5jb21waWxlZFwiIHdpdGgge1xuICAgICd0dXJib3BhY2stdHJhbnNpdGlvbic6ICduZXh0LXNzcidcbn07XG5pbXBvcnQgeyBSb3V0ZUtpbmQgfSBmcm9tIFwibmV4dC9kaXN0L3NlcnZlci9yb3V0ZS1raW5kXCIgd2l0aCB7XG4gICAgJ3R1cmJvcGFjay10cmFuc2l0aW9uJzogJ25leHQtc2VydmVyLXV0aWxpdHknXG59O1xuLy8gV2UgaW5qZWN0IHRoZSB0cmVlIGFuZCBwYWdlcyBoZXJlIHNvIHRoYXQgd2UgY2FuIHVzZSB0aGVtIGluIHRoZSByb3V0ZVxuLy8gbW9kdWxlLlxuY29uc3QgdHJlZSA9IHtcbiAgICAgICAgY2hpbGRyZW46IFtcbiAgICAgICAgJycsXG4gICAgICAgIHtcbiAgICAgICAgY2hpbGRyZW46IFsnX19QQUdFX18nLCB7fSwge1xuICAgICAgICAgIHBhZ2U6IFtwYWdlNCwgXCIvVXNlcnMvYWxtYS9Eb2N1bWVudHMvTmVhaE5ldy9hcHAvcGFnZS50c3hcIl0sXG4gICAgICAgICAgXG4gICAgICAgIH1dXG4gICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICdsYXlvdXQnOiBbbW9kdWxlMCwgXCIvVXNlcnMvYWxtYS9Eb2N1bWVudHMvTmVhaE5ldy9hcHAvbGF5b3V0LnRzeFwiXSxcbidub3QtZm91bmQnOiBbbW9kdWxlMSwgXCJuZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvbm90LWZvdW5kLWVycm9yXCJdLFxuJ2ZvcmJpZGRlbic6IFttb2R1bGUyLCBcIm5leHQvZGlzdC9jbGllbnQvY29tcG9uZW50cy9mb3JiaWRkZW4tZXJyb3JcIl0sXG4ndW5hdXRob3JpemVkJzogW21vZHVsZTMsIFwibmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3VuYXV0aG9yaXplZC1lcnJvclwiXSxcbiAgICAgICAgXG4gICAgICB9XG4gICAgICBdXG4gICAgICB9LmNoaWxkcmVuO1xuY29uc3QgcGFnZXMgPSBbXCIvVXNlcnMvYWxtYS9Eb2N1bWVudHMvTmVhaE5ldy9hcHAvcGFnZS50c3hcIl07XG5leHBvcnQgeyB0cmVlLCBwYWdlcyB9O1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBHbG9iYWxFcnJvciB9IGZyb20gXCJuZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvZXJyb3ItYm91bmRhcnlcIiB3aXRoIHtcbiAgICAndHVyYm9wYWNrLXRyYW5zaXRpb24nOiAnbmV4dC1zZXJ2ZXItdXRpbGl0eSdcbn07XG5jb25zdCBfX25leHRfYXBwX3JlcXVpcmVfXyA9IF9fd2VicGFja19yZXF1aXJlX19cbmNvbnN0IF9fbmV4dF9hcHBfbG9hZF9jaHVua19fID0gKCkgPT4gUHJvbWlzZS5yZXNvbHZlKClcbmV4cG9ydCBjb25zdCBfX25leHRfYXBwX18gPSB7XG4gICAgcmVxdWlyZTogX19uZXh0X2FwcF9yZXF1aXJlX18sXG4gICAgbG9hZENodW5rOiBfX25leHRfYXBwX2xvYWRfY2h1bmtfX1xufTtcbmV4cG9ydCAqIGZyb20gXCJuZXh0L2Rpc3Qvc2VydmVyL2FwcC1yZW5kZXIvZW50cnktYmFzZVwiIHdpdGgge1xuICAgICd0dXJib3BhY2stdHJhbnNpdGlvbic6ICduZXh0LXNlcnZlci11dGlsaXR5J1xufTtcbi8vIENyZWF0ZSBhbmQgZXhwb3J0IHRoZSByb3V0ZSBtb2R1bGUgdGhhdCB3aWxsIGJlIGNvbnN1bWVkLlxuZXhwb3J0IGNvbnN0IHJvdXRlTW9kdWxlID0gbmV3IEFwcFBhZ2VSb3V0ZU1vZHVsZSh7XG4gICAgZGVmaW5pdGlvbjoge1xuICAgICAgICBraW5kOiBSb3V0ZUtpbmQuQVBQX1BBR0UsXG4gICAgICAgIHBhZ2U6IFwiL3BhZ2VcIixcbiAgICAgICAgcGF0aG5hbWU6IFwiL1wiLFxuICAgICAgICAvLyBUaGUgZm9sbG93aW5nIGFyZW4ndCB1c2VkIGluIHByb2R1Y3Rpb24uXG4gICAgICAgIGJ1bmRsZVBhdGg6ICcnLFxuICAgICAgICBmaWxlbmFtZTogJycsXG4gICAgICAgIGFwcFBhdGhzOiBbXVxuICAgIH0sXG4gICAgdXNlcmxhbmQ6IHtcbiAgICAgICAgbG9hZGVyVHJlZTogdHJlZVxuICAgIH1cbn0pO1xuXG4vLyMgc291cmNlTWFwcGluZ1VSTD1hcHAtcGFnZS5qcy5tYXAiXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/next/dist/build/webpack/loaders/next-app-loader/index.js?name=app%2Fpage&page=%2Fpage&appPaths=%2Fpage&pagePath=private-next-app-dir%2Fpage.tsx&appDir=%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fapp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=%2FUsers%2Falma%2FDocuments%2FNeahNew&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!\n");
/***/ }),
/***/ "(rsc)/./node_modules/next/dist/build/webpack/loaders/next-flight-client-entry-loader.js?modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fapp%2Fglobals.css%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fcomponents%2Flayout%2Flayout-wrapper.tsx%22%2C%22ids%22%3A%5B%22LayoutWrapper%22%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fcomponents%2Fproviders.tsx%22%2C%22ids%22%3A%5B%22Providers%22%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Ffont%2Fgoogle%2Ftarget.css%3F%7B%5C%22path%5C%22%3A%5C%22app%2Flayout.tsx%5C%22%2C%5C%22import%5C%22%3A%5C%22Inter%5C%22%2C%5C%22arguments%5C%22%3A%5B%7B%5C%22subsets%5C%22%3A%5B%5C%22latin%5C%22%5D%7D%5D%2C%5C%22variableName%5C%22%3A%5C%22inter%5C%22%7D%22%2C%22ids%22%3A%5B%5D%7D&server=true!":
/*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/next/dist/build/webpack/loaders/next-flight-client-entry-loader.js?modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fapp%2Fglobals.css%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fcomponents%2Flayout%2Flayout-wrapper.tsx%22%2C%22ids%22%3A%5B%22LayoutWrapper%22%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fcomponents%2Fproviders.tsx%22%2C%22ids%22%3A%5B%22Providers%22%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Ffont%2Fgoogle%2Ftarget.css%3F%7B%5C%22path%5C%22%3A%5C%22app%2Flayout.tsx%5C%22%2C%5C%22import%5C%22%3A%5C%22Inter%5C%22%2C%5C%22arguments%5C%22%3A%5B%7B%5C%22subsets%5C%22%3A%5B%5C%22latin%5C%22%5D%7D%5D%2C%5C%22variableName%5C%22%3A%5C%22inter%5C%22%7D%22%2C%22ids%22%3A%5B%5D%7D&server=true! ***!
\***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
eval("Promise.resolve(/*! import() eager */).then(__webpack_require__.bind(__webpack_require__, /*! ./components/layout/layout-wrapper.tsx */ \"(rsc)/./components/layout/layout-wrapper.tsx\"));\n;\nPromise.resolve(/*! import() eager */).then(__webpack_require__.bind(__webpack_require__, /*! ./components/providers.tsx */ \"(rsc)/./components/providers.tsx\"));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2J1aWxkL3dlYnBhY2svbG9hZGVycy9uZXh0LWZsaWdodC1jbGllbnQtZW50cnktbG9hZGVyLmpzP21vZHVsZXM9JTdCJTIycmVxdWVzdCUyMiUzQSUyMiUyRlVzZXJzJTJGYWxtYSUyRkRvY3VtZW50cyUyRk5lYWhOZXclMkZhcHAlMkZnbG9iYWxzLmNzcyUyMiUyQyUyMmlkcyUyMiUzQSU1QiU1RCU3RCZtb2R1bGVzPSU3QiUyMnJlcXVlc3QlMjIlM0ElMjIlMkZVc2VycyUyRmFsbWElMkZEb2N1bWVudHMlMkZOZWFoTmV3JTJGY29tcG9uZW50cyUyRmxheW91dCUyRmxheW91dC13cmFwcGVyLnRzeCUyMiUyQyUyMmlkcyUyMiUzQSU1QiUyMkxheW91dFdyYXBwZXIlMjIlNUQlN0QmbW9kdWxlcz0lN0IlMjJyZXF1ZXN0JTIyJTNBJTIyJTJGVXNlcnMlMkZhbG1hJTJGRG9jdW1lbnRzJTJGTmVhaE5ldyUyRmNvbXBvbmVudHMlMkZwcm92aWRlcnMudHN4JTIyJTJDJTIyaWRzJTIyJTNBJTVCJTIyUHJvdmlkZXJzJTIyJTVEJTdEJm1vZHVsZXM9JTdCJTIycmVxdWVzdCUyMiUzQSUyMiUyRlVzZXJzJTJGYWxtYSUyRkRvY3VtZW50cyUyRk5lYWhOZXclMkZub2RlX21vZHVsZXMlMkZuZXh0JTJGZm9udCUyRmdvb2dsZSUyRnRhcmdldC5jc3MlM0YlN0IlNUMlMjJwYXRoJTVDJTIyJTNBJTVDJTIyYXBwJTJGbGF5b3V0LnRzeCU1QyUyMiUyQyU1QyUyMmltcG9ydCU1QyUyMiUzQSU1QyUyMkludGVyJTVDJTIyJTJDJTVDJTIyYXJndW1lbnRzJTVDJTIyJTNBJTVCJTdCJTVDJTIyc3Vic2V0cyU1QyUyMiUzQSU1QiU1QyUyMmxhdGluJTVDJTIyJTVEJTdEJTVEJTJDJTVDJTIydmFyaWFibGVOYW1lJTVDJTIyJTNBJTVDJTIyaW50ZXIlNUMlMjIlN0QlMjIlMkMlMjJpZHMlMjIlM0ElNUIlNUQlN0Qmc2VydmVyPXRydWUhIiwibWFwcGluZ3MiOiJBQUFBLHdMQUEwSTtBQUMxSTtBQUNBLGdLQUEwSCIsInNvdXJjZXMiOlsiIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCgvKiB3ZWJwYWNrTW9kZTogXCJlYWdlclwiLCB3ZWJwYWNrRXhwb3J0czogW1wiTGF5b3V0V3JhcHBlclwiXSAqLyBcIi9Vc2Vycy9hbG1hL0RvY3VtZW50cy9OZWFoTmV3L2NvbXBvbmVudHMvbGF5b3V0L2xheW91dC13cmFwcGVyLnRzeFwiKTtcbjtcbmltcG9ydCgvKiB3ZWJwYWNrTW9kZTogXCJlYWdlclwiLCB3ZWJwYWNrRXhwb3J0czogW1wiUHJvdmlkZXJzXCJdICovIFwiL1VzZXJzL2FsbWEvRG9jdW1lbnRzL05lYWhOZXcvY29tcG9uZW50cy9wcm92aWRlcnMudHN4XCIpO1xuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/next/dist/build/webpack/loaders/next-flight-client-entry-loader.js?modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fapp%2Fglobals.css%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fcomponents%2Flayout%2Flayout-wrapper.tsx%22%2C%22ids%22%3A%5B%22LayoutWrapper%22%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fcomponents%2Fproviders.tsx%22%2C%22ids%22%3A%5B%22Providers%22%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Ffont%2Fgoogle%2Ftarget.css%3F%7B%5C%22path%5C%22%3A%5C%22app%2Flayout.tsx%5C%22%2C%5C%22import%5C%22%3A%5C%22Inter%5C%22%2C%5C%22arguments%5C%22%3A%5B%7B%5C%22subsets%5C%22%3A%5B%5C%22latin%5C%22%5D%7D%5D%2C%5C%22variableName%5C%22%3A%5C%22inter%5C%22%7D%22%2C%22ids%22%3A%5B%5D%7D&server=true!\n");
/***/ }),
/***/ "(rsc)/./node_modules/next/dist/build/webpack/loaders/next-flight-client-entry-loader.js?modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fapp%2Fpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=true!":
/*!**********************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/next/dist/build/webpack/loaders/next-flight-client-entry-loader.js?modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fapp%2Fpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=true! ***!
\**********************************************************************************************************************************************************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
eval("Promise.resolve(/*! import() eager */).then(__webpack_require__.bind(__webpack_require__, /*! ./app/page.tsx */ \"(rsc)/./app/page.tsx\"));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2J1aWxkL3dlYnBhY2svbG9hZGVycy9uZXh0LWZsaWdodC1jbGllbnQtZW50cnktbG9hZGVyLmpzP21vZHVsZXM9JTdCJTIycmVxdWVzdCUyMiUzQSUyMiUyRlVzZXJzJTJGYWxtYSUyRkRvY3VtZW50cyUyRk5lYWhOZXclMkZhcHAlMkZwYWdlLnRzeCUyMiUyQyUyMmlkcyUyMiUzQSU1QiU1RCU3RCZzZXJ2ZXI9dHJ1ZSEiLCJtYXBwaW5ncyI6IkFBQUEsd0lBQStFIiwic291cmNlcyI6WyIiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0KC8qIHdlYnBhY2tNb2RlOiBcImVhZ2VyXCIgKi8gXCIvVXNlcnMvYWxtYS9Eb2N1bWVudHMvTmVhaE5ldy9hcHAvcGFnZS50c3hcIik7XG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/next/dist/build/webpack/loaders/next-flight-client-entry-loader.js?modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fapp%2Fpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=true!\n");
/***/ }),
/***/ "(rsc)/./node_modules/next/dist/build/webpack/loaders/next-flight-client-entry-loader.js?modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fclient-page.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fclient-segment.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Ferror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fhttp-access-fallback%2Ferror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Flayout-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fmetadata%2Fasync-metadata.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fmetadata%2Fmetadata-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Frender-from-template-context.js%22%2C%22ids%22%3A%5B%5D%7D&server=true!":
/*!************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/next/dist/build/webpack/loaders/next-flight-client-entry-loader.js?modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fclient-page.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fclient-segment.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Ferror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fhttp-access-fallback%2Ferror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Flayout-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fmetadata%2Fasync-metadata.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fmetadata%2Fmetadata-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Frender-from-template-context.js%22%2C%22ids%22%3A%5B%5D%7D&server=true! ***!
\************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
eval("Promise.resolve(/*! import() eager */).then(__webpack_require__.t.bind(__webpack_require__, /*! ./node_modules/next/dist/client/components/client-page.js */ \"(rsc)/./node_modules/next/dist/client/components/client-page.js\", 23));\n;\nPromise.resolve(/*! import() eager */).then(__webpack_require__.t.bind(__webpack_require__, /*! ./node_modules/next/dist/client/components/client-segment.js */ \"(rsc)/./node_modules/next/dist/client/components/client-segment.js\", 23));\n;\nPromise.resolve(/*! import() eager */).then(__webpack_require__.t.bind(__webpack_require__, /*! ./node_modules/next/dist/client/components/error-boundary.js */ \"(rsc)/./node_modules/next/dist/client/components/error-boundary.js\", 23));\n;\nPromise.resolve(/*! import() eager */).then(__webpack_require__.t.bind(__webpack_require__, /*! ./node_modules/next/dist/client/components/http-access-fallback/error-boundary.js */ \"(rsc)/./node_modules/next/dist/client/components/http-access-fallback/error-boundary.js\", 23));\n;\nPromise.resolve(/*! import() eager */).then(__webpack_require__.t.bind(__webpack_require__, /*! ./node_modules/next/dist/client/components/layout-router.js */ \"(rsc)/./node_modules/next/dist/client/components/layout-router.js\", 23));\n;\nPromise.resolve(/*! import() eager */).then(__webpack_require__.t.bind(__webpack_require__, /*! ./node_modules/next/dist/client/components/metadata/async-metadata.js */ \"(rsc)/./node_modules/next/dist/client/components/metadata/async-metadata.js\", 23));\n;\nPromise.resolve(/*! import() eager */).then(__webpack_require__.t.bind(__webpack_require__, /*! ./node_modules/next/dist/client/components/metadata/metadata-boundary.js */ \"(rsc)/./node_modules/next/dist/client/components/metadata/metadata-boundary.js\", 23));\n;\nPromise.resolve(/*! import() eager */).then(__webpack_require__.t.bind(__webpack_require__, /*! ./node_modules/next/dist/client/components/render-from-template-context.js */ \"(rsc)/./node_modules/next/dist/client/components/render-from-template-context.js\", 23));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2J1aWxkL3dlYnBhY2svbG9hZGVycy9uZXh0LWZsaWdodC1jbGllbnQtZW50cnktbG9hZGVyLmpzP21vZHVsZXM9JTdCJTIycmVxdWVzdCUyMiUzQSUyMiUyRlVzZXJzJTJGYWxtYSUyRkRvY3VtZW50cyUyRk5lYWhOZXclMkZub2RlX21vZHVsZXMlMkZuZXh0JTJGZGlzdCUyRmNsaWVudCUyRmNvbXBvbmVudHMlMkZjbGllbnQtcGFnZS5qcyUyMiUyQyUyMmlkcyUyMiUzQSU1QiU1RCU3RCZtb2R1bGVzPSU3QiUyMnJlcXVlc3QlMjIlM0ElMjIlMkZVc2VycyUyRmFsbWElMkZEb2N1bWVudHMlMkZOZWFoTmV3JTJGbm9kZV9tb2R1bGVzJTJGbmV4dCUyRmRpc3QlMkZjbGllbnQlMkZjb21wb25lbnRzJTJGY2xpZW50LXNlZ21lbnQuanMlMjIlMkMlMjJpZHMlMjIlM0ElNUIlNUQlN0QmbW9kdWxlcz0lN0IlMjJyZXF1ZXN0JTIyJTNBJTIyJTJGVXNlcnMlMkZhbG1hJTJGRG9jdW1lbnRzJTJGTmVhaE5ldyUyRm5vZGVfbW9kdWxlcyUyRm5leHQlMkZkaXN0JTJGY2xpZW50JTJGY29tcG9uZW50cyUyRmVycm9yLWJvdW5kYXJ5LmpzJTIyJTJDJTIyaWRzJTIyJTNBJTVCJTVEJTdEJm1vZHVsZXM9JTdCJTIycmVxdWVzdCUyMiUzQSUyMiUyRlVzZXJzJTJGYWxtYSUyRkRvY3VtZW50cyUyRk5lYWhOZXclMkZub2RlX21vZHVsZXMlMkZuZXh0JTJGZGlzdCUyRmNsaWVudCUyRmNvbXBvbmVudHMlMkZodHRwLWFjY2Vzcy1mYWxsYmFjayUyRmVycm9yLWJvdW5kYXJ5LmpzJTIyJTJDJTIyaWRzJTIyJTNBJTVCJTVEJTdEJm1vZHVsZXM9JTdCJTIycmVxdWVzdCUyMiUzQSUyMiUyRlVzZXJzJTJGYWxtYSUyRkRvY3VtZW50cyUyRk5lYWhOZXclMkZub2RlX21vZHVsZXMlMkZuZXh0JTJGZGlzdCUyRmNsaWVudCUyRmNvbXBvbmVudHMlMkZsYXlvdXQtcm91dGVyLmpzJTIyJTJDJTIyaWRzJTIyJTNBJTVCJTVEJTdEJm1vZHVsZXM9JTdCJTIycmVxdWVzdCUyMiUzQSUyMiUyRlVzZXJzJTJGYWxtYSUyRkRvY3VtZW50cyUyRk5lYWhOZXclMkZub2RlX21vZHVsZXMlMkZuZXh0JTJGZGlzdCUyRmNsaWVudCUyRmNvbXBvbmVudHMlMkZtZXRhZGF0YSUyRmFzeW5jLW1ldGFkYXRhLmpzJTIyJTJDJTIyaWRzJTIyJTNBJTVCJTVEJTdEJm1vZHVsZXM9JTdCJTIycmVxdWVzdCUyMiUzQSUyMiUyRlVzZXJzJTJGYWxtYSUyRkRvY3VtZW50cyUyRk5lYWhOZXclMkZub2RlX21vZHVsZXMlMkZuZXh0JTJGZGlzdCUyRmNsaWVudCUyRmNvbXBvbmVudHMlMkZtZXRhZGF0YSUyRm1ldGFkYXRhLWJvdW5kYXJ5LmpzJTIyJTJDJTIyaWRzJTIyJTNBJTVCJTVEJTdEJm1vZHVsZXM9JTdCJTIycmVxdWVzdCUyMiUzQSUyMiUyRlVzZXJzJTJGYWxtYSUyRkRvY3VtZW50cyUyRk5lYWhOZXclMkZub2RlX21vZHVsZXMlMkZuZXh0JTJGZGlzdCUyRmNsaWVudCUyRmNvbXBvbmVudHMlMkZyZW5kZXItZnJvbS10ZW1wbGF0ZS1jb250ZXh0LmpzJTIyJTJDJTIyaWRzJTIyJTNBJTVCJTVEJTdEJnNlcnZlcj10cnVlISIsIm1hcHBpbmdzIjoiQUFBQSxvT0FBMEg7QUFDMUg7QUFDQSwwT0FBNkg7QUFDN0g7QUFDQSwwT0FBNkg7QUFDN0g7QUFDQSxvUkFBa0o7QUFDbEo7QUFDQSx3T0FBNEg7QUFDNUg7QUFDQSw0UEFBc0k7QUFDdEk7QUFDQSxrUUFBeUk7QUFDekk7QUFDQSxzUUFBMkkiLCJzb3VyY2VzIjpbIiJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQoLyogd2VicGFja01vZGU6IFwiZWFnZXJcIiAqLyBcIi9Vc2Vycy9hbG1hL0RvY3VtZW50cy9OZWFoTmV3L25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvY2xpZW50LXBhZ2UuanNcIik7XG47XG5pbXBvcnQoLyogd2VicGFja01vZGU6IFwiZWFnZXJcIiAqLyBcIi9Vc2Vycy9hbG1hL0RvY3VtZW50cy9OZWFoTmV3L25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvY2xpZW50LXNlZ21lbnQuanNcIik7XG47XG5pbXBvcnQoLyogd2VicGFja01vZGU6IFwiZWFnZXJcIiAqLyBcIi9Vc2Vycy9hbG1hL0RvY3VtZW50cy9OZWFoTmV3L25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvZXJyb3ItYm91bmRhcnkuanNcIik7XG47XG5pbXBvcnQoLyogd2VicGFja01vZGU6IFwiZWFnZXJcIiAqLyBcIi9Vc2Vycy9hbG1hL0RvY3VtZW50cy9OZWFoTmV3L25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvaHR0cC1hY2Nlc3MtZmFsbGJhY2svZXJyb3ItYm91bmRhcnkuanNcIik7XG47XG5pbXBvcnQoLyogd2VicGFja01vZGU6IFwiZWFnZXJcIiAqLyBcIi9Vc2Vycy9hbG1hL0RvY3VtZW50cy9OZWFoTmV3L25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvbGF5b3V0LXJvdXRlci5qc1wiKTtcbjtcbmltcG9ydCgvKiB3ZWJwYWNrTW9kZTogXCJlYWdlclwiICovIFwiL1VzZXJzL2FsbWEvRG9jdW1lbnRzL05lYWhOZXcvbm9kZV9tb2R1bGVzL25leHQvZGlzdC9jbGllbnQvY29tcG9uZW50cy9tZXRhZGF0YS9hc3luYy1tZXRhZGF0YS5qc1wiKTtcbjtcbmltcG9ydCgvKiB3ZWJwYWNrTW9kZTogXCJlYWdlclwiICovIFwiL1VzZXJzL2FsbWEvRG9jdW1lbnRzL05lYWhOZXcvbm9kZV9tb2R1bGVzL25leHQvZGlzdC9jbGllbnQvY29tcG9uZW50cy9tZXRhZGF0YS9tZXRhZGF0YS1ib3VuZGFyeS5qc1wiKTtcbjtcbmltcG9ydCgvKiB3ZWJwYWNrTW9kZTogXCJlYWdlclwiICovIFwiL1VzZXJzL2FsbWEvRG9jdW1lbnRzL05lYWhOZXcvbm9kZV9tb2R1bGVzL25leHQvZGlzdC9jbGllbnQvY29tcG9uZW50cy9yZW5kZXItZnJvbS10ZW1wbGF0ZS1jb250ZXh0LmpzXCIpO1xuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/next/dist/build/webpack/loaders/next-flight-client-entry-loader.js?modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fclient-page.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fclient-segment.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Ferror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fhttp-access-fallback%2Ferror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Flayout-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fmetadata%2Fasync-metadata.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fmetadata%2Fmetadata-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Frender-from-template-context.js%22%2C%22ids%22%3A%5B%5D%7D&server=true!\n");
/***/ }),
/***/ "(ssr)/./app/page.tsx":
/*!**********************!*\
!*** ./app/page.tsx ***!
\**********************/
/***/ ((__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 */ Home)\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/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 _components_quote_card__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @/components/quote-card */ \"(ssr)/./components/quote-card.tsx\");\n/* harmony import */ var _components_calendar__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/components/calendar */ \"(ssr)/./components/calendar.tsx\");\n/* harmony import */ var _components_news__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/components/news */ \"(ssr)/./components/news.tsx\");\n/* harmony import */ var _components_flow__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @/components/flow */ \"(ssr)/./components/flow.tsx\");\n/* harmony import */ var _components_email__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/components/email */ \"(ssr)/./components/email.tsx\");\n/* harmony import */ var _components_parole__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @/components/parole */ \"(ssr)/./components/parole.tsx\");\n/* harmony import */ var next_auth_react__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! next-auth/react */ \"(ssr)/./node_modules/next-auth/react/index.js\");\n/* harmony import */ var next_auth_react__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(next_auth_react__WEBPACK_IMPORTED_MODULE_7__);\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/route-modules/app-page/vendored/ssr/react.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_8__);\n/* __next_internal_client_entry_do_not_use__ default auto */ \n\n\n\n\n\n\n\n\nfunction Home() {\n const { data: session, status } = (0,next_auth_react__WEBPACK_IMPORTED_MODULE_7__.useSession)();\n const [isLoading, setIsLoading] = (0,react__WEBPACK_IMPORTED_MODULE_8__.useState)(true);\n (0,react__WEBPACK_IMPORTED_MODULE_8__.useEffect)({\n \"Home.useEffect\": ()=>{\n if (status !== \"loading\") {\n setIsLoading(false);\n }\n }\n }[\"Home.useEffect\"], [\n status\n ]);\n if (isLoading) {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"main\", {\n className: \"h-screen flex items-center justify-center\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"animate-spin rounded-full h-32 w-32 border-t-2 border-b-2 border-gray-900\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/app/page.tsx\",\n lineNumber: 25,\n columnNumber: 9\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/app/page.tsx\",\n lineNumber: 24,\n columnNumber: 7\n }, this);\n }\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"main\", {\n className: \"h-screen overflow-auto\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"container mx-auto p-4 mt-12\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"grid grid-cols-12 gap-4 mb-4\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"col-span-3\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_quote_card__WEBPACK_IMPORTED_MODULE_1__.QuoteCard, {}, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/app/page.tsx\",\n lineNumber: 36,\n columnNumber: 13\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/app/page.tsx\",\n lineNumber: 35,\n columnNumber: 11\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"col-span-3\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_calendar__WEBPACK_IMPORTED_MODULE_2__.Calendar, {}, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/app/page.tsx\",\n lineNumber: 39,\n columnNumber: 13\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/app/page.tsx\",\n lineNumber: 38,\n columnNumber: 11\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"col-span-3\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_news__WEBPACK_IMPORTED_MODULE_3__.News, {}, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/app/page.tsx\",\n lineNumber: 42,\n columnNumber: 13\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/app/page.tsx\",\n lineNumber: 41,\n columnNumber: 11\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"col-span-3\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_flow__WEBPACK_IMPORTED_MODULE_4__.Duties, {}, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/app/page.tsx\",\n lineNumber: 45,\n columnNumber: 13\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/app/page.tsx\",\n lineNumber: 44,\n columnNumber: 11\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/app/page.tsx\",\n lineNumber: 34,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"grid grid-cols-12 gap-4\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"col-span-6\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_email__WEBPACK_IMPORTED_MODULE_5__.Email, {}, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/app/page.tsx\",\n lineNumber: 52,\n columnNumber: 13\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/app/page.tsx\",\n lineNumber: 51,\n columnNumber: 11\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"col-span-6\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_parole__WEBPACK_IMPORTED_MODULE_6__.Parole, {}, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/app/page.tsx\",\n lineNumber: 55,\n columnNumber: 13\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/app/page.tsx\",\n lineNumber: 54,\n columnNumber: 11\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/app/page.tsx\",\n lineNumber: 50,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/app/page.tsx\",\n lineNumber: 32,\n columnNumber: 7\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/app/page.tsx\",\n lineNumber: 31,\n columnNumber: 5\n }, this);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9hcHAvcGFnZS50c3giLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFb0Q7QUFDSDtBQUNSO0FBQ0U7QUFDQTtBQUNFO0FBQ0E7QUFDRDtBQUU3QixTQUFTUztJQUN0QixNQUFNLEVBQUVDLE1BQU1DLE9BQU8sRUFBRUMsTUFBTSxFQUFFLEdBQUdOLDJEQUFVQTtJQUM1QyxNQUFNLENBQUNPLFdBQVdDLGFBQWEsR0FBR04sK0NBQVFBLENBQUM7SUFFM0NELGdEQUFTQTswQkFBQztZQUNSLElBQUlLLFdBQVcsV0FBVztnQkFDeEJFLGFBQWE7WUFDZjtRQUNGO3lCQUFHO1FBQUNGO0tBQU87SUFFWCxJQUFJQyxXQUFXO1FBQ2IscUJBQ0UsOERBQUNFO1lBQUtDLFdBQVU7c0JBQ2QsNEVBQUNDO2dCQUFJRCxXQUFVOzs7Ozs7Ozs7OztJQUdyQjtJQUVBLHFCQUNFLDhEQUFDRDtRQUFLQyxXQUFVO2tCQUNkLDRFQUFDQztZQUFJRCxXQUFVOzs4QkFFYiw4REFBQ0M7b0JBQUlELFdBQVU7O3NDQUNiLDhEQUFDQzs0QkFBSUQsV0FBVTtzQ0FDYiw0RUFBQ2hCLDZEQUFTQTs7Ozs7Ozs7OztzQ0FFWiw4REFBQ2lCOzRCQUFJRCxXQUFVO3NDQUNiLDRFQUFDZiwwREFBUUE7Ozs7Ozs7Ozs7c0NBRVgsOERBQUNnQjs0QkFBSUQsV0FBVTtzQ0FDYiw0RUFBQ2Qsa0RBQUlBOzs7Ozs7Ozs7O3NDQUVQLDhEQUFDZTs0QkFBSUQsV0FBVTtzQ0FDYiw0RUFBQ2Isb0RBQU1BOzs7Ozs7Ozs7Ozs7Ozs7OzhCQUtYLDhEQUFDYztvQkFBSUQsV0FBVTs7c0NBQ2IsOERBQUNDOzRCQUFJRCxXQUFVO3NDQUNiLDRFQUFDWixvREFBS0E7Ozs7Ozs7Ozs7c0NBRVIsOERBQUNhOzRCQUFJRCxXQUFVO3NDQUNiLDRFQUFDWCxzREFBTUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQU1uQiIsInNvdXJjZXMiOlsiL1VzZXJzL2FsbWEvRG9jdW1lbnRzL05lYWhOZXcvYXBwL3BhZ2UudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIGNsaWVudFwiO1xuXG5pbXBvcnQgeyBRdW90ZUNhcmQgfSBmcm9tIFwiQC9jb21wb25lbnRzL3F1b3RlLWNhcmRcIjtcbmltcG9ydCB7IENhbGVuZGFyIH0gZnJvbSBcIkAvY29tcG9uZW50cy9jYWxlbmRhclwiO1xuaW1wb3J0IHsgTmV3cyB9IGZyb20gXCJAL2NvbXBvbmVudHMvbmV3c1wiO1xuaW1wb3J0IHsgRHV0aWVzIH0gZnJvbSBcIkAvY29tcG9uZW50cy9mbG93XCI7XG5pbXBvcnQgeyBFbWFpbCB9IGZyb20gXCJAL2NvbXBvbmVudHMvZW1haWxcIjtcbmltcG9ydCB7IFBhcm9sZSB9IGZyb20gXCJAL2NvbXBvbmVudHMvcGFyb2xlXCI7XG5pbXBvcnQgeyB1c2VTZXNzaW9uIH0gZnJvbSBcIm5leHQtYXV0aC9yZWFjdFwiO1xuaW1wb3J0IHsgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBIb21lKCkge1xuICBjb25zdCB7IGRhdGE6IHNlc3Npb24sIHN0YXR1cyB9ID0gdXNlU2Vzc2lvbigpO1xuICBjb25zdCBbaXNMb2FkaW5nLCBzZXRJc0xvYWRpbmddID0gdXNlU3RhdGUodHJ1ZSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoc3RhdHVzICE9PSBcImxvYWRpbmdcIikge1xuICAgICAgc2V0SXNMb2FkaW5nKGZhbHNlKTtcbiAgICB9XG4gIH0sIFtzdGF0dXNdKTtcblxuICBpZiAoaXNMb2FkaW5nKSB7XG4gICAgcmV0dXJuIChcbiAgICAgIDxtYWluIGNsYXNzTmFtZT1cImgtc2NyZWVuIGZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyXCI+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYW5pbWF0ZS1zcGluIHJvdW5kZWQtZnVsbCBoLTMyIHctMzIgYm9yZGVyLXQtMiBib3JkZXItYi0yIGJvcmRlci1ncmF5LTkwMFwiPjwvZGl2PlxuICAgICAgPC9tYWluPlxuICAgICk7XG4gIH1cblxuICByZXR1cm4gKFxuICAgIDxtYWluIGNsYXNzTmFtZT1cImgtc2NyZWVuIG92ZXJmbG93LWF1dG9cIj5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29udGFpbmVyIG14LWF1dG8gcC00IG10LTEyXCI+XG4gICAgICAgIHsvKiBGaXJzdCByb3cgKi99XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZ3JpZCBncmlkLWNvbHMtMTIgZ2FwLTQgbWItNFwiPlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLXNwYW4tM1wiPlxuICAgICAgICAgICAgPFF1b3RlQ2FyZCAvPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLXNwYW4tM1wiPlxuICAgICAgICAgICAgPENhbGVuZGFyIC8+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtc3Bhbi0zXCI+XG4gICAgICAgICAgICA8TmV3cyAvPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sLXNwYW4tM1wiPlxuICAgICAgICAgICAgPER1dGllcyAvPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgXG4gICAgICAgIHsvKiBTZWNvbmQgcm93ICovfVxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImdyaWQgZ3JpZC1jb2xzLTEyIGdhcC00XCI+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb2wtc3Bhbi02XCI+XG4gICAgICAgICAgICA8RW1haWwgLz5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbC1zcGFuLTZcIj5cbiAgICAgICAgICAgIDxQYXJvbGUgLz5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L21haW4+XG4gICk7XG59XG4iXSwibmFtZXMiOlsiUXVvdGVDYXJkIiwiQ2FsZW5kYXIiLCJOZXdzIiwiRHV0aWVzIiwiRW1haWwiLCJQYXJvbGUiLCJ1c2VTZXNzaW9uIiwidXNlRWZmZWN0IiwidXNlU3RhdGUiLCJIb21lIiwiZGF0YSIsInNlc3Npb24iLCJzdGF0dXMiLCJpc0xvYWRpbmciLCJzZXRJc0xvYWRpbmciLCJtYWluIiwiY2xhc3NOYW1lIiwiZGl2Il0sImlnbm9yZUxpc3QiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./app/page.tsx\n");
/***/ }),
/***/ "(ssr)/./components/auth/auth-check.tsx":
/*!****************************************!*\
!*** ./components/auth/auth-check.tsx ***!
\****************************************/
/***/ ((__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 */ AuthCheck: () => (/* binding */ AuthCheck)\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/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 next_auth_react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! next-auth/react */ \"(ssr)/./node_modules/next-auth/react/index.js\");\n/* harmony import */ var next_auth_react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(next_auth_react__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var next_navigation__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! next/navigation */ \"(ssr)/./node_modules/next/dist/api/navigation.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/route-modules/app-page/vendored/ssr/react.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_3__);\n/* __next_internal_client_entry_do_not_use__ AuthCheck auto */ \n\n\n\nfunction AuthCheck({ children }) {\n const { data: session, status } = (0,next_auth_react__WEBPACK_IMPORTED_MODULE_1__.useSession)();\n const pathname = (0,next_navigation__WEBPACK_IMPORTED_MODULE_2__.usePathname)();\n const router = (0,next_navigation__WEBPACK_IMPORTED_MODULE_2__.useRouter)();\n (0,react__WEBPACK_IMPORTED_MODULE_3__.useEffect)({\n \"AuthCheck.useEffect\": ()=>{\n if (status === \"unauthenticated\" && pathname !== \"/signin\") {\n router.push(\"/signin\");\n }\n }\n }[\"AuthCheck.useEffect\"], [\n status,\n router,\n pathname\n ]);\n if (status === \"loading\") {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n children: \"Chargement...\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/auth/auth-check.tsx\",\n lineNumber: 19,\n columnNumber: 12\n }, this);\n }\n if (status === \"unauthenticated\" && pathname !== \"/signin\") {\n return null;\n }\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, {\n children: children\n }, void 0, false);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9jb21wb25lbnRzL2F1dGgvYXV0aC1jaGVjay50c3giLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBRTZDO0FBQ1k7QUFDdkI7QUFFM0IsU0FBU0ksVUFBVSxFQUFFQyxRQUFRLEVBQWlDO0lBQ25FLE1BQU0sRUFBRUMsTUFBTUMsT0FBTyxFQUFFQyxNQUFNLEVBQUUsR0FBR1IsMkRBQVVBO0lBQzVDLE1BQU1TLFdBQVdSLDREQUFXQTtJQUM1QixNQUFNUyxTQUFTUiwwREFBU0E7SUFFeEJDLGdEQUFTQTsrQkFBQztZQUNSLElBQUlLLFdBQVcscUJBQXFCQyxhQUFhLFdBQVc7Z0JBQzFEQyxPQUFPQyxJQUFJLENBQUM7WUFDZDtRQUNGOzhCQUFHO1FBQUNIO1FBQVFFO1FBQVFEO0tBQVM7SUFFN0IsSUFBSUQsV0FBVyxXQUFXO1FBQ3hCLHFCQUFPLDhEQUFDSTtzQkFBSTs7Ozs7O0lBQ2Q7SUFFQSxJQUFJSixXQUFXLHFCQUFxQkMsYUFBYSxXQUFXO1FBQzFELE9BQU87SUFDVDtJQUVBLHFCQUFPO2tCQUFHSjs7QUFDWiIsInNvdXJjZXMiOlsiL1VzZXJzL2FsbWEvRG9jdW1lbnRzL05lYWhOZXcvY29tcG9uZW50cy9hdXRoL2F1dGgtY2hlY2sudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIGNsaWVudFwiO1xuXG5pbXBvcnQgeyB1c2VTZXNzaW9uIH0gZnJvbSBcIm5leHQtYXV0aC9yZWFjdFwiO1xuaW1wb3J0IHsgdXNlUGF0aG5hbWUsIHVzZVJvdXRlciB9IGZyb20gXCJuZXh0L25hdmlnYXRpb25cIjtcbmltcG9ydCB7IHVzZUVmZmVjdCB9IGZyb20gXCJyZWFjdFwiO1xuXG5leHBvcnQgZnVuY3Rpb24gQXV0aENoZWNrKHsgY2hpbGRyZW4gfTogeyBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlIH0pIHtcbiAgY29uc3QgeyBkYXRhOiBzZXNzaW9uLCBzdGF0dXMgfSA9IHVzZVNlc3Npb24oKTtcbiAgY29uc3QgcGF0aG5hbWUgPSB1c2VQYXRobmFtZSgpO1xuICBjb25zdCByb3V0ZXIgPSB1c2VSb3V0ZXIoKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChzdGF0dXMgPT09IFwidW5hdXRoZW50aWNhdGVkXCIgJiYgcGF0aG5hbWUgIT09IFwiL3NpZ25pblwiKSB7XG4gICAgICByb3V0ZXIucHVzaChcIi9zaWduaW5cIik7XG4gICAgfVxuICB9LCBbc3RhdHVzLCByb3V0ZXIsIHBhdGhuYW1lXSk7XG5cbiAgaWYgKHN0YXR1cyA9PT0gXCJsb2FkaW5nXCIpIHtcbiAgICByZXR1cm4gPGRpdj5DaGFyZ2VtZW50Li4uPC9kaXY+O1xuICB9XG5cbiAgaWYgKHN0YXR1cyA9PT0gXCJ1bmF1dGhlbnRpY2F0ZWRcIiAmJiBwYXRobmFtZSAhPT0gXCIvc2lnbmluXCIpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHJldHVybiA8PntjaGlsZHJlbn08Lz47XG59ICJdLCJuYW1lcyI6WyJ1c2VTZXNzaW9uIiwidXNlUGF0aG5hbWUiLCJ1c2VSb3V0ZXIiLCJ1c2VFZmZlY3QiLCJBdXRoQ2hlY2siLCJjaGlsZHJlbiIsImRhdGEiLCJzZXNzaW9uIiwic3RhdHVzIiwicGF0aG5hbWUiLCJyb3V0ZXIiLCJwdXNoIiwiZGl2Il0sImlnbm9yZUxpc3QiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./components/auth/auth-check.tsx\n");
/***/ }),
/***/ "(ssr)/./components/background-switcher.tsx":
/*!********************************************!*\
!*** ./components/background-switcher.tsx ***!
\********************************************/
/***/ ((__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 */ BackgroundSwitcher: () => (/* binding */ BackgroundSwitcher),\n/* harmony export */ useBackgroundImage: () => (/* binding */ useBackgroundImage)\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/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/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/* __next_internal_client_entry_do_not_use__ useBackgroundImage,BackgroundSwitcher auto */ \n\nconst backgroundImages = [\n \"/background/Autumn birger-strahl-6YZgnYaPD5s-unsplash.jpeg\",\n \"/background/Moneral tobias-reich-VltYe88rkt8-unsplash.jpeg\",\n \"/background/aaron-burden-cGW1w-qLix8-unsplash.jpg\",\n \"/background/aaron-burden-xtIYGB0KEqc-unsplash.jpg\",\n \"/background/art credit library-of-congress-ULl31hxiehE-unsplash.jpeg\",\n \"/background/art-institute-of-chicago-fayEVJ03T7M-unsplash.jpg\",\n \"/background/art-institute-of-chicago-j-3IgXK3iJg-unsplash.jpg\",\n \"/background/art-institute-of-chicago-ueWnHtoaplI-unsplash.jpg\",\n \"/background/art-institute-of-chicago-yIgLfU6EEBw-unsplash.jpg\",\n \"/background/birmingham-museums-trust-M9ryRhN4YSI-unsplash.jpg\",\n \"/background/david-ramirez-LC7lLC9jDzw-unsplash.jpg\",\n \"/background/europeana-HDIOpM_XXbI-unsplash.jpg\",\n \"/background/gabor-juhasz-B1Zyw7sdm5w-unsplash.jpg\",\n \"/background/gonzalo-mendiola-XXCrAQgQnVw-unsplash.jpg\",\n \"/background/ian-keefe-OgcJIKRnRC8-unsplash.jpg\",\n \"/background/japan credit dale-scogings-_SBsVi4kmkY-unsplash.jpeg\",\n \"/background/japan credit david-edelstein-N4DbvTUDikw-unsplash.jpeg\",\n \"/background/japan credit falco-negenman-K8MMfFifWcE-unsplash.jpeg\",\n \"/background/japan credit galen-crout-0_xMuEbpFAQ-unsplash.jpeg\",\n \"/background/japan credit gilly-cLnFkSji734-unsplash.jpeg\",\n \"/background/japan credit matthew-buchanan-VVi59Xtsd8Y-unsplash.jpeg\",\n \"/background/japan credit redd-f-Bxzrd0p6yOM-unsplash.jpeg\",\n \"/background/japan credit redd-f-wPMvPMD9KBI-unsplash.jpeg\",\n \"/background/japan credit sorasak-_UIN-pFfJ7c-unsplash.jpeg\",\n \"/background/japan credittianshu-liu-SBK40fdKbAg-unsplash.jpeg\",\n \"/background/japan.jpeg\",\n \"/background/joel-holland-TRhGEGdw-YY-unsplash.jpg\",\n \"/background/marko-blazevic-S7mAngnWV1A-unsplash.jpg\",\n \"/background/museum-of-new-zealand-te-papa-tongarewa-h2qlQSm7N-0-unsplash.jpg\",\n \"/background/redd-f-Lm5rkxzgiFQ-unsplash.jpg\",\n \"/background/spencer-davis-ONVA6s03hg8-unsplash.jpg\",\n \"/background/summer credit spencer-everett-DdVOCPTofFc-unsplash.jpeg\",\n \"/background/summer.jpeg\",\n \"/background/sylvain-mauroux-jYCUBAIUsk8-unsplash.jpg\",\n \"/background/the-cleveland-museum-of-art-6uIO1CNv3Vc-unsplash.jpg\",\n \"/background/the-cleveland-museum-of-art-Tl9uudd4DOE-unsplash.jpg\",\n \"/background/the-cleveland-museum-of-art-WQOzF8TSnRQ-unsplash.jpg\",\n \"/background/tingfeng-xia-WwKrhith4l4-unsplash.jpg\",\n \"/background/vegetal credit yuya-murakami-VkcD1QxtY4A-unsplash.jpeg\",\n \"/background/vegetal ryunosuke-kikuno-U8_eaHSUwdw-unsplash.jpeg\"\n];\nfunction useBackgroundImage() {\n const [currentBackground, setCurrentBackground] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(backgroundImages[0]);\n const changeBackground = ()=>{\n const currentIndex = backgroundImages.indexOf(currentBackground);\n const nextIndex = (currentIndex + 1) % backgroundImages.length;\n setCurrentBackground(backgroundImages[nextIndex]);\n };\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)({\n \"useBackgroundImage.useEffect\": ()=>{\n // Set initial random background\n const randomIndex = Math.floor(Math.random() * backgroundImages.length);\n setCurrentBackground(backgroundImages[randomIndex]);\n }\n }[\"useBackgroundImage.useEffect\"], []);\n return {\n currentBackground,\n changeBackground\n };\n}\nfunction BackgroundSwitcher({ children }) {\n const [background, setBackground] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(\"\");\n const [imageError, setImageError] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n // Function to preload an image\n const preloadImage = (src)=>{\n return new Promise((resolve, reject)=>{\n const img = new Image();\n img.src = src;\n img.onload = ()=>resolve(src);\n img.onerror = ()=>reject(new Error(`Failed to load image: ${src}`));\n });\n };\n const getRandomBackground = async ()=>{\n let attempts = 0;\n const maxAttempts = backgroundImages.length;\n while(attempts < maxAttempts){\n try {\n const randomIndex = Math.floor(Math.random() * backgroundImages.length);\n const newBackground = backgroundImages[randomIndex];\n if (newBackground !== background) {\n // Try to preload the image\n await preloadImage(newBackground);\n console.log(\"Successfully loaded:\", newBackground);\n return newBackground;\n }\n } catch (error) {\n console.error(\"Failed to load image:\", error);\n }\n attempts++;\n }\n // If all attempts fail, return the first image as fallback\n return backgroundImages[0];\n };\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)({\n \"BackgroundSwitcher.useEffect\": ()=>{\n const initBackground = {\n \"BackgroundSwitcher.useEffect.initBackground\": async ()=>{\n try {\n const newBg = await getRandomBackground();\n setBackground(newBg);\n setImageError(false);\n } catch (error) {\n console.error(\"Error setting initial background:\", error);\n setImageError(true);\n }\n }\n }[\"BackgroundSwitcher.useEffect.initBackground\"];\n initBackground();\n }\n }[\"BackgroundSwitcher.useEffect\"], []);\n const handleClick = async (e)=>{\n if (e.target === e.currentTarget) {\n try {\n const newBg = await getRandomBackground();\n console.log(\"Changing background to:\", newBg);\n setBackground(newBg);\n setImageError(false);\n } catch (error) {\n console.error(\"Error changing background:\", error);\n setImageError(true);\n }\n }\n };\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"min-h-screen relative\",\n onClick: handleClick,\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"fixed inset-0 z-0 transition-opacity duration-500\",\n style: {\n backgroundImage: `url(${background})`,\n backgroundSize: 'cover',\n backgroundPosition: 'center',\n opacity: imageError ? 0 : 0.3\n }\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/background-switcher.tsx\",\n lineNumber: 140,\n columnNumber: 7\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"relative z-10\",\n children: children\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/background-switcher.tsx\",\n lineNumber: 151,\n columnNumber: 7\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/background-switcher.tsx\",\n lineNumber: 135,\n columnNumber: 5\n }, this);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9jb21wb25lbnRzL2JhY2tncm91bmQtc3dpdGNoZXIudHN4IiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFFNEM7QUFFNUMsTUFBTUUsbUJBQW1CO0lBQ3ZCO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0NBQ0Q7QUFFTSxTQUFTQztJQUNkLE1BQU0sQ0FBQ0MsbUJBQW1CQyxxQkFBcUIsR0FBR0wsK0NBQVFBLENBQUNFLGdCQUFnQixDQUFDLEVBQUU7SUFFOUUsTUFBTUksbUJBQW1CO1FBQ3ZCLE1BQU1DLGVBQWVMLGlCQUFpQk0sT0FBTyxDQUFDSjtRQUM5QyxNQUFNSyxZQUFZLENBQUNGLGVBQWUsS0FBS0wsaUJBQWlCUSxNQUFNO1FBQzlETCxxQkFBcUJILGdCQUFnQixDQUFDTyxVQUFVO0lBQ2xEO0lBRUFSLGdEQUFTQTt3Q0FBQztZQUNSLGdDQUFnQztZQUNoQyxNQUFNVSxjQUFjQyxLQUFLQyxLQUFLLENBQUNELEtBQUtFLE1BQU0sS0FBS1osaUJBQWlCUSxNQUFNO1lBQ3RFTCxxQkFBcUJILGdCQUFnQixDQUFDUyxZQUFZO1FBQ3BEO3VDQUFHLEVBQUU7SUFFTCxPQUFPO1FBQUVQO1FBQW1CRTtJQUFpQjtBQUMvQztBQUVPLFNBQVNTLG1CQUFtQixFQUFFQyxRQUFRLEVBQWlDO0lBQzVFLE1BQU0sQ0FBQ0MsWUFBWUMsY0FBYyxHQUFHbEIsK0NBQVFBLENBQUM7SUFDN0MsTUFBTSxDQUFDbUIsWUFBWUMsY0FBYyxHQUFHcEIsK0NBQVFBLENBQUM7SUFFN0MsK0JBQStCO0lBQy9CLE1BQU1xQixlQUFlLENBQUNDO1FBQ3BCLE9BQU8sSUFBSUMsUUFBUSxDQUFDQyxTQUFTQztZQUMzQixNQUFNQyxNQUFNLElBQUlDO1lBQ2hCRCxJQUFJSixHQUFHLEdBQUdBO1lBQ1ZJLElBQUlFLE1BQU0sR0FBRyxJQUFNSixRQUFRRjtZQUMzQkksSUFBSUcsT0FBTyxHQUFHLElBQU1KLE9BQU8sSUFBSUssTUFBTSxDQUFDLHNCQUFzQixFQUFFUixLQUFLO1FBQ3JFO0lBQ0Y7SUFFQSxNQUFNUyxzQkFBc0I7UUFDMUIsSUFBSUMsV0FBVztRQUNmLE1BQU1DLGNBQWMvQixpQkFBaUJRLE1BQU07UUFFM0MsTUFBT3NCLFdBQVdDLFlBQWE7WUFDN0IsSUFBSTtnQkFDRixNQUFNdEIsY0FBY0MsS0FBS0MsS0FBSyxDQUFDRCxLQUFLRSxNQUFNLEtBQUtaLGlCQUFpQlEsTUFBTTtnQkFDdEUsTUFBTXdCLGdCQUFnQmhDLGdCQUFnQixDQUFDUyxZQUFZO2dCQUVuRCxJQUFJdUIsa0JBQWtCakIsWUFBWTtvQkFDaEMsMkJBQTJCO29CQUMzQixNQUFNSSxhQUFhYTtvQkFDbkJDLFFBQVFDLEdBQUcsQ0FBQyx3QkFBd0JGO29CQUNwQyxPQUFPQTtnQkFDVDtZQUNGLEVBQUUsT0FBT0csT0FBTztnQkFDZEYsUUFBUUUsS0FBSyxDQUFDLHlCQUF5QkE7WUFDekM7WUFDQUw7UUFDRjtRQUVBLDJEQUEyRDtRQUMzRCxPQUFPOUIsZ0JBQWdCLENBQUMsRUFBRTtJQUM1QjtJQUVBRCxnREFBU0E7d0NBQUM7WUFDUixNQUFNcUM7K0RBQWlCO29CQUNyQixJQUFJO3dCQUNGLE1BQU1DLFFBQVEsTUFBTVI7d0JBQ3BCYixjQUFjcUI7d0JBQ2RuQixjQUFjO29CQUNoQixFQUFFLE9BQU9pQixPQUFPO3dCQUNkRixRQUFRRSxLQUFLLENBQUMscUNBQXFDQTt3QkFDbkRqQixjQUFjO29CQUNoQjtnQkFDRjs7WUFFQWtCO1FBQ0Y7dUNBQUcsRUFBRTtJQUVMLE1BQU1FLGNBQWMsT0FBT0M7UUFDekIsSUFBSUEsRUFBRUMsTUFBTSxLQUFLRCxFQUFFRSxhQUFhLEVBQUU7WUFDaEMsSUFBSTtnQkFDRixNQUFNSixRQUFRLE1BQU1SO2dCQUNwQkksUUFBUUMsR0FBRyxDQUFDLDJCQUEyQkc7Z0JBQ3ZDckIsY0FBY3FCO2dCQUNkbkIsY0FBYztZQUNoQixFQUFFLE9BQU9pQixPQUFPO2dCQUNkRixRQUFRRSxLQUFLLENBQUMsOEJBQThCQTtnQkFDNUNqQixjQUFjO1lBQ2hCO1FBQ0Y7SUFDRjtJQUVBLHFCQUNFLDhEQUFDd0I7UUFDQ0MsV0FBVTtRQUNWQyxTQUFTTjs7MEJBR1QsOERBQUNJO2dCQUNDQyxXQUFVO2dCQUNWRSxPQUFPO29CQUNMQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUvQixXQUFXLENBQUMsQ0FBQztvQkFDckNnQyxnQkFBZ0I7b0JBQ2hCQyxvQkFBb0I7b0JBQ3BCQyxTQUFTaEMsYUFBYSxJQUFJO2dCQUM1Qjs7Ozs7OzBCQUlGLDhEQUFDeUI7Z0JBQUlDLFdBQVU7MEJBQ1o3Qjs7Ozs7Ozs7Ozs7O0FBSVQiLCJzb3VyY2VzIjpbIi9Vc2Vycy9hbG1hL0RvY3VtZW50cy9OZWFoTmV3L2NvbXBvbmVudHMvYmFja2dyb3VuZC1zd2l0Y2hlci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2UgY2xpZW50XCI7XG5cbmltcG9ydCB7IHVzZVN0YXRlLCB1c2VFZmZlY3QgfSBmcm9tIFwicmVhY3RcIjtcblxuY29uc3QgYmFja2dyb3VuZEltYWdlcyA9IFtcbiAgXCIvYmFja2dyb3VuZC9BdXR1bW4gYmlyZ2VyLXN0cmFobC02WVpnbllhUEQ1cy11bnNwbGFzaC5qcGVnXCIsXG4gIFwiL2JhY2tncm91bmQvTW9uZXJhbCB0b2JpYXMtcmVpY2gtVmx0WWU4OHJrdDgtdW5zcGxhc2guanBlZ1wiLFxuICBcIi9iYWNrZ3JvdW5kL2Fhcm9uLWJ1cmRlbi1jR1cxdy1xTGl4OC11bnNwbGFzaC5qcGdcIixcbiAgXCIvYmFja2dyb3VuZC9hYXJvbi1idXJkZW4teHRJWUdCMEtFcWMtdW5zcGxhc2guanBnXCIsXG4gIFwiL2JhY2tncm91bmQvYXJ0IGNyZWRpdCBsaWJyYXJ5LW9mLWNvbmdyZXNzLVVMbDMxaHhpZWhFLXVuc3BsYXNoLmpwZWdcIixcbiAgXCIvYmFja2dyb3VuZC9hcnQtaW5zdGl0dXRlLW9mLWNoaWNhZ28tZmF5RVZKMDNUN00tdW5zcGxhc2guanBnXCIsXG4gIFwiL2JhY2tncm91bmQvYXJ0LWluc3RpdHV0ZS1vZi1jaGljYWdvLWotM0lnWEszaUpnLXVuc3BsYXNoLmpwZ1wiLFxuICBcIi9iYWNrZ3JvdW5kL2FydC1pbnN0aXR1dGUtb2YtY2hpY2Fnby11ZVduSHRvYXBsSS11bnNwbGFzaC5qcGdcIixcbiAgXCIvYmFja2dyb3VuZC9hcnQtaW5zdGl0dXRlLW9mLWNoaWNhZ28teUlnTGZVNkVFQnctdW5zcGxhc2guanBnXCIsXG4gIFwiL2JhY2tncm91bmQvYmlybWluZ2hhbS1tdXNldW1zLXRydXN0LU05cnlSaE40WVNJLXVuc3BsYXNoLmpwZ1wiLFxuICBcIi9iYWNrZ3JvdW5kL2RhdmlkLXJhbWlyZXotTEM3bExDOWpEenctdW5zcGxhc2guanBnXCIsXG4gIFwiL2JhY2tncm91bmQvZXVyb3BlYW5hLUhESU9wTV9YWGJJLXVuc3BsYXNoLmpwZ1wiLFxuICBcIi9iYWNrZ3JvdW5kL2dhYm9yLWp1aGFzei1CMVp5dzdzZG01dy11bnNwbGFzaC5qcGdcIixcbiAgXCIvYmFja2dyb3VuZC9nb256YWxvLW1lbmRpb2xhLVhYQ3JBUWdRblZ3LXVuc3BsYXNoLmpwZ1wiLFxuICBcIi9iYWNrZ3JvdW5kL2lhbi1rZWVmZS1PZ2NKSUtSblJDOC11bnNwbGFzaC5qcGdcIixcbiAgXCIvYmFja2dyb3VuZC9qYXBhbiBjcmVkaXQgZGFsZS1zY29naW5ncy1fU0JzVmk0a21rWS11bnNwbGFzaC5qcGVnXCIsXG4gIFwiL2JhY2tncm91bmQvamFwYW4gY3JlZGl0IGRhdmlkLWVkZWxzdGVpbi1ONERidlRVRGlrdy11bnNwbGFzaC5qcGVnXCIsXG4gIFwiL2JhY2tncm91bmQvamFwYW4gY3JlZGl0IGZhbGNvLW5lZ2VubWFuLUs4TU1mRmlmV2NFLXVuc3BsYXNoLmpwZWdcIixcbiAgXCIvYmFja2dyb3VuZC9qYXBhbiBjcmVkaXQgZ2FsZW4tY3JvdXQtMF94TXVFYnBGQVEtdW5zcGxhc2guanBlZ1wiLFxuICBcIi9iYWNrZ3JvdW5kL2phcGFuIGNyZWRpdCBnaWxseS1jTG5Ga1NqaTczNC11bnNwbGFzaC5qcGVnXCIsXG4gIFwiL2JhY2tncm91bmQvamFwYW4gY3JlZGl0IG1hdHRoZXctYnVjaGFuYW4tVlZpNTlYdHNkOFktdW5zcGxhc2guanBlZ1wiLFxuICBcIi9iYWNrZ3JvdW5kL2phcGFuIGNyZWRpdCByZWRkLWYtQnh6cmQwcDZ5T00tdW5zcGxhc2guanBlZ1wiLFxuICBcIi9iYWNrZ3JvdW5kL2phcGFuIGNyZWRpdCByZWRkLWYtd1BNdlBNRDlLQkktdW5zcGxhc2guanBlZ1wiLFxuICBcIi9iYWNrZ3JvdW5kL2phcGFuIGNyZWRpdCBzb3Jhc2FrLV9VSU4tcEZmSjdjLXVuc3BsYXNoLmpwZWdcIixcbiAgXCIvYmFja2dyb3VuZC9qYXBhbiBjcmVkaXR0aWFuc2h1LWxpdS1TQks0MGZkS2JBZy11bnNwbGFzaC5qcGVnXCIsXG4gIFwiL2JhY2tncm91bmQvamFwYW4uanBlZ1wiLFxuICBcIi9iYWNrZ3JvdW5kL2pvZWwtaG9sbGFuZC1UUmhHRUdkdy1ZWS11bnNwbGFzaC5qcGdcIixcbiAgXCIvYmFja2dyb3VuZC9tYXJrby1ibGF6ZXZpYy1TN21BbmduV1YxQS11bnNwbGFzaC5qcGdcIixcbiAgXCIvYmFja2dyb3VuZC9tdXNldW0tb2YtbmV3LXplYWxhbmQtdGUtcGFwYS10b25nYXJld2EtaDJxbFFTbTdOLTAtdW5zcGxhc2guanBnXCIsXG4gIFwiL2JhY2tncm91bmQvcmVkZC1mLUxtNXJreHpnaUZRLXVuc3BsYXNoLmpwZ1wiLFxuICBcIi9iYWNrZ3JvdW5kL3NwZW5jZXItZGF2aXMtT05WQTZzMDNoZzgtdW5zcGxhc2guanBnXCIsXG4gIFwiL2JhY2tncm91bmQvc3VtbWVyIGNyZWRpdCBzcGVuY2VyLWV2ZXJldHQtRGRWT0NQVG9mRmMtdW5zcGxhc2guanBlZ1wiLFxuICBcIi9iYWNrZ3JvdW5kL3N1bW1lci5qcGVnXCIsXG4gIFwiL2JhY2tncm91bmQvc3lsdmFpbi1tYXVyb3V4LWpZQ1VCQUlVc2s4LXVuc3BsYXNoLmpwZ1wiLFxuICBcIi9iYWNrZ3JvdW5kL3RoZS1jbGV2ZWxhbmQtbXVzZXVtLW9mLWFydC02dUlPMUNOdjNWYy11bnNwbGFzaC5qcGdcIixcbiAgXCIvYmFja2dyb3VuZC90aGUtY2xldmVsYW5kLW11c2V1bS1vZi1hcnQtVGw5dXVkZDRET0UtdW5zcGxhc2guanBnXCIsXG4gIFwiL2JhY2tncm91bmQvdGhlLWNsZXZlbGFuZC1tdXNldW0tb2YtYXJ0LVdRT3pGOFRTblJRLXVuc3BsYXNoLmpwZ1wiLFxuICBcIi9iYWNrZ3JvdW5kL3RpbmdmZW5nLXhpYS1Xd0tyaGl0aDRsNC11bnNwbGFzaC5qcGdcIixcbiAgXCIvYmFja2dyb3VuZC92ZWdldGFsIGNyZWRpdCB5dXlhLW11cmFrYW1pLVZrY0QxUXh0WTRBLXVuc3BsYXNoLmpwZWdcIixcbiAgXCIvYmFja2dyb3VuZC92ZWdldGFsIHJ5dW5vc3VrZS1raWt1bm8tVThfZWFIU1V3ZHctdW5zcGxhc2guanBlZ1wiXG5dO1xuXG5leHBvcnQgZnVuY3Rpb24gdXNlQmFja2dyb3VuZEltYWdlKCkge1xuICBjb25zdCBbY3VycmVudEJhY2tncm91bmQsIHNldEN1cnJlbnRCYWNrZ3JvdW5kXSA9IHVzZVN0YXRlKGJhY2tncm91bmRJbWFnZXNbMF0pO1xuXG4gIGNvbnN0IGNoYW5nZUJhY2tncm91bmQgPSAoKSA9PiB7XG4gICAgY29uc3QgY3VycmVudEluZGV4ID0gYmFja2dyb3VuZEltYWdlcy5pbmRleE9mKGN1cnJlbnRCYWNrZ3JvdW5kKTtcbiAgICBjb25zdCBuZXh0SW5kZXggPSAoY3VycmVudEluZGV4ICsgMSkgJSBiYWNrZ3JvdW5kSW1hZ2VzLmxlbmd0aDtcbiAgICBzZXRDdXJyZW50QmFja2dyb3VuZChiYWNrZ3JvdW5kSW1hZ2VzW25leHRJbmRleF0pO1xuICB9O1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgLy8gU2V0IGluaXRpYWwgcmFuZG9tIGJhY2tncm91bmRcbiAgICBjb25zdCByYW5kb21JbmRleCA9IE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIGJhY2tncm91bmRJbWFnZXMubGVuZ3RoKTtcbiAgICBzZXRDdXJyZW50QmFja2dyb3VuZChiYWNrZ3JvdW5kSW1hZ2VzW3JhbmRvbUluZGV4XSk7XG4gIH0sIFtdKTtcblxuICByZXR1cm4geyBjdXJyZW50QmFja2dyb3VuZCwgY2hhbmdlQmFja2dyb3VuZCB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gQmFja2dyb3VuZFN3aXRjaGVyKHsgY2hpbGRyZW4gfTogeyBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlIH0pIHtcbiAgY29uc3QgW2JhY2tncm91bmQsIHNldEJhY2tncm91bmRdID0gdXNlU3RhdGUoXCJcIik7XG4gIGNvbnN0IFtpbWFnZUVycm9yLCBzZXRJbWFnZUVycm9yXSA9IHVzZVN0YXRlKGZhbHNlKTtcblxuICAvLyBGdW5jdGlvbiB0byBwcmVsb2FkIGFuIGltYWdlXG4gIGNvbnN0IHByZWxvYWRJbWFnZSA9IChzcmM6IHN0cmluZyk6IFByb21pc2U8c3RyaW5nPiA9PiB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgIGNvbnN0IGltZyA9IG5ldyBJbWFnZSgpO1xuICAgICAgaW1nLnNyYyA9IHNyYztcbiAgICAgIGltZy5vbmxvYWQgPSAoKSA9PiByZXNvbHZlKHNyYyk7XG4gICAgICBpbWcub25lcnJvciA9ICgpID0+IHJlamVjdChuZXcgRXJyb3IoYEZhaWxlZCB0byBsb2FkIGltYWdlOiAke3NyY31gKSk7XG4gICAgfSk7XG4gIH07XG5cbiAgY29uc3QgZ2V0UmFuZG9tQmFja2dyb3VuZCA9IGFzeW5jICgpID0+IHtcbiAgICBsZXQgYXR0ZW1wdHMgPSAwO1xuICAgIGNvbnN0IG1heEF0dGVtcHRzID0gYmFja2dyb3VuZEltYWdlcy5sZW5ndGg7XG5cbiAgICB3aGlsZSAoYXR0ZW1wdHMgPCBtYXhBdHRlbXB0cykge1xuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgcmFuZG9tSW5kZXggPSBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiBiYWNrZ3JvdW5kSW1hZ2VzLmxlbmd0aCk7XG4gICAgICAgIGNvbnN0IG5ld0JhY2tncm91bmQgPSBiYWNrZ3JvdW5kSW1hZ2VzW3JhbmRvbUluZGV4XTtcbiAgICAgICAgXG4gICAgICAgIGlmIChuZXdCYWNrZ3JvdW5kICE9PSBiYWNrZ3JvdW5kKSB7XG4gICAgICAgICAgLy8gVHJ5IHRvIHByZWxvYWQgdGhlIGltYWdlXG4gICAgICAgICAgYXdhaXQgcHJlbG9hZEltYWdlKG5ld0JhY2tncm91bmQpO1xuICAgICAgICAgIGNvbnNvbGUubG9nKFwiU3VjY2Vzc2Z1bGx5IGxvYWRlZDpcIiwgbmV3QmFja2dyb3VuZCk7XG4gICAgICAgICAgcmV0dXJuIG5ld0JhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoXCJGYWlsZWQgdG8gbG9hZCBpbWFnZTpcIiwgZXJyb3IpO1xuICAgICAgfVxuICAgICAgYXR0ZW1wdHMrKztcbiAgICB9XG4gICAgXG4gICAgLy8gSWYgYWxsIGF0dGVtcHRzIGZhaWwsIHJldHVybiB0aGUgZmlyc3QgaW1hZ2UgYXMgZmFsbGJhY2tcbiAgICByZXR1cm4gYmFja2dyb3VuZEltYWdlc1swXTtcbiAgfTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IGluaXRCYWNrZ3JvdW5kID0gYXN5bmMgKCkgPT4ge1xuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgbmV3QmcgPSBhd2FpdCBnZXRSYW5kb21CYWNrZ3JvdW5kKCk7XG4gICAgICAgIHNldEJhY2tncm91bmQobmV3QmcpO1xuICAgICAgICBzZXRJbWFnZUVycm9yKGZhbHNlKTtcbiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoXCJFcnJvciBzZXR0aW5nIGluaXRpYWwgYmFja2dyb3VuZDpcIiwgZXJyb3IpO1xuICAgICAgICBzZXRJbWFnZUVycm9yKHRydWUpO1xuICAgICAgfVxuICAgIH07XG5cbiAgICBpbml0QmFja2dyb3VuZCgpO1xuICB9LCBbXSk7XG5cbiAgY29uc3QgaGFuZGxlQ2xpY2sgPSBhc3luYyAoZTogUmVhY3QuTW91c2VFdmVudCkgPT4ge1xuICAgIGlmIChlLnRhcmdldCA9PT0gZS5jdXJyZW50VGFyZ2V0KSB7XG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCBuZXdCZyA9IGF3YWl0IGdldFJhbmRvbUJhY2tncm91bmQoKTtcbiAgICAgICAgY29uc29sZS5sb2coXCJDaGFuZ2luZyBiYWNrZ3JvdW5kIHRvOlwiLCBuZXdCZyk7XG4gICAgICAgIHNldEJhY2tncm91bmQobmV3QmcpO1xuICAgICAgICBzZXRJbWFnZUVycm9yKGZhbHNlKTtcbiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoXCJFcnJvciBjaGFuZ2luZyBiYWNrZ3JvdW5kOlwiLCBlcnJvcik7XG4gICAgICAgIHNldEltYWdlRXJyb3IodHJ1ZSk7XG4gICAgICB9XG4gICAgfVxuICB9O1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBcbiAgICAgIGNsYXNzTmFtZT1cIm1pbi1oLXNjcmVlbiByZWxhdGl2ZVwiXG4gICAgICBvbkNsaWNrPXtoYW5kbGVDbGlja31cbiAgICA+XG4gICAgICB7LyogQmFja2dyb3VuZCBJbWFnZSAqL31cbiAgICAgIDxkaXYgXG4gICAgICAgIGNsYXNzTmFtZT1cImZpeGVkIGluc2V0LTAgei0wIHRyYW5zaXRpb24tb3BhY2l0eSBkdXJhdGlvbi01MDBcIlxuICAgICAgICBzdHlsZT17e1xuICAgICAgICAgIGJhY2tncm91bmRJbWFnZTogYHVybCgke2JhY2tncm91bmR9KWAsXG4gICAgICAgICAgYmFja2dyb3VuZFNpemU6ICdjb3ZlcicsXG4gICAgICAgICAgYmFja2dyb3VuZFBvc2l0aW9uOiAnY2VudGVyJyxcbiAgICAgICAgICBvcGFjaXR5OiBpbWFnZUVycm9yID8gMCA6IDAuM1xuICAgICAgICB9fVxuICAgICAgLz5cbiAgICAgIFxuICAgICAgey8qIENvbnRlbnQgKi99XG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cInJlbGF0aXZlIHotMTBcIj5cbiAgICAgICAge2NoaWxkcmVufVxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICk7XG59ICJdLCJuYW1lcyI6WyJ1c2VTdGF0ZSIsInVzZUVmZmVjdCIsImJhY2tncm91bmRJbWFnZXMiLCJ1c2VCYWNrZ3JvdW5kSW1hZ2UiLCJjdXJyZW50QmFja2dyb3VuZCIsInNldEN1cnJlbnRCYWNrZ3JvdW5kIiwiY2hhbmdlQmFja2dyb3VuZCIsImN1cnJlbnRJbmRleCIsImluZGV4T2YiLCJuZXh0SW5kZXgiLCJsZW5ndGgiLCJyYW5kb21JbmRleCIsIk1hdGgiLCJmbG9vciIsInJhbmRvbSIsIkJhY2tncm91bmRTd2l0Y2hlciIsImNoaWxkcmVuIiwiYmFja2dyb3VuZCIsInNldEJhY2tncm91bmQiLCJpbWFnZUVycm9yIiwic2V0SW1hZ2VFcnJvciIsInByZWxvYWRJbWFnZSIsInNyYyIsIlByb21pc2UiLCJyZXNvbHZlIiwicmVqZWN0IiwiaW1nIiwiSW1hZ2UiLCJvbmxvYWQiLCJvbmVycm9yIiwiRXJyb3IiLCJnZXRSYW5kb21CYWNrZ3JvdW5kIiwiYXR0ZW1wdHMiLCJtYXhBdHRlbXB0cyIsIm5ld0JhY2tncm91bmQiLCJjb25zb2xlIiwibG9nIiwiZXJyb3IiLCJpbml0QmFja2dyb3VuZCIsIm5ld0JnIiwiaGFuZGxlQ2xpY2siLCJlIiwidGFyZ2V0IiwiY3VycmVudFRhcmdldCIsImRpdiIsImNsYXNzTmFtZSIsIm9uQ2xpY2siLCJzdHlsZSIsImJhY2tncm91bmRJbWFnZSIsImJhY2tncm91bmRTaXplIiwiYmFja2dyb3VuZFBvc2l0aW9uIiwib3BhY2l0eSJdLCJpZ25vcmVMaXN0IjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./components/background-switcher.tsx\n");
/***/ }),
/***/ "(ssr)/./components/calendar.tsx":
/*!*********************************!*\
!*** ./components/calendar.tsx ***!
\*********************************/
/***/ ((__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 */ Calendar: () => (/* binding */ Calendar)\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/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/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_card__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/components/ui/card */ \"(ssr)/./components/ui/card.tsx\");\n/* harmony import */ var _components_ui_button__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/components/ui/button */ \"(ssr)/./components/ui/button.tsx\");\n/* harmony import */ var _barrel_optimize_names_Calendar_RefreshCw_lucide_react__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! __barrel_optimize__?names=Calendar,RefreshCw!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/calendar.js\");\n/* harmony import */ var _barrel_optimize_names_Calendar_RefreshCw_lucide_react__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! __barrel_optimize__?names=Calendar,RefreshCw!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/refresh-cw.js\");\n/* harmony import */ var next_navigation__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! next/navigation */ \"(ssr)/./node_modules/next/dist/api/navigation.js\");\n/* __next_internal_client_entry_do_not_use__ Calendar auto */ \n\n\n\n\n\nfunction Calendar() {\n const [events, setEvents] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)([]);\n const [loading, setLoading] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(true);\n const [error, setError] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const router = (0,next_navigation__WEBPACK_IMPORTED_MODULE_4__.useRouter)();\n const fetchEvents = async ()=>{\n setLoading(true);\n try {\n const response = await fetch('/api/calendars?refresh=true');\n if (!response.ok) {\n throw new Error('Failed to fetch events');\n }\n const calendarsData = await response.json();\n console.log('Calendar Widget - Fetched calendars:', calendarsData);\n // Get current date at the start of the day\n const now = new Date();\n now.setHours(0, 0, 0, 0);\n // Extract and process events from all calendars\n const allEvents = calendarsData.flatMap((calendar)=>(calendar.events || []).map((event)=>({\n id: event.id,\n title: event.title,\n start: event.start,\n end: event.end,\n allDay: event.isAllDay,\n calendar: calendar.name,\n calendarColor: calendar.color\n })));\n // Filter for upcoming events\n const upcomingEvents = allEvents.filter((event)=>new Date(event.start) >= now).sort((a, b)=>new Date(a.start).getTime() - new Date(b.start).getTime()).slice(0, 7);\n console.log('Calendar Widget - Processed events:', upcomingEvents);\n setEvents(upcomingEvents);\n setError(null);\n } catch (err) {\n console.error('Error fetching events:', err);\n setError('Failed to load events');\n } finally{\n setLoading(false);\n }\n };\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)({\n \"Calendar.useEffect\": ()=>{\n fetchEvents();\n }\n }[\"Calendar.useEffect\"], []);\n const formatDate = (dateString)=>{\n const date = new Date(dateString);\n return new Intl.DateTimeFormat('fr-FR', {\n day: '2-digit',\n month: 'short'\n }).format(date);\n };\n const formatTime = (dateString)=>{\n const date = new Date(dateString);\n return new Intl.DateTimeFormat('fr-FR', {\n hour: '2-digit',\n minute: '2-digit'\n }).format(date);\n };\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_card__WEBPACK_IMPORTED_MODULE_2__.Card, {\n className: \"transition-transform duration-500 ease-in-out transform hover:scale-105 bg-white/95 backdrop-blur-sm border-0 shadow-lg\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_card__WEBPACK_IMPORTED_MODULE_2__.CardHeader, {\n className: \"flex flex-row items-center justify-between pb-2 border-b border-gray-100\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_card__WEBPACK_IMPORTED_MODULE_2__.CardTitle, {\n className: \"text-lg font-semibold text-gray-800 flex items-center gap-2\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_Calendar_RefreshCw_lucide_react__WEBPACK_IMPORTED_MODULE_5__[\"default\"], {\n className: \"h-5 w-5 text-gray-600\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/calendar.tsx\",\n lineNumber: 94,\n columnNumber: 11\n }, this),\n \"Agenda\"\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/calendar.tsx\",\n lineNumber: 93,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_button__WEBPACK_IMPORTED_MODULE_3__.Button, {\n variant: \"ghost\",\n size: \"icon\",\n onClick: ()=>fetchEvents(),\n className: \"h-7 w-7 p-0 hover:bg-gray-100/50 rounded-full\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_Calendar_RefreshCw_lucide_react__WEBPACK_IMPORTED_MODULE_6__[\"default\"], {\n className: \"h-3.5 w-3.5 text-gray-600\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/calendar.tsx\",\n lineNumber: 103,\n columnNumber: 11\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/calendar.tsx\",\n lineNumber: 97,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/calendar.tsx\",\n lineNumber: 92,\n columnNumber: 7\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_card__WEBPACK_IMPORTED_MODULE_2__.CardContent, {\n className: \"p-3\",\n children: loading ? /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex items-center justify-center py-6\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"h-4 w-4 animate-spin rounded-full border-2 border-blue-500 border-t-transparent\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/calendar.tsx\",\n lineNumber: 109,\n columnNumber: 13\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/calendar.tsx\",\n lineNumber: 108,\n columnNumber: 11\n }, this) : error ? /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"text-xs text-red-500 text-center py-3\",\n children: error\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/calendar.tsx\",\n lineNumber: 112,\n columnNumber: 11\n }, this) : events.length === 0 ? /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"text-xs text-gray-500 text-center py-6\",\n children: \"No upcoming events\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/calendar.tsx\",\n lineNumber: 114,\n columnNumber: 11\n }, this) : /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"space-y-2 max-h-[400px] overflow-y-auto pr-1 scrollbar-thin scrollbar-thumb-gray-200 scrollbar-track-transparent\",\n children: events.map((event)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"p-2 rounded-lg bg-white shadow-sm hover:shadow-md transition-all duration-200 border border-gray-100\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex gap-2\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex-shrink-0 w-14 h-14 rounded-lg flex flex-col items-center justify-center border\",\n style: {\n backgroundColor: `${event.calendarColor}10`,\n borderColor: event.calendarColor\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"text-[10px] font-medium\",\n style: {\n color: event.calendarColor\n },\n children: formatDate(event.start)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/calendar.tsx\",\n lineNumber: 130,\n columnNumber: 21\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"text-[10px] font-bold mt-0.5\",\n style: {\n color: event.calendarColor\n },\n children: formatTime(event.start)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/calendar.tsx\",\n lineNumber: 136,\n columnNumber: 21\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/calendar.tsx\",\n lineNumber: 123,\n columnNumber: 19\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex-1 min-w-0 space-y-1\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex items-start justify-between gap-2\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n className: \"text-sm font-medium text-gray-800 line-clamp-2 flex-1\",\n children: event.title\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/calendar.tsx\",\n lineNumber: 145,\n columnNumber: 23\n }, this),\n !event.allDay && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"text-[10px] text-gray-500 whitespace-nowrap\",\n children: [\n formatTime(event.start),\n \" - \",\n formatTime(event.end)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/calendar.tsx\",\n lineNumber: 149,\n columnNumber: 25\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/calendar.tsx\",\n lineNumber: 144,\n columnNumber: 21\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex items-center text-[10px] px-1.5 py-0.5 rounded-md\",\n style: {\n backgroundColor: `${event.calendarColor}10`,\n color: event.calendarColor\n },\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"truncate\",\n children: event.calendar\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/calendar.tsx\",\n lineNumber: 161,\n columnNumber: 23\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/calendar.tsx\",\n lineNumber: 154,\n columnNumber: 21\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/calendar.tsx\",\n lineNumber: 143,\n columnNumber: 19\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/calendar.tsx\",\n lineNumber: 122,\n columnNumber: 17\n }, this)\n }, event.id, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/calendar.tsx\",\n lineNumber: 118,\n columnNumber: 15\n }, this))\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/calendar.tsx\",\n lineNumber: 116,\n columnNumber: 11\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/calendar.tsx\",\n lineNumber: 106,\n columnNumber: 7\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/calendar.tsx\",\n lineNumber: 91,\n columnNumber: 5\n }, this);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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TUFBTUksR0FBRzs7Ozs7Ozs7Ozs7OzswREFJdkQsOERBQUM2QjtnREFDQ0osV0FBVTtnREFDVk0sT0FBTztvREFDTEMsaUJBQWlCLEdBQUdwQyxNQUFNUSxhQUFhLENBQUMsRUFBRSxDQUFDO29EQUMzQ0MsT0FBT1QsTUFBTVEsYUFBYTtnREFDNUI7MERBRUEsNEVBQUM4QjtvREFBS1QsV0FBVTs4REFBWTdCLE1BQU1GLFFBQVE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzJCQTFDM0NFLE1BQU1DLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXFEN0IiLCJzb3VyY2VzIjpbIi9Vc2Vycy9hbG1hL0RvY3VtZW50cy9OZWFoTmV3L2NvbXBvbmVudHMvY2FsZW5kYXIudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIGNsaWVudFwiO1xuXG5pbXBvcnQgeyB1c2VFZmZlY3QsIHVzZVN0YXRlIH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgeyBDYXJkLCBDYXJkQ29udGVudCwgQ2FyZEhlYWRlciwgQ2FyZFRpdGxlIH0gZnJvbSBcIkAvY29tcG9uZW50cy91aS9jYXJkXCI7XG5pbXBvcnQgeyBCdXR0b24gfSBmcm9tIFwiQC9jb21wb25lbnRzL3VpL2J1dHRvblwiO1xuaW1wb3J0IHsgUmVmcmVzaEN3LCBDYWxlbmRhciBhcyBDYWxlbmRhckljb24gfSBmcm9tIFwibHVjaWRlLXJlYWN0XCI7XG5pbXBvcnQgeyB1c2VSb3V0ZXIgfSBmcm9tIFwibmV4dC9uYXZpZ2F0aW9uXCI7XG5cbmludGVyZmFjZSBFdmVudCB7XG4gIGlkOiBzdHJpbmc7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIHN0YXJ0OiBzdHJpbmc7XG4gIGVuZDogc3RyaW5nO1xuICBhbGxEYXk6IGJvb2xlYW47XG4gIGNhbGVuZGFyOiBzdHJpbmc7XG4gIGNhbGVuZGFyQ29sb3I6IHN0cmluZztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIENhbGVuZGFyKCkge1xuICBjb25zdCBbZXZlbnRzLCBzZXRFdmVudHNdID0gdXNlU3RhdGU8RXZlbnRbXT4oW10pO1xuICBjb25zdCBbbG9hZGluZywgc2V0TG9hZGluZ10gPSB1c2VTdGF0ZSh0cnVlKTtcbiAgY29uc3QgW2Vycm9yLCBzZXRFcnJvcl0gPSB1c2VTdGF0ZTxzdHJpbmcgfCBudWxsPihudWxsKTtcbiAgY29uc3Qgcm91dGVyID0gdXNlUm91dGVyKCk7XG5cbiAgY29uc3QgZmV0Y2hFdmVudHMgPSBhc3luYyAoKSA9PiB7XG4gICAgc2V0TG9hZGluZyh0cnVlKTtcbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaCgnL2FwaS9jYWxlbmRhcnM/cmVmcmVzaD10cnVlJyk7XG4gICAgICBpZiAoIXJlc3BvbnNlLm9rKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIGZldGNoIGV2ZW50cycpO1xuICAgICAgfVxuICAgICAgXG4gICAgICBjb25zdCBjYWxlbmRhcnNEYXRhID0gYXdhaXQgcmVzcG9uc2UuanNvbigpO1xuICAgICAgY29uc29sZS5sb2coJ0NhbGVuZGFyIFdpZGdldCAtIEZldGNoZWQgY2FsZW5kYXJzOicsIGNhbGVuZGFyc0RhdGEpO1xuXG4gICAgICAvLyBHZXQgY3VycmVudCBkYXRlIGF0IHRoZSBzdGFydCBvZiB0aGUgZGF5XG4gICAgICBjb25zdCBub3cgPSBuZXcgRGF0ZSgpO1xuICAgICAgbm93LnNldEhvdXJzKDAsIDAsIDAsIDApO1xuXG4gICAgICAvLyBFeHRyYWN0IGFuZCBwcm9jZXNzIGV2ZW50cyBmcm9tIGFsbCBjYWxlbmRhcnNcbiAgICAgIGNvbnN0IGFsbEV2ZW50cyA9IGNhbGVuZGFyc0RhdGEuZmxhdE1hcCgoY2FsZW5kYXI6IGFueSkgPT4gXG4gICAgICAgIChjYWxlbmRhci5ldmVudHMgfHwgW10pLm1hcCgoZXZlbnQ6IGFueSkgPT4gKHtcbiAgICAgICAgICBpZDogZXZlbnQuaWQsXG4gICAgICAgICAgdGl0bGU6IGV2ZW50LnRpdGxlLFxuICAgICAgICAgIHN0YXJ0OiBldmVudC5zdGFydCxcbiAgICAgICAgICBlbmQ6IGV2ZW50LmVuZCxcbiAgICAgICAgICBhbGxEYXk6IGV2ZW50LmlzQWxsRGF5LFxuICAgICAgICAgIGNhbGVuZGFyOiBjYWxlbmRhci5uYW1lLFxuICAgICAgICAgIGNhbGVuZGFyQ29sb3I6IGNhbGVuZGFyLmNvbG9yXG4gICAgICAgIH0pKVxuICAgICAgKTtcblxuICAgICAgLy8gRmlsdGVyIGZvciB1cGNvbWluZyBldmVudHNcbiAgICAgIGNvbnN0IHVwY29taW5nRXZlbnRzID0gYWxsRXZlbnRzXG4gICAgICAgIC5maWx0ZXIoKGV2ZW50OiBhbnkpID0+IG5ldyBEYXRlKGV2ZW50LnN0YXJ0KSA+PSBub3cpXG4gICAgICAgIC5zb3J0KChhOiBhbnksIGI6IGFueSkgPT4gbmV3IERhdGUoYS5zdGFydCkuZ2V0VGltZSgpIC0gbmV3IERhdGUoYi5zdGFydCkuZ2V0VGltZSgpKVxuICAgICAgICAuc2xpY2UoMCwgNyk7XG5cbiAgICAgIGNvbnNvbGUubG9nKCdDYWxlbmRhciBXaWRnZXQgLSBQcm9jZXNzZWQgZXZlbnRzOicsIHVwY29taW5nRXZlbnRzKTtcbiAgICAgIHNldEV2ZW50cyh1cGNvbWluZ0V2ZW50cyk7XG4gICAgICBzZXRFcnJvcihudWxsKTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGZldGNoaW5nIGV2ZW50czonLCBlcnIpO1xuICAgICAgc2V0RXJyb3IoJ0ZhaWxlZCB0byBsb2FkIGV2ZW50cycpO1xuICAgIH0gZmluYWxseSB7XG4gICAgICBzZXRMb2FkaW5nKGZhbHNlKTtcbiAgICB9XG4gIH07XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBmZXRjaEV2ZW50cygpO1xuICB9LCBbXSk7XG5cbiAgY29uc3QgZm9ybWF0RGF0ZSA9IChkYXRlU3RyaW5nOiBzdHJpbmcpID0+IHtcbiAgICBjb25zdCBkYXRlID0gbmV3IERhdGUoZGF0ZVN0cmluZyk7XG4gICAgcmV0dXJuIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdmci1GUicsIHtcbiAgICAgIGRheTogJzItZGlnaXQnLFxuICAgICAgbW9udGg6ICdzaG9ydCdcbiAgICB9KS5mb3JtYXQoZGF0ZSk7XG4gIH07XG5cbiAgY29uc3QgZm9ybWF0VGltZSA9IChkYXRlU3RyaW5nOiBzdHJpbmcpID0+IHtcbiAgICBjb25zdCBkYXRlID0gbmV3IERhdGUoZGF0ZVN0cmluZyk7XG4gICAgcmV0dXJuIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdmci1GUicsIHtcbiAgICAgIGhvdXI6ICcyLWRpZ2l0JyxcbiAgICAgIG1pbnV0ZTogJzItZGlnaXQnLFxuICAgIH0pLmZvcm1hdChkYXRlKTtcbiAgfTtcblxuICByZXR1cm4gKFxuICAgIDxDYXJkIGNsYXNzTmFtZT1cInRyYW5zaXRpb24tdHJhbnNmb3JtIGR1cmF0aW9uLTUwMCBlYXNlLWluLW91dCB0cmFuc2Zvcm0gaG92ZXI6c2NhbGUtMTA1IGJnLXdoaXRlLzk1IGJhY2tkcm9wLWJsdXItc20gYm9yZGVyLTAgc2hhZG93LWxnXCI+XG4gICAgICA8Q2FyZEhlYWRlciBjbGFzc05hbWU9XCJmbGV4IGZsZXgtcm93IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW4gcGItMiBib3JkZXItYiBib3JkZXItZ3JheS0xMDBcIj5cbiAgICAgICAgPENhcmRUaXRsZSBjbGFzc05hbWU9XCJ0ZXh0LWxnIGZvbnQtc2VtaWJvbGQgdGV4dC1ncmF5LTgwMCBmbGV4IGl0ZW1zLWNlbnRlciBnYXAtMlwiPlxuICAgICAgICAgIDxDYWxlbmRhckljb24gY2xhc3NOYW1lPVwiaC01IHctNSB0ZXh0LWdyYXktNjAwXCIgLz5cbiAgICAgICAgICBBZ2VuZGFcbiAgICAgICAgPC9DYXJkVGl0bGU+XG4gICAgICAgIDxCdXR0b24gXG4gICAgICAgICAgdmFyaWFudD1cImdob3N0XCIgXG4gICAgICAgICAgc2l6ZT1cImljb25cIiBcbiAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBmZXRjaEV2ZW50cygpfVxuICAgICAgICAgIGNsYXNzTmFtZT1cImgtNyB3LTcgcC0wIGhvdmVyOmJnLWdyYXktMTAwLzUwIHJvdW5kZWQtZnVsbFwiXG4gICAgICAgID5cbiAgICAgICAgICA8UmVmcmVzaEN3IGNsYXNzTmFtZT1cImgtMy41IHctMy41IHRleHQtZ3JheS02MDBcIiAvPlxuICAgICAgICA8L0J1dHRvbj5cbiAgICAgIDwvQ2FyZEhlYWRlcj5cbiAgICAgIDxDYXJkQ29udGVudCBjbGFzc05hbWU9XCJwLTNcIj5cbiAgICAgICAge2xvYWRpbmcgPyAoXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciBweS02XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImgtNCB3LTQgYW5pbWF0ZS1zcGluIHJvdW5kZWQtZnVsbCBib3JkZXItMiBib3JkZXItYmx1ZS01MDAgYm9yZGVyLXQtdHJhbnNwYXJlbnRcIiAvPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICApIDogZXJyb3IgPyAoXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0ZXh0LXhzIHRleHQtcmVkLTUwMCB0ZXh0LWNlbnRlciBweS0zXCI+e2Vycm9yfTwvZGl2PlxuICAgICAgICApIDogZXZlbnRzLmxlbmd0aCA9PT0gMCA/IChcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInRleHQteHMgdGV4dC1ncmF5LTUwMCB0ZXh0LWNlbnRlciBweS02XCI+Tm8gdXBjb21pbmcgZXZlbnRzPC9kaXY+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJzcGFjZS15LTIgbWF4LWgtWzQwMHB4XSBvdmVyZmxvdy15LWF1dG8gcHItMSBzY3JvbGxiYXItdGhpbiBzY3JvbGxiYXItdGh1bWItZ3JheS0yMDAgc2Nyb2xsYmFyLXRyYWNrLXRyYW5zcGFyZW50XCI+XG4gICAgICAgICAgICB7ZXZlbnRzLm1hcCgoZXZlbnQpID0+IChcbiAgICAgICAgICAgICAgPGRpdiBcbiAgICAgICAgICAgICAgICBrZXk9e2V2ZW50LmlkfVxuICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cInAtMiByb3VuZGVkLWxnIGJnLXdoaXRlIHNoYWRvdy1zbSBob3ZlcjpzaGFkb3ctbWQgdHJhbnNpdGlvbi1hbGwgZHVyYXRpb24tMjAwIGJvcmRlciBib3JkZXItZ3JheS0xMDBcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmbGV4IGdhcC0yXCI+XG4gICAgICAgICAgICAgICAgICA8ZGl2IFxuICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJmbGV4LXNocmluay0wIHctMTQgaC0xNCByb3VuZGVkLWxnIGZsZXggZmxleC1jb2wgaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIGJvcmRlclwiXG4gICAgICAgICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZENvbG9yOiBgJHtldmVudC5jYWxlbmRhckNvbG9yfTEwYCxcbiAgICAgICAgICAgICAgICAgICAgICBib3JkZXJDb2xvcjogZXZlbnQuY2FsZW5kYXJDb2xvclxuICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBcbiAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJ0ZXh0LVsxMHB4XSBmb250LW1lZGl1bVwiXG4gICAgICAgICAgICAgICAgICAgICAgc3R5bGU9e3sgY29sb3I6IGV2ZW50LmNhbGVuZGFyQ29sb3IgfX1cbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgIHtmb3JtYXREYXRlKGV2ZW50LnN0YXJ0KX1cbiAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBcbiAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJ0ZXh0LVsxMHB4XSBmb250LWJvbGQgbXQtMC41XCJcbiAgICAgICAgICAgICAgICAgICAgICBzdHlsZT17eyBjb2xvcjogZXZlbnQuY2FsZW5kYXJDb2xvciB9fVxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAge2Zvcm1hdFRpbWUoZXZlbnQuc3RhcnQpfVxuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmxleC0xIG1pbi13LTAgc3BhY2UteS0xXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmxleCBpdGVtcy1zdGFydCBqdXN0aWZ5LWJldHdlZW4gZ2FwLTJcIj5cbiAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9XCJ0ZXh0LXNtIGZvbnQtbWVkaXVtIHRleHQtZ3JheS04MDAgbGluZS1jbGFtcC0yIGZsZXgtMVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge2V2ZW50LnRpdGxlfVxuICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICB7IWV2ZW50LmFsbERheSAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJ0ZXh0LVsxMHB4XSB0ZXh0LWdyYXktNTAwIHdoaXRlc3BhY2Utbm93cmFwXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHtmb3JtYXRUaW1lKGV2ZW50LnN0YXJ0KX0gLSB7Zm9ybWF0VGltZShldmVudC5lbmQpfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IFxuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cImZsZXggaXRlbXMtY2VudGVyIHRleHQtWzEwcHhdIHB4LTEuNSBweS0wLjUgcm91bmRlZC1tZFwiXG4gICAgICAgICAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmRDb2xvcjogYCR7ZXZlbnQuY2FsZW5kYXJDb2xvcn0xMGAsXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogZXZlbnQuY2FsZW5kYXJDb2xvclxuICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJ0cnVuY2F0ZVwiPntldmVudC5jYWxlbmRhcn08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgKSl9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICl9XG4gICAgICA8L0NhcmRDb250ZW50PlxuICAgIDwvQ2FyZD5cbiAgKTtcbn0gIl0sIm5hbWVzIjpbInVzZUVmZmVjdCIsInVzZVN0YXRlIiwiQ2FyZCIsIkNhcmRDb250ZW50IiwiQ2FyZEhlYWRlciIsIkNhcmRUaXRsZSIsIkJ1dHRvbiIsIlJlZnJlc2hDdyIsIkNhbGVuZGFyIiwiQ2FsZW5kYXJJY29uIiwidXNlUm91dGVyIiwiZXZlbnRzIiwic2V0RXZlbnRzIiwibG9hZGluZyIsInNldExvYWRpbmciLCJlcnJvciIsInNldEVycm9yIiwicm91dGVyIiwiZmV0Y2hFdmVudHMiLCJyZXNwb25zZSIsImZldGNoIiwib2siLCJFcnJvciIsImNhbGVuZGFyc0RhdGEiLCJqc29uIiwiY29uc29sZSIsImxvZyIsIm5vdyIsIkRhdGUiLCJzZXRIb3VycyIsImFsbEV2ZW50cyIsImZsYXRNYXAiLCJjYWxlbmRhciIsIm1hcCIsImV2ZW50IiwiaWQiLCJ0aXRsZSIsInN0YXJ0IiwiZW5kIiwiYWxsRGF5IiwiaXNBbGxEYXkiLCJuYW1lIiwiY2FsZW5kYXJDb2xvciIsImNvbG9yIiwidXBjb21pbmdFdmVudHMiLCJmaWx0ZXIiLCJzb3J0IiwiYSIsImIiLCJnZXRUaW1lIiwic2xpY2UiLCJlcnIiLCJmb3JtYXREYXRlIiwiZGF0ZVN0cmluZyIsImRhdGUiLCJJbnRsIiwiRGF0ZVRpbWVGb3JtYXQiLCJkYXkiLCJtb250aCIsImZvcm1hdCIsImZvcm1hdFRpbWUiLCJob3VyIiwibWludXRlIiwiY2xhc3NOYW1lIiwidmFyaWFudCIsInNpemUiLCJvbkNsaWNrIiwiZGl2IiwibGVuZ3RoIiwic3R5bGUiLCJiYWNrZ3JvdW5kQ29sb3IiLCJib3JkZXJDb2xvciIsInNwYW4iLCJwIl0sImlnbm9yZUxpc3QiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./components/calendar.tsx\n");
/***/ }),
/***/ "(ssr)/./components/electron/WindowControls.tsx":
/*!************************************************!*\
!*** ./components/electron/WindowControls.tsx ***!
\************************************************/
/***/ ((__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 */ WindowControls: () => (/* binding */ WindowControls)\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/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/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)/./components/ui/button.tsx\");\n/* harmony import */ var _barrel_optimize_names_Minus_Square_X_lucide_react__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! __barrel_optimize__?names=Minus,Square,X!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/minus.js\");\n/* harmony import */ var _barrel_optimize_names_Minus_Square_X_lucide_react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! __barrel_optimize__?names=Minus,Square,X!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/square.js\");\n/* harmony import */ var _barrel_optimize_names_Minus_Square_X_lucide_react__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! __barrel_optimize__?names=Minus,Square,X!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/x.js\");\n/* __next_internal_client_entry_do_not_use__ WindowControls auto */ \n\n\n\n// We're now using the global type declaration from types/electron.d.ts\nfunction WindowControls() {\n const [isElectron, setIsElectron] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n const [isMaximized, setIsMaximized] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)({\n \"WindowControls.useEffect\": ()=>{\n // Check if we're running in Electron\n if (window.electron) {\n setIsElectron(true);\n // Set up listeners for window state\n const handleMaximize = {\n \"WindowControls.useEffect.handleMaximize\": ()=>setIsMaximized(true)\n }[\"WindowControls.useEffect.handleMaximize\"];\n const handleUnmaximize = {\n \"WindowControls.useEffect.handleUnmaximize\": ()=>setIsMaximized(false)\n }[\"WindowControls.useEffect.handleUnmaximize\"];\n window.electron.windowState?.onMaximized(handleMaximize);\n window.electron.windowState?.onUnmaximized(handleUnmaximize);\n // Clean up listeners on unmount\n return ({\n \"WindowControls.useEffect\": ()=>{\n if (window.electron && window.electron.windowState) {\n window.electron.windowState.removeMaximizedListener();\n window.electron.windowState.removeUnmaximizedListener();\n }\n }\n })[\"WindowControls.useEffect\"];\n }\n }\n }[\"WindowControls.useEffect\"], []);\n // If not in Electron, don't render anything\n if (!isElectron) return null;\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex items-center\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_button__WEBPACK_IMPORTED_MODULE_2__.Button, {\n variant: \"ghost\",\n size: \"sm\",\n className: \"h-6 w-6 p-0 text-white/70 hover:text-white hover:bg-transparent\",\n onClick: ()=>window.electron?.windowControl.minimize(),\n \"aria-label\": \"Minimize\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_Minus_Square_X_lucide_react__WEBPACK_IMPORTED_MODULE_3__[\"default\"], {\n className: \"h-3 w-3\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/electron/WindowControls.tsx\",\n lineNumber: 47,\n columnNumber: 9\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/electron/WindowControls.tsx\",\n lineNumber: 40,\n columnNumber: 7\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_button__WEBPACK_IMPORTED_MODULE_2__.Button, {\n variant: \"ghost\",\n size: \"sm\",\n className: \"h-6 w-6 p-0 text-white/70 hover:text-white hover:bg-transparent\",\n onClick: ()=>window.electron?.windowControl.maximize(),\n \"aria-label\": \"Maximize\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_Minus_Square_X_lucide_react__WEBPACK_IMPORTED_MODULE_4__[\"default\"], {\n className: \"h-3 w-3\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/electron/WindowControls.tsx\",\n lineNumber: 56,\n columnNumber: 9\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/electron/WindowControls.tsx\",\n lineNumber: 49,\n columnNumber: 7\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_button__WEBPACK_IMPORTED_MODULE_2__.Button, {\n variant: \"ghost\",\n size: \"sm\",\n className: \"h-6 w-6 p-0 text-white/70 hover:text-white hover:bg-red-500\",\n onClick: ()=>window.electron?.windowControl.close(),\n \"aria-label\": \"Close\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_Minus_Square_X_lucide_react__WEBPACK_IMPORTED_MODULE_5__[\"default\"], {\n className: \"h-3 w-3\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/electron/WindowControls.tsx\",\n lineNumber: 65,\n columnNumber: 9\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/electron/WindowControls.tsx\",\n lineNumber: 58,\n columnNumber: 7\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/electron/WindowControls.tsx\",\n lineNumber: 39,\n columnNumber: 5\n }, this);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9jb21wb25lbnRzL2VsZWN0cm9uL1dpbmRvd0NvbnRyb2xzLnRzeCIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7O0FBRTRDO0FBQ0k7QUFDQTtBQUVoRCx1RUFBdUU7QUFFaEUsU0FBU007SUFDZCxNQUFNLENBQUNDLFlBQVlDLGNBQWMsR0FBR1AsK0NBQVFBLENBQUM7SUFDN0MsTUFBTSxDQUFDUSxhQUFhQyxlQUFlLEdBQUdULCtDQUFRQSxDQUFDO0lBRS9DRCxnREFBU0E7b0NBQUM7WUFDUixxQ0FBcUM7WUFDckMsSUFBSVcsT0FBT0MsUUFBUSxFQUFFO2dCQUNuQkosY0FBYztnQkFFZCxvQ0FBb0M7Z0JBQ3BDLE1BQU1LOytEQUFpQixJQUFNSCxlQUFlOztnQkFDNUMsTUFBTUk7aUVBQW1CLElBQU1KLGVBQWU7O2dCQUU5Q0MsT0FBT0MsUUFBUSxDQUFDRyxXQUFXLEVBQUVDLFlBQVlIO2dCQUN6Q0YsT0FBT0MsUUFBUSxDQUFDRyxXQUFXLEVBQUVFLGNBQWNIO2dCQUUzQyxnQ0FBZ0M7Z0JBQ2hDO2dEQUFPO3dCQUNMLElBQUlILE9BQU9DLFFBQVEsSUFBSUQsT0FBT0MsUUFBUSxDQUFDRyxXQUFXLEVBQUU7NEJBQ2xESixPQUFPQyxRQUFRLENBQUNHLFdBQVcsQ0FBQ0csdUJBQXVCOzRCQUNuRFAsT0FBT0MsUUFBUSxDQUFDRyxXQUFXLENBQUNJLHlCQUF5Qjt3QkFDdkQ7b0JBQ0Y7O1lBQ0Y7UUFDRjttQ0FBRyxFQUFFO0lBRUwsNENBQTRDO0lBQzVDLElBQUksQ0FBQ1osWUFBWSxPQUFPO0lBRXhCLHFCQUNFLDhEQUFDYTtRQUFJQyxXQUFVOzswQkFDYiw4REFBQ25CLHlEQUFNQTtnQkFDTG9CLFNBQVE7Z0JBQ1JDLE1BQUs7Z0JBQ0xGLFdBQVU7Z0JBQ1ZHLFNBQVMsSUFBTWIsT0FBT0MsUUFBUSxFQUFFYSxjQUFjQztnQkFDOUNDLGNBQVc7MEJBRVgsNEVBQUN2QiwwRkFBS0E7b0JBQUNpQixXQUFVOzs7Ozs7Ozs7OzswQkFFbkIsOERBQUNuQix5REFBTUE7Z0JBQ0xvQixTQUFRO2dCQUNSQyxNQUFLO2dCQUNMRixXQUFVO2dCQUNWRyxTQUFTLElBQU1iLE9BQU9DLFFBQVEsRUFBRWEsY0FBY0c7Z0JBQzlDRCxjQUFXOzBCQUVYLDRFQUFDdEIsMEZBQU1BO29CQUFDZ0IsV0FBVTs7Ozs7Ozs7Ozs7MEJBRXBCLDhEQUFDbkIseURBQU1BO2dCQUNMb0IsU0FBUTtnQkFDUkMsTUFBSztnQkFDTEYsV0FBVTtnQkFDVkcsU0FBUyxJQUFNYixPQUFPQyxRQUFRLEVBQUVhLGNBQWNJO2dCQUM5Q0YsY0FBVzswQkFFWCw0RUFBQ3hCLDBGQUFDQTtvQkFBQ2tCLFdBQVU7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBSXJCIiwic291cmNlcyI6WyIvVXNlcnMvYWxtYS9Eb2N1bWVudHMvTmVhaE5ldy9jb21wb25lbnRzL2VsZWN0cm9uL1dpbmRvd0NvbnRyb2xzLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBjbGllbnRcIjtcblxuaW1wb3J0IHsgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IEJ1dHRvbiB9IGZyb20gXCJAL2NvbXBvbmVudHMvdWkvYnV0dG9uXCI7XG5pbXBvcnQgeyBYLCBNaW51cywgU3F1YXJlIH0gZnJvbSAnbHVjaWRlLXJlYWN0JztcblxuLy8gV2UncmUgbm93IHVzaW5nIHRoZSBnbG9iYWwgdHlwZSBkZWNsYXJhdGlvbiBmcm9tIHR5cGVzL2VsZWN0cm9uLmQudHNcblxuZXhwb3J0IGZ1bmN0aW9uIFdpbmRvd0NvbnRyb2xzKCkge1xuICBjb25zdCBbaXNFbGVjdHJvbiwgc2V0SXNFbGVjdHJvbl0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IFtpc01heGltaXplZCwgc2V0SXNNYXhpbWl6ZWRdID0gdXNlU3RhdGUoZmFsc2UpO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgLy8gQ2hlY2sgaWYgd2UncmUgcnVubmluZyBpbiBFbGVjdHJvblxuICAgIGlmICh3aW5kb3cuZWxlY3Ryb24pIHtcbiAgICAgIHNldElzRWxlY3Ryb24odHJ1ZSk7XG5cbiAgICAgIC8vIFNldCB1cCBsaXN0ZW5lcnMgZm9yIHdpbmRvdyBzdGF0ZVxuICAgICAgY29uc3QgaGFuZGxlTWF4aW1pemUgPSAoKSA9PiBzZXRJc01heGltaXplZCh0cnVlKTtcbiAgICAgIGNvbnN0IGhhbmRsZVVubWF4aW1pemUgPSAoKSA9PiBzZXRJc01heGltaXplZChmYWxzZSk7XG5cbiAgICAgIHdpbmRvdy5lbGVjdHJvbi53aW5kb3dTdGF0ZT8ub25NYXhpbWl6ZWQoaGFuZGxlTWF4aW1pemUpO1xuICAgICAgd2luZG93LmVsZWN0cm9uLndpbmRvd1N0YXRlPy5vblVubWF4aW1pemVkKGhhbmRsZVVubWF4aW1pemUpO1xuXG4gICAgICAvLyBDbGVhbiB1cCBsaXN0ZW5lcnMgb24gdW5tb3VudFxuICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgaWYgKHdpbmRvdy5lbGVjdHJvbiAmJiB3aW5kb3cuZWxlY3Ryb24ud2luZG93U3RhdGUpIHtcbiAgICAgICAgICB3aW5kb3cuZWxlY3Ryb24ud2luZG93U3RhdGUucmVtb3ZlTWF4aW1pemVkTGlzdGVuZXIoKTtcbiAgICAgICAgICB3aW5kb3cuZWxlY3Ryb24ud2luZG93U3RhdGUucmVtb3ZlVW5tYXhpbWl6ZWRMaXN0ZW5lcigpO1xuICAgICAgICB9XG4gICAgICB9O1xuICAgIH1cbiAgfSwgW10pO1xuXG4gIC8vIElmIG5vdCBpbiBFbGVjdHJvbiwgZG9uJ3QgcmVuZGVyIGFueXRoaW5nXG4gIGlmICghaXNFbGVjdHJvbikgcmV0dXJuIG51bGw7XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT1cImZsZXggaXRlbXMtY2VudGVyXCI+XG4gICAgICA8QnV0dG9uXG4gICAgICAgIHZhcmlhbnQ9XCJnaG9zdFwiXG4gICAgICAgIHNpemU9XCJzbVwiXG4gICAgICAgIGNsYXNzTmFtZT1cImgtNiB3LTYgcC0wIHRleHQtd2hpdGUvNzAgaG92ZXI6dGV4dC13aGl0ZSBob3ZlcjpiZy10cmFuc3BhcmVudFwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IHdpbmRvdy5lbGVjdHJvbj8ud2luZG93Q29udHJvbC5taW5pbWl6ZSgpfVxuICAgICAgICBhcmlhLWxhYmVsPVwiTWluaW1pemVcIlxuICAgICAgPlxuICAgICAgICA8TWludXMgY2xhc3NOYW1lPVwiaC0zIHctM1wiIC8+XG4gICAgICA8L0J1dHRvbj5cbiAgICAgIDxCdXR0b25cbiAgICAgICAgdmFyaWFudD1cImdob3N0XCJcbiAgICAgICAgc2l6ZT1cInNtXCJcbiAgICAgICAgY2xhc3NOYW1lPVwiaC02IHctNiBwLTAgdGV4dC13aGl0ZS83MCBob3Zlcjp0ZXh0LXdoaXRlIGhvdmVyOmJnLXRyYW5zcGFyZW50XCJcbiAgICAgICAgb25DbGljaz17KCkgPT4gd2luZG93LmVsZWN0cm9uPy53aW5kb3dDb250cm9sLm1heGltaXplKCl9XG4gICAgICAgIGFyaWEtbGFiZWw9XCJNYXhpbWl6ZVwiXG4gICAgICA+XG4gICAgICAgIDxTcXVhcmUgY2xhc3NOYW1lPVwiaC0zIHctM1wiIC8+XG4gICAgICA8L0J1dHRvbj5cbiAgICAgIDxCdXR0b25cbiAgICAgICAgdmFyaWFudD1cImdob3N0XCJcbiAgICAgICAgc2l6ZT1cInNtXCJcbiAgICAgICAgY2xhc3NOYW1lPVwiaC02IHctNiBwLTAgdGV4dC13aGl0ZS83MCBob3Zlcjp0ZXh0LXdoaXRlIGhvdmVyOmJnLXJlZC01MDBcIlxuICAgICAgICBvbkNsaWNrPXsoKSA9PiB3aW5kb3cuZWxlY3Ryb24/LndpbmRvd0NvbnRyb2wuY2xvc2UoKX1cbiAgICAgICAgYXJpYS1sYWJlbD1cIkNsb3NlXCJcbiAgICAgID5cbiAgICAgICAgPFggY2xhc3NOYW1lPVwiaC0zIHctM1wiIC8+XG4gICAgICA8L0J1dHRvbj5cbiAgICA8L2Rpdj5cbiAgKTtcbn0gIl0sIm5hbWVzIjpbInVzZUVmZmVjdCIsInVzZVN0YXRlIiwiQnV0dG9uIiwiWCIsIk1pbnVzIiwiU3F1YXJlIiwiV2luZG93Q29udHJvbHMiLCJpc0VsZWN0cm9uIiwic2V0SXNFbGVjdHJvbiIsImlzTWF4aW1pemVkIiwic2V0SXNNYXhpbWl6ZWQiLCJ3aW5kb3ciLCJlbGVjdHJvbiIsImhhbmRsZU1heGltaXplIiwiaGFuZGxlVW5tYXhpbWl6ZSIsIndpbmRvd1N0YXRlIiwib25NYXhpbWl6ZWQiLCJvblVubWF4aW1pemVkIiwicmVtb3ZlTWF4aW1pemVkTGlzdGVuZXIiLCJyZW1vdmVVbm1heGltaXplZExpc3RlbmVyIiwiZGl2IiwiY2xhc3NOYW1lIiwidmFyaWFudCIsInNpemUiLCJvbkNsaWNrIiwid2luZG93Q29udHJvbCIsIm1pbmltaXplIiwiYXJpYS1sYWJlbCIsIm1heGltaXplIiwiY2xvc2UiXSwiaWdub3JlTGlzdCI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./components/electron/WindowControls.tsx\n");
/***/ }),
/***/ "(ssr)/./components/email.tsx":
/*!******************************!*\
!*** ./components/email.tsx ***!
\******************************/
/***/ ((__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 */ Email: () => (/* binding */ Email)\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/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/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_card__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/components/ui/card */ \"(ssr)/./components/ui/card.tsx\");\n/* harmony import */ var _components_ui_button__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/components/ui/button */ \"(ssr)/./components/ui/button.tsx\");\n/* harmony import */ var _barrel_optimize_names_Loader2_Mail_MailOpen_RefreshCw_lucide_react__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! __barrel_optimize__?names=Loader2,Mail,MailOpen,RefreshCw!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/mail.js\");\n/* harmony import */ var _barrel_optimize_names_Loader2_Mail_MailOpen_RefreshCw_lucide_react__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! __barrel_optimize__?names=Loader2,Mail,MailOpen,RefreshCw!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/loader-circle.js\");\n/* harmony import */ var _barrel_optimize_names_Loader2_Mail_MailOpen_RefreshCw_lucide_react__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! __barrel_optimize__?names=Loader2,Mail,MailOpen,RefreshCw!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/refresh-cw.js\");\n/* harmony import */ var _barrel_optimize_names_Loader2_Mail_MailOpen_RefreshCw_lucide_react__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! __barrel_optimize__?names=Loader2,Mail,MailOpen,RefreshCw!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/mail-open.js\");\n/* harmony import */ var next_link__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! next/link */ \"(ssr)/./node_modules/next/dist/client/app-dir/link.js\");\n/* harmony import */ var next_link__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(next_link__WEBPACK_IMPORTED_MODULE_4__);\n/* __next_internal_client_entry_do_not_use__ Email auto */ \n\n\n\n\n\nfunction Email() {\n const [emails, setEmails] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)([]);\n const [loading, setLoading] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n const [error, setError] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const [mailUrl, setMailUrl] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)({\n \"Email.useEffect\": ()=>{\n fetchEmails();\n }\n }[\"Email.useEffect\"], []);\n const fetchEmails = async (isRefresh = false)=>{\n setLoading(true);\n setError(null);\n try {\n const response = await fetch('/api/courrier?folder=INBOX&page=1&perPage=5' + (isRefresh ? '&refresh=true' : ''));\n if (!response.ok) {\n throw new Error('Failed to fetch emails');\n }\n const data = await response.json();\n if (data.error) {\n setError(data.error);\n setEmails([]);\n } else {\n // Transform data format if needed\n const transformedEmails = data.emails.map((email)=>({\n id: email.id,\n subject: email.subject,\n from: email.from[0]?.address || '',\n fromName: email.from[0]?.name || '',\n date: email.date,\n read: email.flags.seen,\n starred: email.flags.flagged,\n folder: email.folder\n }))// Sort emails by date (most recent first)\n .sort((a, b)=>new Date(b.date).getTime() - new Date(a.date).getTime()).slice(0, 5); // Only show the first 5 emails\n setEmails(transformedEmails);\n setMailUrl('/courrier');\n }\n } catch (error) {\n console.error('Error fetching emails:', error);\n setError('Failed to load emails');\n setEmails([]);\n } finally{\n setLoading(false);\n }\n };\n const formatDate = (dateString)=>{\n try {\n const date = new Date(dateString);\n return new Intl.DateTimeFormat('fr-FR', {\n month: 'short',\n day: 'numeric',\n hour: '2-digit',\n minute: '2-digit'\n }).format(date);\n } catch (e) {\n return '';\n }\n };\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_card__WEBPACK_IMPORTED_MODULE_2__.Card, {\n className: \"h-full\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_card__WEBPACK_IMPORTED_MODULE_2__.CardHeader, {\n className: \"flex flex-row items-center justify-between pb-2 border-b border-gray-100\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_card__WEBPACK_IMPORTED_MODULE_2__.CardTitle, {\n className: \"text-lg font-semibold text-gray-800 flex items-center gap-2\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_Loader2_Mail_MailOpen_RefreshCw_lucide_react__WEBPACK_IMPORTED_MODULE_5__[\"default\"], {\n className: \"h-5 w-5 text-gray-600\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/email.tsx\",\n lineNumber: 97,\n columnNumber: 11\n }, this),\n \"Courrier\"\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/email.tsx\",\n lineNumber: 96,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_button__WEBPACK_IMPORTED_MODULE_3__.Button, {\n variant: \"ghost\",\n size: \"icon\",\n onClick: ()=>fetchEmails(true),\n disabled: loading,\n children: loading ? /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_Loader2_Mail_MailOpen_RefreshCw_lucide_react__WEBPACK_IMPORTED_MODULE_6__[\"default\"], {\n className: \"h-4 w-4 animate-spin\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/email.tsx\",\n lineNumber: 107,\n columnNumber: 13\n }, this) : /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_Loader2_Mail_MailOpen_RefreshCw_lucide_react__WEBPACK_IMPORTED_MODULE_7__[\"default\"], {\n className: \"h-4 w-4\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/email.tsx\",\n lineNumber: 108,\n columnNumber: 13\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/email.tsx\",\n lineNumber: 100,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/email.tsx\",\n lineNumber: 95,\n columnNumber: 7\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_card__WEBPACK_IMPORTED_MODULE_2__.CardContent, {\n className: \"p-4\",\n children: error ? /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"text-center py-4 text-gray-500\",\n children: error\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/email.tsx\",\n lineNumber: 114,\n columnNumber: 11\n }, this) : loading && emails.length === 0 ? /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"text-center py-6 flex flex-col items-center\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_Loader2_Mail_MailOpen_RefreshCw_lucide_react__WEBPACK_IMPORTED_MODULE_6__[\"default\"], {\n className: \"h-6 w-6 animate-spin text-gray-400 mb-2\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/email.tsx\",\n lineNumber: 119,\n columnNumber: 13\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n className: \"text-gray-500\",\n children: \"Chargement des emails...\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/email.tsx\",\n lineNumber: 120,\n columnNumber: 13\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/email.tsx\",\n lineNumber: 118,\n columnNumber: 11\n }, this) : emails.length === 0 ? /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"text-center py-6\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n className: \"text-gray-500\",\n children: \"Aucun email non lu\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/email.tsx\",\n lineNumber: 124,\n columnNumber: 13\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/email.tsx\",\n lineNumber: 123,\n columnNumber: 11\n }, this) : /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"space-y-3\",\n children: [\n emails.map((email)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex items-start gap-3 py-1 border-b border-gray-100 last:border-0\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"pt-1\",\n children: email.read ? /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_Loader2_Mail_MailOpen_RefreshCw_lucide_react__WEBPACK_IMPORTED_MODULE_8__[\"default\"], {\n className: \"h-4 w-4 text-gray-400\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/email.tsx\",\n lineNumber: 132,\n columnNumber: 21\n }, this) : /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_Loader2_Mail_MailOpen_RefreshCw_lucide_react__WEBPACK_IMPORTED_MODULE_5__[\"default\"], {\n className: \"h-4 w-4 text-blue-500\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/email.tsx\",\n lineNumber: 133,\n columnNumber: 21\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/email.tsx\",\n lineNumber: 130,\n columnNumber: 17\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex-1 min-w-0\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex justify-between\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n className: \"font-medium truncate\",\n style: {\n maxWidth: '180px'\n },\n children: email.fromName || email.from.split('@')[0]\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/email.tsx\",\n lineNumber: 138,\n columnNumber: 21\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n className: \"text-xs text-gray-500\",\n children: formatDate(email.date)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/email.tsx\",\n lineNumber: 139,\n columnNumber: 21\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/email.tsx\",\n lineNumber: 137,\n columnNumber: 19\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n className: \"text-sm text-gray-700 truncate\",\n children: email.subject\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/email.tsx\",\n lineNumber: 141,\n columnNumber: 19\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/email.tsx\",\n lineNumber: 136,\n columnNumber: 17\n }, this)\n ]\n }, email.id, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/email.tsx\",\n lineNumber: 129,\n columnNumber: 15\n }, this)),\n mailUrl && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"pt-2\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)((next_link__WEBPACK_IMPORTED_MODULE_4___default()), {\n href: mailUrl,\n className: \"text-sm text-blue-600 hover:text-blue-800\",\n children: \"Voir tous les emails →\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/email.tsx\",\n lineNumber: 148,\n columnNumber: 17\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/email.tsx\",\n lineNumber: 147,\n columnNumber: 15\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/email.tsx\",\n lineNumber: 127,\n columnNumber: 11\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/email.tsx\",\n lineNumber: 112,\n columnNumber: 7\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/email.tsx\",\n lineNumber: 94,\n columnNumber: 5\n }, this);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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QUFNQyxFQUFFOzs7Ozt3QkFpQm5CYix5QkFDQyw4REFBQ2dEOzRCQUFJTCxXQUFVO3NDQUNiLDRFQUFDbkQsa0RBQUlBO2dDQUFDOEQsTUFBTXREO2dDQUFTMkMsV0FBVTswQ0FBNEM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFVM0YiLCJzb3VyY2VzIjpbIi9Vc2Vycy9hbG1hL0RvY3VtZW50cy9OZWFoTmV3L2NvbXBvbmVudHMvZW1haWwudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIGNsaWVudFwiO1xuXG5pbXBvcnQgeyB1c2VFZmZlY3QsIHVzZVN0YXRlIH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgeyBDYXJkLCBDYXJkQ29udGVudCwgQ2FyZEhlYWRlciwgQ2FyZFRpdGxlIH0gZnJvbSBcIkAvY29tcG9uZW50cy91aS9jYXJkXCI7XG5pbXBvcnQgeyBCdXR0b24gfSBmcm9tIFwiQC9jb21wb25lbnRzL3VpL2J1dHRvblwiO1xuaW1wb3J0IHsgUmVmcmVzaEN3LCBNZXNzYWdlU3F1YXJlLCBNYWlsLCBNYWlsT3BlbiwgTG9hZGVyMiB9IGZyb20gXCJsdWNpZGUtcmVhY3RcIjtcbmltcG9ydCBMaW5rIGZyb20gJ25leHQvbGluayc7XG5cbmludGVyZmFjZSBFbWFpbCB7XG4gIGlkOiBzdHJpbmc7XG4gIHN1YmplY3Q6IHN0cmluZztcbiAgZnJvbTogc3RyaW5nO1xuICBmcm9tTmFtZT86IHN0cmluZztcbiAgZGF0ZTogc3RyaW5nO1xuICByZWFkOiBib29sZWFuO1xuICBzdGFycmVkOiBib29sZWFuO1xuICBmb2xkZXI6IHN0cmluZztcbn1cblxuaW50ZXJmYWNlIEVtYWlsUmVzcG9uc2Uge1xuICBlbWFpbHM6IEVtYWlsW107XG4gIG1haWxVcmw6IHN0cmluZztcbiAgZXJyb3I/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBFbWFpbCgpIHtcbiAgY29uc3QgW2VtYWlscywgc2V0RW1haWxzXSA9IHVzZVN0YXRlPEVtYWlsW10+KFtdKTtcbiAgY29uc3QgW2xvYWRpbmcsIHNldExvYWRpbmddID0gdXNlU3RhdGUoZmFsc2UpO1xuICBjb25zdCBbZXJyb3IsIHNldEVycm9yXSA9IHVzZVN0YXRlPHN0cmluZyB8IG51bGw+KG51bGwpO1xuICBjb25zdCBbbWFpbFVybCwgc2V0TWFpbFVybF0gPSB1c2VTdGF0ZTxzdHJpbmcgfCBudWxsPihudWxsKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGZldGNoRW1haWxzKCk7XG4gIH0sIFtdKTtcblxuICBjb25zdCBmZXRjaEVtYWlscyA9IGFzeW5jIChpc1JlZnJlc2ggPSBmYWxzZSkgPT4ge1xuICAgIHNldExvYWRpbmcodHJ1ZSk7XG4gICAgc2V0RXJyb3IobnVsbCk7XG5cbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaCgnL2FwaS9jb3Vycmllcj9mb2xkZXI9SU5CT1gmcGFnZT0xJnBlclBhZ2U9NScgKyAoaXNSZWZyZXNoID8gJyZyZWZyZXNoPXRydWUnIDogJycpKTsgXG4gICAgICBpZiAoIXJlc3BvbnNlLm9rKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIGZldGNoIGVtYWlscycpO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBkYXRhID0gYXdhaXQgcmVzcG9uc2UuanNvbigpO1xuICAgICAgXG4gICAgICBpZiAoZGF0YS5lcnJvcikge1xuICAgICAgICBzZXRFcnJvcihkYXRhLmVycm9yKTtcbiAgICAgICAgc2V0RW1haWxzKFtdKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIFRyYW5zZm9ybSBkYXRhIGZvcm1hdCBpZiBuZWVkZWRcbiAgICAgICAgY29uc3QgdHJhbnNmb3JtZWRFbWFpbHMgPSBkYXRhLmVtYWlscy5tYXAoKGVtYWlsOiBhbnkpID0+ICh7XG4gICAgICAgICAgaWQ6IGVtYWlsLmlkLFxuICAgICAgICAgIHN1YmplY3Q6IGVtYWlsLnN1YmplY3QsXG4gICAgICAgICAgZnJvbTogZW1haWwuZnJvbVswXT8uYWRkcmVzcyB8fCAnJyxcbiAgICAgICAgICBmcm9tTmFtZTogZW1haWwuZnJvbVswXT8ubmFtZSB8fCAnJyxcbiAgICAgICAgICBkYXRlOiBlbWFpbC5kYXRlLFxuICAgICAgICAgIHJlYWQ6IGVtYWlsLmZsYWdzLnNlZW4sXG4gICAgICAgICAgc3RhcnJlZDogZW1haWwuZmxhZ3MuZmxhZ2dlZCxcbiAgICAgICAgICBmb2xkZXI6IGVtYWlsLmZvbGRlclxuICAgICAgICB9KSlcbiAgICAgICAgLy8gU29ydCBlbWFpbHMgYnkgZGF0ZSAobW9zdCByZWNlbnQgZmlyc3QpXG4gICAgICAgIC5zb3J0KChhOiBFbWFpbCwgYjogRW1haWwpID0+IG5ldyBEYXRlKGIuZGF0ZSkuZ2V0VGltZSgpIC0gbmV3IERhdGUoYS5kYXRlKS5nZXRUaW1lKCkpXG4gICAgICAgIC5zbGljZSgwLCA1KTsgLy8gT25seSBzaG93IHRoZSBmaXJzdCA1IGVtYWlsc1xuICAgICAgICBcbiAgICAgICAgc2V0RW1haWxzKHRyYW5zZm9ybWVkRW1haWxzKTtcbiAgICAgICAgc2V0TWFpbFVybCgnL2NvdXJyaWVyJyk7XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGZldGNoaW5nIGVtYWlsczonLCBlcnJvcik7XG4gICAgICBzZXRFcnJvcignRmFpbGVkIHRvIGxvYWQgZW1haWxzJyk7XG4gICAgICBzZXRFbWFpbHMoW10pO1xuICAgIH0gZmluYWxseSB7XG4gICAgICBzZXRMb2FkaW5nKGZhbHNlKTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgZm9ybWF0RGF0ZSA9IChkYXRlU3RyaW5nOiBzdHJpbmcpID0+IHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgZGF0ZSA9IG5ldyBEYXRlKGRhdGVTdHJpbmcpO1xuICAgICAgcmV0dXJuIG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KCdmci1GUicsIHtcbiAgICAgICAgbW9udGg6ICdzaG9ydCcsXG4gICAgICAgIGRheTogJ251bWVyaWMnLFxuICAgICAgICBob3VyOiAnMi1kaWdpdCcsXG4gICAgICAgIG1pbnV0ZTogJzItZGlnaXQnXG4gICAgICB9KS5mb3JtYXQoZGF0ZSk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgcmV0dXJuICcnO1xuICAgIH1cbiAgfTtcblxuICByZXR1cm4gKFxuICAgIDxDYXJkIGNsYXNzTmFtZT1cImgtZnVsbFwiPlxuICAgICAgPENhcmRIZWFkZXIgY2xhc3NOYW1lPVwiZmxleCBmbGV4LXJvdyBpdGVtcy1jZW50ZXIganVzdGlmeS1iZXR3ZWVuIHBiLTIgYm9yZGVyLWIgYm9yZGVyLWdyYXktMTAwXCI+XG4gICAgICAgIDxDYXJkVGl0bGUgY2xhc3NOYW1lPVwidGV4dC1sZyBmb250LXNlbWlib2xkIHRleHQtZ3JheS04MDAgZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTJcIj5cbiAgICAgICAgICA8TWFpbCBjbGFzc05hbWU9XCJoLTUgdy01IHRleHQtZ3JheS02MDBcIiAvPlxuICAgICAgICAgIENvdXJyaWVyXG4gICAgICAgIDwvQ2FyZFRpdGxlPlxuICAgICAgICA8QnV0dG9uIFxuICAgICAgICAgIHZhcmlhbnQ9XCJnaG9zdFwiIFxuICAgICAgICAgIHNpemU9XCJpY29uXCIgXG4gICAgICAgICAgb25DbGljaz17KCkgPT4gZmV0Y2hFbWFpbHModHJ1ZSl9XG4gICAgICAgICAgZGlzYWJsZWQ9e2xvYWRpbmd9XG4gICAgICAgID5cbiAgICAgICAgICB7bG9hZGluZyA/IFxuICAgICAgICAgICAgPExvYWRlcjIgY2xhc3NOYW1lPVwiaC00IHctNCBhbmltYXRlLXNwaW5cIiAvPiA6IFxuICAgICAgICAgICAgPFJlZnJlc2hDdyBjbGFzc05hbWU9XCJoLTQgdy00XCIgLz5cbiAgICAgICAgICB9XG4gICAgICAgIDwvQnV0dG9uPlxuICAgICAgPC9DYXJkSGVhZGVyPlxuICAgICAgPENhcmRDb250ZW50IGNsYXNzTmFtZT1cInAtNFwiPlxuICAgICAgICB7ZXJyb3IgPyAoXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0ZXh0LWNlbnRlciBweS00IHRleHQtZ3JheS01MDBcIj5cbiAgICAgICAgICAgIHtlcnJvcn1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgKSA6IGxvYWRpbmcgJiYgZW1haWxzLmxlbmd0aCA9PT0gMCA/IChcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInRleHQtY2VudGVyIHB5LTYgZmxleCBmbGV4LWNvbCBpdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgIDxMb2FkZXIyIGNsYXNzTmFtZT1cImgtNiB3LTYgYW5pbWF0ZS1zcGluIHRleHQtZ3JheS00MDAgbWItMlwiIC8+XG4gICAgICAgICAgICA8cCBjbGFzc05hbWU9XCJ0ZXh0LWdyYXktNTAwXCI+Q2hhcmdlbWVudCBkZXMgZW1haWxzLi4uPC9wPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICApIDogZW1haWxzLmxlbmd0aCA9PT0gMCA/IChcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInRleHQtY2VudGVyIHB5LTZcIj5cbiAgICAgICAgICAgIDxwIGNsYXNzTmFtZT1cInRleHQtZ3JheS01MDBcIj5BdWN1biBlbWFpbCBub24gbHU8L3A+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJzcGFjZS15LTNcIj5cbiAgICAgICAgICAgIHtlbWFpbHMubWFwKChlbWFpbCkgPT4gKFxuICAgICAgICAgICAgICA8ZGl2IGtleT17ZW1haWwuaWR9IGNsYXNzTmFtZT1cImZsZXggaXRlbXMtc3RhcnQgZ2FwLTMgcHktMSBib3JkZXItYiBib3JkZXItZ3JheS0xMDAgbGFzdDpib3JkZXItMFwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicHQtMVwiPlxuICAgICAgICAgICAgICAgICAge2VtYWlsLnJlYWQgPyBcbiAgICAgICAgICAgICAgICAgICAgPE1haWxPcGVuIGNsYXNzTmFtZT1cImgtNCB3LTQgdGV4dC1ncmF5LTQwMFwiIC8+IDogXG4gICAgICAgICAgICAgICAgICAgIDxNYWlsIGNsYXNzTmFtZT1cImgtNCB3LTQgdGV4dC1ibHVlLTUwMFwiIC8+XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmbGV4LTEgbWluLXctMFwiPlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmbGV4IGp1c3RpZnktYmV0d2VlblwiPlxuICAgICAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9XCJmb250LW1lZGl1bSB0cnVuY2F0ZVwiIHN0eWxlPXt7bWF4V2lkdGg6ICcxODBweCd9fT57ZW1haWwuZnJvbU5hbWUgfHwgZW1haWwuZnJvbS5zcGxpdCgnQCcpWzBdfTwvcD5cbiAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3NOYW1lPVwidGV4dC14cyB0ZXh0LWdyYXktNTAwXCI+e2Zvcm1hdERhdGUoZW1haWwuZGF0ZSl9PC9wPlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9XCJ0ZXh0LXNtIHRleHQtZ3JheS03MDAgdHJ1bmNhdGVcIj57ZW1haWwuc3ViamVjdH08L3A+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIHttYWlsVXJsICYmIChcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJwdC0yXCI+XG4gICAgICAgICAgICAgICAgPExpbmsgaHJlZj17bWFpbFVybH0gY2xhc3NOYW1lPVwidGV4dC1zbSB0ZXh0LWJsdWUtNjAwIGhvdmVyOnRleHQtYmx1ZS04MDBcIj5cbiAgICAgICAgICAgICAgICAgIFZvaXIgdG91cyBsZXMgZW1haWxzIOKGklxuICAgICAgICAgICAgICAgIDwvTGluaz5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICApfVxuICAgICAgPC9DYXJkQ29udGVudD5cbiAgICA8L0NhcmQ+XG4gICk7XG59ICJdLCJuYW1lcyI6WyJ1c2VFZmZlY3QiLCJ1c2VTdGF0ZSIsIkNhcmQiLCJDYXJkQ29udGVudCIsIkNhcmRIZWFkZXIiLCJDYXJkVGl0bGUiLCJCdXR0b24iLCJSZWZyZXNoQ3ciLCJNYWlsIiwiTWFpbE9wZW4iLCJMb2FkZXIyIiwiTGluayIsIkVtYWlsIiwiZW1haWxzIiwic2V0RW1haWxzIiwibG9hZGluZyIsInNldExvYWRpbmciLCJlcnJvciIsInNldEVycm9yIiwibWFpbFVybCIsInNldE1haWxVcmwiLCJmZXRjaEVtYWlscyIsImlzUmVmcmVzaCIsInJlc3BvbnNlIiwiZmV0Y2giLCJvayIsIkVycm9yIiwiZGF0YSIsImpzb24iLCJ0cmFuc2Zvcm1lZEVtYWlscyIsIm1hcCIsImVtYWlsIiwiaWQiLCJzdWJqZWN0IiwiZnJvbSIsImFkZHJlc3MiLCJmcm9tTmFtZSIsIm5hbWUiLCJkYXRlIiwicmVhZCIsImZsYWdzIiwic2VlbiIsInN0YXJyZWQiLCJmbGFnZ2VkIiwiZm9sZGVyIiwic29ydCIsImEiLCJiIiwiRGF0ZSIsImdldFRpbWUiLCJzbGljZSIsImNvbnNvbGUiLCJmb3JtYXREYXRlIiwiZGF0ZVN0cmluZyIsIkludGwiLCJEYXRlVGltZUZvcm1hdCIsIm1vbnRoIiwiZGF5IiwiaG91ciIsIm1pbnV0ZSIsImZvcm1hdCIsImUiLCJjbGFzc05hbWUiLCJ2YXJpYW50Iiwic2l6ZSIsIm9uQ2xpY2siLCJkaXNhYmxlZCIsImRpdiIsImxlbmd0aCIsInAiLCJzdHlsZSIsIm1heFdpZHRoIiwic3BsaXQiLCJocmVmIl0sImlnbm9yZUxpc3QiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./components/email.tsx\n");
/***/ }),
/***/ "(ssr)/./components/flow.tsx":
/*!*****************************!*\
!*** ./components/flow.tsx ***!
\*****************************/
/***/ ((__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 */ Duties: () => (/* binding */ Duties)\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/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/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_card__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/components/ui/card */ \"(ssr)/./components/ui/card.tsx\");\n/* harmony import */ var _components_ui_button__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/components/ui/button */ \"(ssr)/./components/ui/button.tsx\");\n/* harmony import */ var _barrel_optimize_names_Folder_RefreshCw_Share2_lucide_react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! __barrel_optimize__?names=Folder,RefreshCw,Share2!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/share-2.js\");\n/* harmony import */ var _barrel_optimize_names_Folder_RefreshCw_Share2_lucide_react__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! __barrel_optimize__?names=Folder,RefreshCw,Share2!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/refresh-cw.js\");\n/* harmony import */ var _barrel_optimize_names_Folder_RefreshCw_Share2_lucide_react__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! __barrel_optimize__?names=Folder,RefreshCw,Share2!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/folder.js\");\n/* __next_internal_client_entry_do_not_use__ Duties auto */ \n\n\n\n\nfunction Duties() {\n const [tasks, setTasks] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)([]);\n const [error, setError] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const [loading, setLoading] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(true);\n const [refreshing, setRefreshing] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n const getStatusLabel = (status)=>{\n switch(status){\n case 1:\n return 'New';\n case 2:\n return 'Blocked';\n case 3:\n return 'In Progress';\n case 4:\n return 'Waiting for Approval';\n case 5:\n return 'Done';\n default:\n return 'Unknown';\n }\n };\n const getStatusColor = (status)=>{\n switch(status){\n case 1:\n return 'bg-blue-500'; // New - blue\n case 2:\n return 'bg-red-500'; // Blocked - red\n case 3:\n return 'bg-yellow-500'; // In Progress - yellow\n case 4:\n return 'bg-purple-500'; // Waiting for Approval - purple\n case 5:\n return 'bg-gray-500'; // Done - gray\n default:\n return 'bg-gray-300';\n }\n };\n const formatDate = (dateStr)=>{\n if (!dateStr || dateStr === '0000-00-00 00:00:00') return '';\n try {\n const date = new Date(dateStr);\n if (isNaN(date.getTime())) return '';\n return date.toLocaleDateString('fr-FR', {\n day: '2-digit',\n month: '2-digit',\n year: 'numeric'\n });\n } catch {\n return '';\n }\n };\n const getValidDate = (task)=>{\n if (task.dateToFinish && task.dateToFinish !== '0000-00-00 00:00:00') {\n return task.dateToFinish;\n }\n return null;\n };\n const fetchTasks = async ()=>{\n setLoading(true);\n setError(null);\n try {\n const response = await fetch('/api/leantime/tasks?refresh=true');\n if (!response.ok) {\n throw new Error('Failed to fetch tasks');\n }\n const data = await response.json();\n console.log('Raw API response:', data);\n if (!Array.isArray(data)) {\n console.warn('No tasks found in response', data);\n setTasks([]);\n return;\n }\n // Filter out tasks with status Done (5) and sort by dateToFinish\n const sortedTasks = data.filter((task)=>{\n // Filter out any task (main or subtask) that has status Done (5)\n const isNotDone = task.status !== 5;\n if (!isNotDone) {\n console.log(`Filtering out Done task ${task.id} (type: ${task.type || 'main'}, status: ${task.status})`);\n } else {\n console.log(`Keeping task ${task.id}: status=${task.status} (${getStatusLabel(task.status)}), type=${task.type || 'main'}`);\n }\n return isNotDone;\n }).sort((a, b)=>{\n // First sort by dateToFinish (oldest first)\n const dateA = getValidDate(a);\n const dateB = getValidDate(b);\n // If both dates are valid, compare them\n if (dateA && dateB) {\n const timeA = new Date(dateA).getTime();\n const timeB = new Date(dateB).getTime();\n if (timeA !== timeB) {\n return timeA - timeB;\n }\n }\n // If only one date is valid, put the task with a date first\n if (dateA) return -1;\n if (dateB) return 1;\n // If dates are equal or neither has a date, sort by status (4 before others)\n if (a.status === 4 && b.status !== 4) return -1;\n if (b.status === 4 && a.status !== 4) return 1;\n // If status is also equal, maintain original order\n return 0;\n });\n console.log('Sorted and filtered tasks:', sortedTasks.map((t)=>({\n id: t.id,\n date: t.dateToFinish,\n status: t.status,\n type: t.type || 'main'\n })));\n setTasks(sortedTasks.slice(0, 7));\n } catch (error) {\n console.error('Error fetching tasks:', error);\n setError(error instanceof Error ? error.message : 'Failed to fetch tasks');\n } finally{\n setLoading(false);\n }\n };\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)({\n \"Duties.useEffect\": ()=>{\n fetchTasks();\n }\n }[\"Duties.useEffect\"], []);\n // Update the TaskDate component to handle dates better\n const TaskDate = ({ task })=>{\n const dateStr = task.dateToFinish;\n if (!dateStr || dateStr === '0000-00-00 00:00:00') {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex flex-col items-center\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"text-[10px] text-gray-600 font-medium\",\n children: \"NO\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/flow.tsx\",\n lineNumber: 172,\n columnNumber: 11\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"text-sm text-gray-700 font-bold\",\n children: \"DATE\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/flow.tsx\",\n lineNumber: 173,\n columnNumber: 11\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/flow.tsx\",\n lineNumber: 171,\n columnNumber: 9\n }, this);\n }\n try {\n const date = new Date(dateStr);\n if (isNaN(date.getTime())) {\n throw new Error('Invalid date');\n }\n const today = new Date();\n today.setHours(0, 0, 0, 0);\n const isPastDue = date < today;\n const month = date.toLocaleString('fr-FR', {\n month: 'short'\n }).toUpperCase();\n const day = date.getDate();\n const year = date.getFullYear();\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex flex-col items-center\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex flex-col items-center\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: `text-[10px] font-medium uppercase ${isPastDue ? 'text-red-600' : 'text-blue-600'}`,\n children: month\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/flow.tsx\",\n lineNumber: 195,\n columnNumber: 13\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: `text-sm font-bold ${isPastDue ? 'text-red-700' : 'text-blue-700'}`,\n children: day\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/flow.tsx\",\n lineNumber: 198,\n columnNumber: 13\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/flow.tsx\",\n lineNumber: 194,\n columnNumber: 11\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: `text-[8px] font-medium ${isPastDue ? 'text-red-500' : 'text-blue-500'}`,\n children: year\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/flow.tsx\",\n lineNumber: 202,\n columnNumber: 11\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/flow.tsx\",\n lineNumber: 193,\n columnNumber: 9\n }, this);\n } catch (error) {\n console.error('Error formatting date for task', task.id, error);\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex flex-col items-center\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"text-[10px] text-gray-600 font-medium\",\n children: \"ERR\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/flow.tsx\",\n lineNumber: 211,\n columnNumber: 11\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"text-sm text-gray-700 font-bold\",\n children: \"DATE\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/flow.tsx\",\n lineNumber: 212,\n columnNumber: 11\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/flow.tsx\",\n lineNumber: 210,\n columnNumber: 9\n }, this);\n }\n };\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_card__WEBPACK_IMPORTED_MODULE_2__.Card, {\n className: \"transition-transform duration-500 ease-in-out transform hover:scale-105 bg-white/95 backdrop-blur-sm border-0 shadow-lg\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_card__WEBPACK_IMPORTED_MODULE_2__.CardHeader, {\n className: \"flex flex-row items-center justify-between pb-2 border-b border-gray-100\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_card__WEBPACK_IMPORTED_MODULE_2__.CardTitle, {\n className: \"text-lg font-semibold text-gray-800 flex items-center gap-2\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_Folder_RefreshCw_Share2_lucide_react__WEBPACK_IMPORTED_MODULE_4__[\"default\"], {\n className: \"h-5 w-5 text-gray-600\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/flow.tsx\",\n lineNumber: 222,\n columnNumber: 11\n }, this),\n \"Devoirs\"\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/flow.tsx\",\n lineNumber: 221,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_button__WEBPACK_IMPORTED_MODULE_3__.Button, {\n variant: \"ghost\",\n size: \"icon\",\n onClick: ()=>fetchTasks(),\n className: \"h-7 w-7 p-0 hover:bg-gray-100/50 rounded-full\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_Folder_RefreshCw_Share2_lucide_react__WEBPACK_IMPORTED_MODULE_5__[\"default\"], {\n className: \"h-3.5 w-3.5 text-gray-600\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/flow.tsx\",\n lineNumber: 231,\n columnNumber: 11\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/flow.tsx\",\n lineNumber: 225,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/flow.tsx\",\n lineNumber: 220,\n columnNumber: 7\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_card__WEBPACK_IMPORTED_MODULE_2__.CardContent, {\n className: \"p-3\",\n children: loading ? /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex items-center justify-center py-6\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"h-4 w-4 animate-spin rounded-full border-2 border-blue-500 border-t-transparent\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/flow.tsx\",\n lineNumber: 237,\n columnNumber: 13\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/flow.tsx\",\n lineNumber: 236,\n columnNumber: 11\n }, this) : error ? /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"text-xs text-red-500 text-center py-3\",\n children: error\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/flow.tsx\",\n lineNumber: 240,\n columnNumber: 11\n }, this) : tasks.length === 0 ? /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"text-xs text-gray-500 text-center py-6\",\n children: \"No tasks with due dates found\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/flow.tsx\",\n lineNumber: 242,\n columnNumber: 11\n }, this) : /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"space-y-2 max-h-[400px] overflow-y-auto pr-1 scrollbar-thin scrollbar-thumb-gray-200 scrollbar-track-transparent\",\n children: tasks.map((task)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"p-2 rounded-lg bg-white shadow-sm hover:shadow-md transition-all duration-200 border border-gray-100\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex gap-2\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex-shrink-0 w-12 h-12 rounded-lg bg-blue-50 flex flex-col items-center justify-center border border-blue-100\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(TaskDate, {\n task: task\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/flow.tsx\",\n lineNumber: 252,\n columnNumber: 21\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/flow.tsx\",\n lineNumber: 251,\n columnNumber: 19\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex-1 min-w-0 space-y-1\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"a\", {\n href: `https://agilite.slm-lab.net/tickets/showTicket/${task.id}`,\n target: \"_blank\",\n rel: \"noopener noreferrer\",\n className: \"text-blue-600 hover:text-blue-700 font-medium block text-sm line-clamp-2\",\n children: task.headline\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/flow.tsx\",\n lineNumber: 255,\n columnNumber: 21\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex items-center text-gray-500 text-[10px] bg-gray-50 px-1.5 py-0.5 rounded-md\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_Folder_RefreshCw_Share2_lucide_react__WEBPACK_IMPORTED_MODULE_6__[\"default\"], {\n className: \"h-2.5 w-2.5 mr-1 opacity-70\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/flow.tsx\",\n lineNumber: 264,\n columnNumber: 23\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"truncate\",\n children: task.projectName\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/flow.tsx\",\n lineNumber: 265,\n columnNumber: 23\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/flow.tsx\",\n lineNumber: 263,\n columnNumber: 21\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/flow.tsx\",\n lineNumber: 254,\n columnNumber: 19\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/flow.tsx\",\n lineNumber: 250,\n columnNumber: 17\n }, this)\n }, task.id, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/flow.tsx\",\n lineNumber: 246,\n columnNumber: 15\n }, this))\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/flow.tsx\",\n lineNumber: 244,\n columnNumber: 11\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/flow.tsx\",\n lineNumber: 234,\n columnNumber: 7\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/flow.tsx\",\n lineNumber: 219,\n columnNumber: 5\n }, this);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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QUFVOzswREFDYiw4REFBQ1o7Z0RBQ0N5QixNQUFNLENBQUMsK0NBQStDLEVBQUU3QyxLQUFLaUIsRUFBRSxFQUFFO2dEQUNqRTZCLFFBQU87Z0RBQ1BDLEtBQUk7Z0RBQ0pmLFdBQVU7MERBRVRoQyxLQUFLZ0QsUUFBUTs7Ozs7OzBEQUVoQiw4REFBQ2pCO2dEQUFJQyxXQUFVOztrRUFDYiw4REFBQ3hELG1HQUFNQTt3REFBQ3dELFdBQVU7Ozs7OztrRUFDbEIsOERBQUNDO3dEQUFLRCxXQUFVO2tFQUFZaEMsS0FBS2lELFdBQVc7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzsyQkFsQjdDakQsS0FBS2lCLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQTZCNUIiLCJzb3VyY2VzIjpbIi9Vc2Vycy9hbG1hL0RvY3VtZW50cy9OZWFoTmV3L2NvbXBvbmVudHMvZmxvdy50c3giXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2UgY2xpZW50XCI7XG5cbmltcG9ydCB7IHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7IENhcmQsIENhcmRDb250ZW50LCBDYXJkSGVhZGVyLCBDYXJkVGl0bGUgfSBmcm9tIFwiQC9jb21wb25lbnRzL3VpL2NhcmRcIjtcbmltcG9ydCB7IEJ1dHRvbiB9IGZyb20gXCJAL2NvbXBvbmVudHMvdWkvYnV0dG9uXCI7XG5pbXBvcnQgeyBSZWZyZXNoQ3csIFNoYXJlMiwgRm9sZGVyIH0gZnJvbSBcImx1Y2lkZS1yZWFjdFwiO1xuaW1wb3J0IHsgQmFkZ2UgfSBmcm9tIFwiQC9jb21wb25lbnRzL3VpL2JhZGdlXCI7XG5cbmludGVyZmFjZSBUYXNrIHtcbiAgaWQ6IG51bWJlcjtcbiAgaGVhZGxpbmU6IHN0cmluZztcbiAgZGVzY3JpcHRpb246IHN0cmluZztcbiAgZGF0ZVRvRmluaXNoOiBzdHJpbmcgfCBudWxsO1xuICBwcm9qZWN0SWQ6IG51bWJlcjtcbiAgcHJvamVjdE5hbWU6IHN0cmluZztcbiAgc3RhdHVzOiBudW1iZXI7XG4gIGVkaXRvcklkPzogc3RyaW5nO1xuICBlZGl0b3JGaXJzdG5hbWU/OiBzdHJpbmc7XG4gIGVkaXRvckxhc3RuYW1lPzogc3RyaW5nO1xuICBhdXRob3JGaXJzdG5hbWU6IHN0cmluZztcbiAgYXV0aG9yTGFzdG5hbWU6IHN0cmluZztcbiAgbWlsZXN0b25lSGVhZGxpbmU/OiBzdHJpbmc7XG4gIGVkaXRUbz86IHN0cmluZztcbiAgZWRpdEZyb20/OiBzdHJpbmc7XG4gIHR5cGU/OiBzdHJpbmc7XG4gIGRlcGVuZGluZ1RpY2tldElkPzogbnVtYmVyIHwgbnVsbDtcbn1cblxuaW50ZXJmYWNlIFByb2plY3RTdW1tYXJ5IHtcbiAgbmFtZTogc3RyaW5nO1xuICB0YXNrczoge1xuICAgIHN0YXR1czogbnVtYmVyO1xuICAgIGNvdW50OiBudW1iZXI7XG4gIH1bXTtcbn1cblxuaW50ZXJmYWNlIFRhc2tXaXRoRGF0ZSBleHRlbmRzIFRhc2sge1xuICB2YWxpZERhdGU/OiBEYXRlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gRHV0aWVzKCkge1xuICBjb25zdCBbdGFza3MsIHNldFRhc2tzXSA9IHVzZVN0YXRlPFRhc2tXaXRoRGF0ZVtdPihbXSk7XG4gIGNvbnN0IFtlcnJvciwgc2V0RXJyb3JdID0gdXNlU3RhdGU8c3RyaW5nIHwgbnVsbD4obnVsbCk7XG4gIGNvbnN0IFtsb2FkaW5nLCBzZXRMb2FkaW5nXSA9IHVzZVN0YXRlKHRydWUpO1xuICBjb25zdCBbcmVmcmVzaGluZywgc2V0UmVmcmVzaGluZ10gPSB1c2VTdGF0ZShmYWxzZSk7XG5cbiAgY29uc3QgZ2V0U3RhdHVzTGFiZWwgPSAoc3RhdHVzOiBudW1iZXIpOiBzdHJpbmcgPT4ge1xuICAgIHN3aXRjaCAoc3RhdHVzKSB7XG4gICAgICBjYXNlIDE6IHJldHVybiAnTmV3JztcbiAgICAgIGNhc2UgMjogcmV0dXJuICdCbG9ja2VkJztcbiAgICAgIGNhc2UgMzogcmV0dXJuICdJbiBQcm9ncmVzcyc7XG4gICAgICBjYXNlIDQ6IHJldHVybiAnV2FpdGluZyBmb3IgQXBwcm92YWwnO1xuICAgICAgY2FzZSA1OiByZXR1cm4gJ0RvbmUnO1xuICAgICAgZGVmYXVsdDogcmV0dXJuICdVbmtub3duJztcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgZ2V0U3RhdHVzQ29sb3IgPSAoc3RhdHVzOiBudW1iZXIpOiBzdHJpbmcgPT4ge1xuICAgIHN3aXRjaCAoc3RhdHVzKSB7XG4gICAgICBjYXNlIDE6IHJldHVybiAnYmctYmx1ZS01MDAnOyAgIC8vIE5ldyAtIGJsdWVcbiAgICAgIGNhc2UgMjogcmV0dXJuICdiZy1yZWQtNTAwJzsgICAgLy8gQmxvY2tlZCAtIHJlZFxuICAgICAgY2FzZSAzOiByZXR1cm4gJ2JnLXllbGxvdy01MDAnOyAvLyBJbiBQcm9ncmVzcyAtIHllbGxvd1xuICAgICAgY2FzZSA0OiByZXR1cm4gJ2JnLXB1cnBsZS01MDAnOyAvLyBXYWl0aW5nIGZvciBBcHByb3ZhbCAtIHB1cnBsZVxuICAgICAgY2FzZSA1OiByZXR1cm4gJ2JnLWdyYXktNTAwJzsgICAvLyBEb25lIC0gZ3JheVxuICAgICAgZGVmYXVsdDogcmV0dXJuICdiZy1ncmF5LTMwMCc7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGZvcm1hdERhdGUgPSAoZGF0ZVN0cjogc3RyaW5nKTogc3RyaW5nID0+IHtcbiAgICBpZiAoIWRhdGVTdHIgfHwgZGF0ZVN0ciA9PT0gJzAwMDAtMDAtMDAgMDA6MDA6MDAnKSByZXR1cm4gJyc7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZShkYXRlU3RyKTtcbiAgICAgIGlmIChpc05hTihkYXRlLmdldFRpbWUoKSkpIHJldHVybiAnJztcbiAgICAgIHJldHVybiBkYXRlLnRvTG9jYWxlRGF0ZVN0cmluZygnZnItRlInLCB7XG4gICAgICAgIGRheTogJzItZGlnaXQnLFxuICAgICAgICBtb250aDogJzItZGlnaXQnLFxuICAgICAgICB5ZWFyOiAnbnVtZXJpYydcbiAgICAgIH0pO1xuICAgIH0gY2F0Y2gge1xuICAgICAgcmV0dXJuICcnO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBnZXRWYWxpZERhdGUgPSAodGFzazogVGFzayk6IHN0cmluZyB8IG51bGwgPT4ge1xuICAgIGlmICh0YXNrLmRhdGVUb0ZpbmlzaCAmJiB0YXNrLmRhdGVUb0ZpbmlzaCAhPT0gJzAwMDAtMDAtMDAgMDA6MDA6MDAnKSB7XG4gICAgICByZXR1cm4gdGFzay5kYXRlVG9GaW5pc2g7XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9O1xuXG4gIGNvbnN0IGZldGNoVGFza3MgPSBhc3luYyAoKSA9PiB7XG4gICAgc2V0TG9hZGluZyh0cnVlKTtcbiAgICBzZXRFcnJvcihudWxsKTtcbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaCgnL2FwaS9sZWFudGltZS90YXNrcz9yZWZyZXNoPXRydWUnKTtcbiAgICAgIGlmICghcmVzcG9uc2Uub2spIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gZmV0Y2ggdGFza3MnKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IGRhdGEgPSBhd2FpdCByZXNwb25zZS5qc29uKCk7XG4gICAgICBcbiAgICAgIGNvbnNvbGUubG9nKCdSYXcgQVBJIHJlc3BvbnNlOicsIGRhdGEpO1xuICAgICAgXG4gICAgICBpZiAoIUFycmF5LmlzQXJyYXkoZGF0YSkpIHtcbiAgICAgICAgY29uc29sZS53YXJuKCdObyB0YXNrcyBmb3VuZCBpbiByZXNwb25zZScsIGRhdGEgYXMgdW5rbm93bik7XG4gICAgICAgIHNldFRhc2tzKFtdKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICAvLyBGaWx0ZXIgb3V0IHRhc2tzIHdpdGggc3RhdHVzIERvbmUgKDUpIGFuZCBzb3J0IGJ5IGRhdGVUb0ZpbmlzaFxuICAgICAgY29uc3Qgc29ydGVkVGFza3MgPSBkYXRhXG4gICAgICAgIC5maWx0ZXIoKHRhc2s6IFRhc2spID0+IHtcbiAgICAgICAgICAvLyBGaWx0ZXIgb3V0IGFueSB0YXNrIChtYWluIG9yIHN1YnRhc2spIHRoYXQgaGFzIHN0YXR1cyBEb25lICg1KVxuICAgICAgICAgIGNvbnN0IGlzTm90RG9uZSA9IHRhc2suc3RhdHVzICE9PSA1O1xuICAgICAgICAgIGlmICghaXNOb3REb25lKSB7XG4gICAgICAgICAgICBjb25zb2xlLmxvZyhgRmlsdGVyaW5nIG91dCBEb25lIHRhc2sgJHt0YXNrLmlkfSAodHlwZTogJHt0YXNrLnR5cGUgfHwgJ21haW4nfSwgc3RhdHVzOiAke3Rhc2suc3RhdHVzfSlgKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc29sZS5sb2coYEtlZXBpbmcgdGFzayAke3Rhc2suaWR9OiBzdGF0dXM9JHt0YXNrLnN0YXR1c30gKCR7Z2V0U3RhdHVzTGFiZWwodGFzay5zdGF0dXMpfSksIHR5cGU9JHt0YXNrLnR5cGUgfHwgJ21haW4nfWApO1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gaXNOb3REb25lO1xuICAgICAgICB9KVxuICAgICAgICAuc29ydCgoYTogVGFzaywgYjogVGFzaykgPT4ge1xuICAgICAgICAgIC8vIEZpcnN0IHNvcnQgYnkgZGF0ZVRvRmluaXNoIChvbGRlc3QgZmlyc3QpXG4gICAgICAgICAgY29uc3QgZGF0ZUEgPSBnZXRWYWxpZERhdGUoYSk7XG4gICAgICAgICAgY29uc3QgZGF0ZUIgPSBnZXRWYWxpZERhdGUoYik7XG4gICAgICAgICAgXG4gICAgICAgICAgLy8gSWYgYm90aCBkYXRlcyBhcmUgdmFsaWQsIGNvbXBhcmUgdGhlbVxuICAgICAgICAgIGlmIChkYXRlQSAmJiBkYXRlQikge1xuICAgICAgICAgICAgY29uc3QgdGltZUEgPSBuZXcgRGF0ZShkYXRlQSkuZ2V0VGltZSgpO1xuICAgICAgICAgICAgY29uc3QgdGltZUIgPSBuZXcgRGF0ZShkYXRlQikuZ2V0VGltZSgpO1xuICAgICAgICAgICAgaWYgKHRpbWVBICE9PSB0aW1lQikge1xuICAgICAgICAgICAgICByZXR1cm4gdGltZUEgLSB0aW1lQjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgXG4gICAgICAgICAgLy8gSWYgb25seSBvbmUgZGF0ZSBpcyB2YWxpZCwgcHV0IHRoZSB0YXNrIHdpdGggYSBkYXRlIGZpcnN0XG4gICAgICAgICAgaWYgKGRhdGVBKSByZXR1cm4gLTE7XG4gICAgICAgICAgaWYgKGRhdGVCKSByZXR1cm4gMTtcbiAgICAgICAgICBcbiAgICAgICAgICAvLyBJZiBkYXRlcyBhcmUgZXF1YWwgb3IgbmVpdGhlciBoYXMgYSBkYXRlLCBzb3J0IGJ5IHN0YXR1cyAoNCBiZWZvcmUgb3RoZXJzKVxuICAgICAgICAgIGlmIChhLnN0YXR1cyA9PT0gNCAmJiBiLnN0YXR1cyAhPT0gNCkgcmV0dXJuIC0xO1xuICAgICAgICAgIGlmIChiLnN0YXR1cyA9PT0gNCAmJiBhLnN0YXR1cyAhPT0gNCkgcmV0dXJuIDE7XG4gICAgICAgICAgXG4gICAgICAgICAgLy8gSWYgc3RhdHVzIGlzIGFsc28gZXF1YWwsIG1haW50YWluIG9yaWdpbmFsIG9yZGVyXG4gICAgICAgICAgcmV0dXJuIDA7XG4gICAgICAgIH0pO1xuXG4gICAgICBjb25zb2xlLmxvZygnU29ydGVkIGFuZCBmaWx0ZXJlZCB0YXNrczonLCBzb3J0ZWRUYXNrcy5tYXAodCA9PiAoe1xuICAgICAgICBpZDogdC5pZCxcbiAgICAgICAgZGF0ZTogdC5kYXRlVG9GaW5pc2gsXG4gICAgICAgIHN0YXR1czogdC5zdGF0dXMsXG4gICAgICAgIHR5cGU6IHQudHlwZSB8fCAnbWFpbidcbiAgICAgIH0pKSk7XG4gICAgICBzZXRUYXNrcyhzb3J0ZWRUYXNrcy5zbGljZSgwLCA3KSk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGZldGNoaW5nIHRhc2tzOicsIGVycm9yKTtcbiAgICAgIHNldEVycm9yKGVycm9yIGluc3RhbmNlb2YgRXJyb3IgPyBlcnJvci5tZXNzYWdlIDogJ0ZhaWxlZCB0byBmZXRjaCB0YXNrcycpO1xuICAgIH0gZmluYWxseSB7XG4gICAgICBzZXRMb2FkaW5nKGZhbHNlKTtcbiAgICB9XG4gIH07XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBmZXRjaFRhc2tzKCk7XG4gIH0sIFtdKTtcblxuICAvLyBVcGRhdGUgdGhlIFRhc2tEYXRlIGNvbXBvbmVudCB0byBoYW5kbGUgZGF0ZXMgYmV0dGVyXG4gIGNvbnN0IFRhc2tEYXRlID0gKHsgdGFzayB9OiB7IHRhc2s6IFRhc2tXaXRoRGF0ZSB9KSA9PiB7XG4gICAgY29uc3QgZGF0ZVN0ciA9IHRhc2suZGF0ZVRvRmluaXNoO1xuICAgIGlmICghZGF0ZVN0ciB8fCBkYXRlU3RyID09PSAnMDAwMC0wMC0wMCAwMDowMDowMCcpIHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmxleCBmbGV4LWNvbCBpdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJ0ZXh0LVsxMHB4XSB0ZXh0LWdyYXktNjAwIGZvbnQtbWVkaXVtXCI+Tk88L3NwYW4+XG4gICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwidGV4dC1zbSB0ZXh0LWdyYXktNzAwIGZvbnQtYm9sZFwiPkRBVEU8L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgKTtcbiAgICB9XG5cbiAgICB0cnkge1xuICAgICAgY29uc3QgZGF0ZSA9IG5ldyBEYXRlKGRhdGVTdHIpO1xuICAgICAgaWYgKGlzTmFOKGRhdGUuZ2V0VGltZSgpKSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgZGF0ZScpO1xuICAgICAgfVxuXG4gICAgICBjb25zdCB0b2RheSA9IG5ldyBEYXRlKCk7XG4gICAgICB0b2RheS5zZXRIb3VycygwLCAwLCAwLCAwKTtcbiAgICAgIGNvbnN0IGlzUGFzdER1ZSA9IGRhdGUgPCB0b2RheTtcblxuICAgICAgY29uc3QgbW9udGggPSBkYXRlLnRvTG9jYWxlU3RyaW5nKCdmci1GUicsIHsgbW9udGg6ICdzaG9ydCcgfSkudG9VcHBlckNhc2UoKTtcbiAgICAgIGNvbnN0IGRheSA9IGRhdGUuZ2V0RGF0ZSgpO1xuICAgICAgY29uc3QgeWVhciA9IGRhdGUuZ2V0RnVsbFllYXIoKTtcbiAgICAgIFxuICAgICAgcmV0dXJuIChcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmbGV4IGZsZXgtY29sIGl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmxleCBmbGV4LWNvbCBpdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT17YHRleHQtWzEwcHhdIGZvbnQtbWVkaXVtIHVwcGVyY2FzZSAke2lzUGFzdER1ZSA/ICd0ZXh0LXJlZC02MDAnIDogJ3RleHQtYmx1ZS02MDAnfWB9PlxuICAgICAgICAgICAgICB7bW9udGh9XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9e2B0ZXh0LXNtIGZvbnQtYm9sZCAke2lzUGFzdER1ZSA/ICd0ZXh0LXJlZC03MDAnIDogJ3RleHQtYmx1ZS03MDAnfWB9PlxuICAgICAgICAgICAgICB7ZGF5fVxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT17YHRleHQtWzhweF0gZm9udC1tZWRpdW0gJHtpc1Bhc3REdWUgPyAndGV4dC1yZWQtNTAwJyA6ICd0ZXh0LWJsdWUtNTAwJ31gfT5cbiAgICAgICAgICAgIHt5ZWFyfVxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICApO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBmb3JtYXR0aW5nIGRhdGUgZm9yIHRhc2snLCB0YXNrLmlkLCBlcnJvcik7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZsZXggZmxleC1jb2wgaXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwidGV4dC1bMTBweF0gdGV4dC1ncmF5LTYwMCBmb250LW1lZGl1bVwiPkVSUjwvc3Bhbj5cbiAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJ0ZXh0LXNtIHRleHQtZ3JheS03MDAgZm9udC1ib2xkXCI+REFURTwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICApO1xuICAgIH1cbiAgfTtcblxuICByZXR1cm4gKFxuICAgIDxDYXJkIGNsYXNzTmFtZT1cInRyYW5zaXRpb24tdHJhbnNmb3JtIGR1cmF0aW9uLTUwMCBlYXNlLWluLW91dCB0cmFuc2Zvcm0gaG92ZXI6c2NhbGUtMTA1IGJnLXdoaXRlLzk1IGJhY2tkcm9wLWJsdXItc20gYm9yZGVyLTAgc2hhZG93LWxnXCI+XG4gICAgICA8Q2FyZEhlYWRlciBjbGFzc05hbWU9XCJmbGV4IGZsZXgtcm93IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW4gcGItMiBib3JkZXItYiBib3JkZXItZ3JheS0xMDBcIj5cbiAgICAgICAgPENhcmRUaXRsZSBjbGFzc05hbWU9XCJ0ZXh0LWxnIGZvbnQtc2VtaWJvbGQgdGV4dC1ncmF5LTgwMCBmbGV4IGl0ZW1zLWNlbnRlciBnYXAtMlwiPlxuICAgICAgICAgIDxTaGFyZTIgY2xhc3NOYW1lPVwiaC01IHctNSB0ZXh0LWdyYXktNjAwXCIgLz5cbiAgICAgICAgICBEZXZvaXJzXG4gICAgICAgIDwvQ2FyZFRpdGxlPlxuICAgICAgICA8QnV0dG9uIFxuICAgICAgICAgIHZhcmlhbnQ9XCJnaG9zdFwiIFxuICAgICAgICAgIHNpemU9XCJpY29uXCIgXG4gICAgICAgICAgb25DbGljaz17KCkgPT4gZmV0Y2hUYXNrcygpfVxuICAgICAgICAgIGNsYXNzTmFtZT1cImgtNyB3LTcgcC0wIGhvdmVyOmJnLWdyYXktMTAwLzUwIHJvdW5kZWQtZnVsbFwiXG4gICAgICAgID5cbiAgICAgICAgICA8UmVmcmVzaEN3IGNsYXNzTmFtZT1cImgtMy41IHctMy41IHRleHQtZ3JheS02MDBcIiAvPlxuICAgICAgICA8L0J1dHRvbj5cbiAgICAgIDwvQ2FyZEhlYWRlcj5cbiAgICAgIDxDYXJkQ29udGVudCBjbGFzc05hbWU9XCJwLTNcIj5cbiAgICAgICAge2xvYWRpbmcgPyAoXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciBweS02XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImgtNCB3LTQgYW5pbWF0ZS1zcGluIHJvdW5kZWQtZnVsbCBib3JkZXItMiBib3JkZXItYmx1ZS01MDAgYm9yZGVyLXQtdHJhbnNwYXJlbnRcIiAvPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICApIDogZXJyb3IgPyAoXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0ZXh0LXhzIHRleHQtcmVkLTUwMCB0ZXh0LWNlbnRlciBweS0zXCI+e2Vycm9yfTwvZGl2PlxuICAgICAgICApIDogdGFza3MubGVuZ3RoID09PSAwID8gKFxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwidGV4dC14cyB0ZXh0LWdyYXktNTAwIHRleHQtY2VudGVyIHB5LTZcIj5ObyB0YXNrcyB3aXRoIGR1ZSBkYXRlcyBmb3VuZDwvZGl2PlxuICAgICAgICApIDogKFxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwic3BhY2UteS0yIG1heC1oLVs0MDBweF0gb3ZlcmZsb3cteS1hdXRvIHByLTEgc2Nyb2xsYmFyLXRoaW4gc2Nyb2xsYmFyLXRodW1iLWdyYXktMjAwIHNjcm9sbGJhci10cmFjay10cmFuc3BhcmVudFwiPlxuICAgICAgICAgICAge3Rhc2tzLm1hcCgodGFzaykgPT4gKFxuICAgICAgICAgICAgICA8ZGl2IFxuICAgICAgICAgICAgICAgIGtleT17dGFzay5pZH1cbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJwLTIgcm91bmRlZC1sZyBiZy13aGl0ZSBzaGFkb3ctc20gaG92ZXI6c2hhZG93LW1kIHRyYW5zaXRpb24tYWxsIGR1cmF0aW9uLTIwMCBib3JkZXIgYm9yZGVyLWdyYXktMTAwXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmxleCBnYXAtMlwiPlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmbGV4LXNocmluay0wIHctMTIgaC0xMiByb3VuZGVkLWxnIGJnLWJsdWUtNTAgZmxleCBmbGV4LWNvbCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgYm9yZGVyIGJvcmRlci1ibHVlLTEwMFwiPlxuICAgICAgICAgICAgICAgICAgICA8VGFza0RhdGUgdGFzaz17dGFza30gLz5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmbGV4LTEgbWluLXctMCBzcGFjZS15LTFcIj5cbiAgICAgICAgICAgICAgICAgICAgPGEgXG4gICAgICAgICAgICAgICAgICAgICAgaHJlZj17YGh0dHBzOi8vYWdpbGl0ZS5zbG0tbGFiLm5ldC90aWNrZXRzL3Nob3dUaWNrZXQvJHt0YXNrLmlkfWB9XG4gICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0PVwiX2JsYW5rXCJcbiAgICAgICAgICAgICAgICAgICAgICByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCJcbiAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJ0ZXh0LWJsdWUtNjAwIGhvdmVyOnRleHQtYmx1ZS03MDAgZm9udC1tZWRpdW0gYmxvY2sgdGV4dC1zbSBsaW5lLWNsYW1wLTJcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAge3Rhc2suaGVhZGxpbmV9XG4gICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmbGV4IGl0ZW1zLWNlbnRlciB0ZXh0LWdyYXktNTAwIHRleHQtWzEwcHhdIGJnLWdyYXktNTAgcHgtMS41IHB5LTAuNSByb3VuZGVkLW1kXCI+XG4gICAgICAgICAgICAgICAgICAgICAgPEZvbGRlciBjbGFzc05hbWU9XCJoLTIuNSB3LTIuNSBtci0xIG9wYWNpdHktNzBcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cInRydW5jYXRlXCI+e3Rhc2sucHJvamVjdE5hbWV9PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICkpfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICApfVxuICAgICAgPC9DYXJkQ29udGVudD5cbiAgICA8L0NhcmQ+XG4gICk7XG59Il0sIm5hbWVzIjpbInVzZUVmZmVjdCIsInVzZVN0YXRlIiwiQ2FyZCIsIkNhcmRDb250ZW50IiwiQ2FyZEhlYWRlciIsIkNhcmRUaXRsZSIsIkJ1dHRvbiIsIlJlZnJlc2hDdyIsIlNoYXJlMiIsIkZvbGRlciIsIkR1dGllcyIsInRhc2tzIiwic2V0VGFza3MiLCJlcnJvciIsInNldEVycm9yIiwibG9hZGluZyIsInNldExvYWRpbmciLCJyZWZyZXNoaW5nIiwic2V0UmVmcmVzaGluZyIsImdldFN0YXR1c0xhYmVsIiwic3RhdHVzIiwiZ2V0U3RhdHVzQ29sb3IiLCJmb3JtYXREYXRlIiwiZGF0ZVN0ciIsImRhdGUiLCJEYXRlIiwiaXNOYU4iLCJnZXRUaW1lIiwidG9Mb2NhbGVEYXRlU3RyaW5nIiwiZGF5IiwibW9udGgiLCJ5ZWFyIiwiZ2V0VmFsaWREYXRlIiwidGFzayIsImRhdGVUb0ZpbmlzaCIsImZldGNoVGFza3MiLCJyZXNwb25zZSIsImZldGNoIiwib2siLCJFcnJvciIsImRhdGEiLCJqc29uIiwiY29uc29sZSIsImxvZyIsIkFycmF5IiwiaXNBcnJheSIsIndhcm4iLCJzb3J0ZWRUYXNrcyIsImZpbHRlciIsImlzTm90RG9uZSIsImlkIiwidHlwZSIsInNvcnQiLCJhIiwiYiIsImRhdGVBIiwiZGF0ZUIiLCJ0aW1lQSIsInRpbWVCIiwibWFwIiwidCIsInNsaWNlIiwibWVzc2FnZSIsIlRhc2tEYXRlIiwiZGl2IiwiY2xhc3NOYW1lIiwic3BhbiIsInRvZGF5Iiwic2V0SG91cnMiLCJpc1Bhc3REdWUiLCJ0b0xvY2FsZVN0cmluZyIsInRvVXBwZXJDYXNlIiwiZ2V0RGF0ZSIsImdldEZ1bGxZZWFyIiwidmFyaWFudCIsInNpemUiLCJvbkNsaWNrIiwibGVuZ3RoIiwiaHJlZiIsInRhcmdldCIsInJlbCIsImhlYWRsaW5lIiwicHJvamVjdE5hbWUiXSwiaWdub3JlTGlzdCI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./components/flow.tsx\n");
/***/ }),
/***/ "(ssr)/./components/footer.tsx":
/*!*******************************!*\
!*** ./components/footer.tsx ***!
\*******************************/
/***/ ((__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 */ Footer: () => (/* binding */ Footer)\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/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 next_link__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! next/link */ \"(ssr)/./node_modules/next/dist/client/app-dir/link.js\");\n/* harmony import */ var next_link__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(next_link__WEBPACK_IMPORTED_MODULE_1__);\n/* __next_internal_client_entry_do_not_use__ Footer auto */ \n\nfunction Footer() {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"footer\", {\n className: \"w-full p-4 bg-black text-white/80\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex space-x-4 text-sm\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)((next_link__WEBPACK_IMPORTED_MODULE_1___default()), {\n href: \"/support\",\n className: \"hover:text-white\",\n children: \"Support\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/footer.tsx\",\n lineNumber: 9,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)((next_link__WEBPACK_IMPORTED_MODULE_1___default()), {\n href: \"/help\",\n className: \"hover:text-white\",\n children: \"Centre d'aide\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/footer.tsx\",\n lineNumber: 12,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)((next_link__WEBPACK_IMPORTED_MODULE_1___default()), {\n href: \"/privacy\",\n className: \"hover:text-white\",\n children: \"Confidentialit\\xe9\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/footer.tsx\",\n lineNumber: 15,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)((next_link__WEBPACK_IMPORTED_MODULE_1___default()), {\n href: \"/tos\",\n className: \"hover:text-white\",\n children: \"Conditions d'utilisation\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/footer.tsx\",\n lineNumber: 18,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/footer.tsx\",\n lineNumber: 8,\n columnNumber: 7\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/footer.tsx\",\n lineNumber: 7,\n columnNumber: 5\n }, this);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9jb21wb25lbnRzL2Zvb3Rlci50c3giLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBRTZCO0FBRXRCLFNBQVNDO0lBQ2QscUJBQ0UsOERBQUNDO1FBQU9DLFdBQVU7a0JBQ2hCLDRFQUFDQztZQUFJRCxXQUFVOzs4QkFDYiw4REFBQ0gsa0RBQUlBO29CQUFDSyxNQUFLO29CQUFXRixXQUFVOzhCQUFtQjs7Ozs7OzhCQUduRCw4REFBQ0gsa0RBQUlBO29CQUFDSyxNQUFLO29CQUFRRixXQUFVOzhCQUFtQjs7Ozs7OzhCQUdoRCw4REFBQ0gsa0RBQUlBO29CQUFDSyxNQUFLO29CQUFXRixXQUFVOzhCQUFtQjs7Ozs7OzhCQUduRCw4REFBQ0gsa0RBQUlBO29CQUFDSyxNQUFLO29CQUFPRixXQUFVOzhCQUFtQjs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFNdkQiLCJzb3VyY2VzIjpbIi9Vc2Vycy9hbG1hL0RvY3VtZW50cy9OZWFoTmV3L2NvbXBvbmVudHMvZm9vdGVyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBjbGllbnRcIjtcblxuaW1wb3J0IExpbmsgZnJvbSBcIm5leHQvbGlua1wiO1xuXG5leHBvcnQgZnVuY3Rpb24gRm9vdGVyKCkge1xuICByZXR1cm4gKFxuICAgIDxmb290ZXIgY2xhc3NOYW1lPSd3LWZ1bGwgcC00IGJnLWJsYWNrIHRleHQtd2hpdGUvODAnPlxuICAgICAgPGRpdiBjbGFzc05hbWU9J2ZsZXggc3BhY2UteC00IHRleHQtc20nPlxuICAgICAgICA8TGluayBocmVmPScvc3VwcG9ydCcgY2xhc3NOYW1lPSdob3Zlcjp0ZXh0LXdoaXRlJz5cbiAgICAgICAgICBTdXBwb3J0XG4gICAgICAgIDwvTGluaz5cbiAgICAgICAgPExpbmsgaHJlZj0nL2hlbHAnIGNsYXNzTmFtZT0naG92ZXI6dGV4dC13aGl0ZSc+XG4gICAgICAgICAgQ2VudHJlIGQnYWlkZVxuICAgICAgICA8L0xpbms+XG4gICAgICAgIDxMaW5rIGhyZWY9Jy9wcml2YWN5JyBjbGFzc05hbWU9J2hvdmVyOnRleHQtd2hpdGUnPlxuICAgICAgICAgIENvbmZpZGVudGlhbGl0w6lcbiAgICAgICAgPC9MaW5rPlxuICAgICAgICA8TGluayBocmVmPScvdG9zJyBjbGFzc05hbWU9J2hvdmVyOnRleHQtd2hpdGUnPlxuICAgICAgICAgIENvbmRpdGlvbnMgZCd1dGlsaXNhdGlvblxuICAgICAgICA8L0xpbms+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Zvb3Rlcj5cbiAgKTtcbn0gIl0sIm5hbWVzIjpbIkxpbmsiLCJGb290ZXIiLCJmb290ZXIiLCJjbGFzc05hbWUiLCJkaXYiLCJocmVmIl0sImlnbm9yZUxpc3QiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./components/footer.tsx\n");
/***/ }),
/***/ "(ssr)/./components/layout/layout-wrapper.tsx":
/*!**********************************************!*\
!*** ./components/layout/layout-wrapper.tsx ***!
\**********************************************/
/***/ ((__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 */ LayoutWrapper: () => (/* binding */ LayoutWrapper)\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/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 _components_main_nav__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @/components/main-nav */ \"(ssr)/./components/main-nav.tsx\");\n/* harmony import */ var _components_footer__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/components/footer */ \"(ssr)/./components/footer.tsx\");\n/* harmony import */ var _components_auth_auth_check__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/components/auth/auth-check */ \"(ssr)/./components/auth/auth-check.tsx\");\n/* harmony import */ var _components_ui_toaster__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @/components/ui/toaster */ \"(ssr)/./components/ui/toaster.tsx\");\n/* harmony import */ var _components_background_switcher__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/components/background-switcher */ \"(ssr)/./components/background-switcher.tsx\");\n/* __next_internal_client_entry_do_not_use__ LayoutWrapper auto */ \n\n\n\n\n\nfunction LayoutWrapper({ children, isSignInPage, isAuthenticated }) {\n const { currentBackground, changeBackground } = (0,_components_background_switcher__WEBPACK_IMPORTED_MODULE_5__.useBackgroundImage)();\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_auth_auth_check__WEBPACK_IMPORTED_MODULE_3__.AuthCheck, {\n children: [\n !isSignInPage && isAuthenticated && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_main_nav__WEBPACK_IMPORTED_MODULE_1__.MainNav, {}, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/layout/layout-wrapper.tsx\",\n lineNumber: 20,\n columnNumber: 44\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: isSignInPage ? \"min-h-screen\" : \"min-h-screen\",\n style: isSignInPage ? {} // No background style for signin page - let the page component handle it\n : {\n backgroundImage: `url('${currentBackground}')`,\n backgroundSize: 'cover',\n backgroundPosition: 'center',\n backgroundRepeat: 'no-repeat',\n backgroundAttachment: 'fixed',\n cursor: 'pointer',\n transition: 'background-image 0.5s ease-in-out'\n },\n onClick: !isSignInPage ? changeBackground : undefined,\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"main\", {\n children: children\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/layout/layout-wrapper.tsx\",\n lineNumber: 38,\n columnNumber: 9\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/layout/layout-wrapper.tsx\",\n lineNumber: 21,\n columnNumber: 7\n }, this),\n !isSignInPage && isAuthenticated && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_footer__WEBPACK_IMPORTED_MODULE_2__.Footer, {}, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/layout/layout-wrapper.tsx\",\n lineNumber: 40,\n columnNumber: 44\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_toaster__WEBPACK_IMPORTED_MODULE_4__.Toaster, {}, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/layout/layout-wrapper.tsx\",\n lineNumber: 41,\n columnNumber: 7\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/layout/layout-wrapper.tsx\",\n lineNumber: 19,\n columnNumber: 5\n }, this);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9jb21wb25lbnRzL2xheW91dC9sYXlvdXQtd3JhcHBlci50c3giLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBRWdEO0FBQ0g7QUFDWTtBQUNQO0FBQ29CO0FBUS9ELFNBQVNLLGNBQWMsRUFBRUMsUUFBUSxFQUFFQyxZQUFZLEVBQUVDLGVBQWUsRUFBc0I7SUFDM0YsTUFBTSxFQUFFQyxpQkFBaUIsRUFBRUMsZ0JBQWdCLEVBQUUsR0FBR04sbUZBQWtCQTtJQUVsRSxxQkFDRSw4REFBQ0Ysa0VBQVNBOztZQUNQLENBQUNLLGdCQUFnQkMsaUNBQW1CLDhEQUFDUix5REFBT0E7Ozs7OzBCQUM3Qyw4REFBQ1c7Z0JBQ0NDLFdBQVdMLGVBQWUsaUJBQWlCO2dCQUMzQ00sT0FDRU4sZUFDSSxDQUFDLEVBQUUseUVBQXlFO21CQUM1RTtvQkFDRU8saUJBQWlCLENBQUMsS0FBSyxFQUFFTCxrQkFBa0IsRUFBRSxDQUFDO29CQUM5Q00sZ0JBQWdCO29CQUNoQkMsb0JBQW9CO29CQUNwQkMsa0JBQWtCO29CQUNsQkMsc0JBQXNCO29CQUN0QkMsUUFBUTtvQkFDUkMsWUFBWTtnQkFDZDtnQkFFTkMsU0FBUyxDQUFDZCxlQUFlRyxtQkFBbUJZOzBCQUU1Qyw0RUFBQ0M7OEJBQU1qQjs7Ozs7Ozs7Ozs7WUFFUixDQUFDQyxnQkFBZ0JDLGlDQUFtQiw4REFBQ1Asc0RBQU1BOzs7OzswQkFDNUMsOERBQUNFLDJEQUFPQTs7Ozs7Ozs7Ozs7QUFHZCIsInNvdXJjZXMiOlsiL1VzZXJzL2FsbWEvRG9jdW1lbnRzL05lYWhOZXcvY29tcG9uZW50cy9sYXlvdXQvbGF5b3V0LXdyYXBwZXIudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIGNsaWVudFwiO1xuXG5pbXBvcnQgeyBNYWluTmF2IH0gZnJvbSBcIkAvY29tcG9uZW50cy9tYWluLW5hdlwiO1xuaW1wb3J0IHsgRm9vdGVyIH0gZnJvbSBcIkAvY29tcG9uZW50cy9mb290ZXJcIjtcbmltcG9ydCB7IEF1dGhDaGVjayB9IGZyb20gXCJAL2NvbXBvbmVudHMvYXV0aC9hdXRoLWNoZWNrXCI7XG5pbXBvcnQgeyBUb2FzdGVyIH0gZnJvbSBcIkAvY29tcG9uZW50cy91aS90b2FzdGVyXCI7XG5pbXBvcnQgeyB1c2VCYWNrZ3JvdW5kSW1hZ2UgfSBmcm9tIFwiQC9jb21wb25lbnRzL2JhY2tncm91bmQtc3dpdGNoZXJcIjtcblxuaW50ZXJmYWNlIExheW91dFdyYXBwZXJQcm9wcyB7XG4gIGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGU7XG4gIGlzU2lnbkluUGFnZTogYm9vbGVhbjtcbiAgaXNBdXRoZW50aWNhdGVkOiBib29sZWFuO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gTGF5b3V0V3JhcHBlcih7IGNoaWxkcmVuLCBpc1NpZ25JblBhZ2UsIGlzQXV0aGVudGljYXRlZCB9OiBMYXlvdXRXcmFwcGVyUHJvcHMpIHtcbiAgY29uc3QgeyBjdXJyZW50QmFja2dyb3VuZCwgY2hhbmdlQmFja2dyb3VuZCB9ID0gdXNlQmFja2dyb3VuZEltYWdlKCk7XG5cbiAgcmV0dXJuIChcbiAgICA8QXV0aENoZWNrPlxuICAgICAgeyFpc1NpZ25JblBhZ2UgJiYgaXNBdXRoZW50aWNhdGVkICYmIDxNYWluTmF2IC8+fVxuICAgICAgPGRpdiBcbiAgICAgICAgY2xhc3NOYW1lPXtpc1NpZ25JblBhZ2UgPyBcIm1pbi1oLXNjcmVlblwiIDogXCJtaW4taC1zY3JlZW5cIn1cbiAgICAgICAgc3R5bGU9e1xuICAgICAgICAgIGlzU2lnbkluUGFnZSBcbiAgICAgICAgICAgID8ge30gLy8gTm8gYmFja2dyb3VuZCBzdHlsZSBmb3Igc2lnbmluIHBhZ2UgLSBsZXQgdGhlIHBhZ2UgY29tcG9uZW50IGhhbmRsZSBpdFxuICAgICAgICAgICAgOiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZEltYWdlOiBgdXJsKCcke2N1cnJlbnRCYWNrZ3JvdW5kfScpYCxcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kU2l6ZTogJ2NvdmVyJyxcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kUG9zaXRpb246ICdjZW50ZXInLFxuICAgICAgICAgICAgICAgIGJhY2tncm91bmRSZXBlYXQ6ICduby1yZXBlYXQnLFxuICAgICAgICAgICAgICAgIGJhY2tncm91bmRBdHRhY2htZW50OiAnZml4ZWQnLFxuICAgICAgICAgICAgICAgIGN1cnNvcjogJ3BvaW50ZXInLFxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246ICdiYWNrZ3JvdW5kLWltYWdlIDAuNXMgZWFzZS1pbi1vdXQnXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBvbkNsaWNrPXshaXNTaWduSW5QYWdlID8gY2hhbmdlQmFja2dyb3VuZCA6IHVuZGVmaW5lZH1cbiAgICAgID5cbiAgICAgICAgPG1haW4+e2NoaWxkcmVufTwvbWFpbj5cbiAgICAgIDwvZGl2PlxuICAgICAgeyFpc1NpZ25JblBhZ2UgJiYgaXNBdXRoZW50aWNhdGVkICYmIDxGb290ZXIgLz59XG4gICAgICA8VG9hc3RlciAvPlxuICAgIDwvQXV0aENoZWNrPlxuICApO1xufSAiXSwibmFtZXMiOlsiTWFpbk5hdiIsIkZvb3RlciIsIkF1dGhDaGVjayIsIlRvYXN0ZXIiLCJ1c2VCYWNrZ3JvdW5kSW1hZ2UiLCJMYXlvdXRXcmFwcGVyIiwiY2hpbGRyZW4iLCJpc1NpZ25JblBhZ2UiLCJpc0F1dGhlbnRpY2F0ZWQiLCJjdXJyZW50QmFja2dyb3VuZCIsImNoYW5nZUJhY2tncm91bmQiLCJkaXYiLCJjbGFzc05hbWUiLCJzdHlsZSIsImJhY2tncm91bmRJbWFnZSIsImJhY2tncm91bmRTaXplIiwiYmFja2dyb3VuZFBvc2l0aW9uIiwiYmFja2dyb3VuZFJlcGVhdCIsImJhY2tncm91bmRBdHRhY2htZW50IiwiY3Vyc29yIiwidHJhbnNpdGlvbiIsIm9uQ2xpY2siLCJ1bmRlZmluZWQiLCJtYWluIl0sImlnbm9yZUxpc3QiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./components/layout/layout-wrapper.tsx\n");
/***/ }),
/***/ "(ssr)/./components/main-nav.tsx":
/*!*********************************!*\
!*** ./components/main-nav.tsx ***!
\*********************************/
/***/ ((__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 */ MainNav: () => (/* binding */ MainNav)\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/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/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 _barrel_optimize_names_BookOpenText_BotIcon_Calendar_Circle_Clock_LogOut_Mail_Megaphone_Menu_PenLine_Radio_Target_Telescope_UserCog_Video_lucide_react__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! __barrel_optimize__?names=BookOpenText,BotIcon,Calendar,Circle,Clock,LogOut,Mail,Megaphone,Menu,PenLine,Radio,Target,Telescope,UserCog,Video!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/target.js\");\n/* harmony import */ var _barrel_optimize_names_BookOpenText_BotIcon_Calendar_Circle_Clock_LogOut_Mail_Megaphone_Menu_PenLine_Radio_Target_Telescope_UserCog_Video_lucide_react__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! __barrel_optimize__?names=BookOpenText,BotIcon,Calendar,Circle,Clock,LogOut,Mail,Megaphone,Menu,PenLine,Radio,Target,Telescope,UserCog,Video!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/user-cog.js\");\n/* harmony import */ var _barrel_optimize_names_BookOpenText_BotIcon_Calendar_Circle_Clock_LogOut_Mail_Megaphone_Menu_PenLine_Radio_Target_Telescope_UserCog_Video_lucide_react__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! __barrel_optimize__?names=BookOpenText,BotIcon,Calendar,Circle,Clock,LogOut,Mail,Megaphone,Menu,PenLine,Radio,Target,Telescope,UserCog,Video!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/mail.js\");\n/* harmony import */ var _barrel_optimize_names_BookOpenText_BotIcon_Calendar_Circle_Clock_LogOut_Mail_Megaphone_Menu_PenLine_Radio_Target_Telescope_UserCog_Video_lucide_react__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! __barrel_optimize__?names=BookOpenText,BotIcon,Calendar,Circle,Clock,LogOut,Mail,Megaphone,Menu,PenLine,Radio,Target,Telescope,UserCog,Video!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/menu.js\");\n/* harmony import */ var _barrel_optimize_names_BookOpenText_BotIcon_Calendar_Circle_Clock_LogOut_Mail_Megaphone_Menu_PenLine_Radio_Target_Telescope_UserCog_Video_lucide_react__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! __barrel_optimize__?names=BookOpenText,BotIcon,Calendar,Circle,Clock,LogOut,Mail,Megaphone,Menu,PenLine,Radio,Target,Telescope,UserCog,Video!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/calendar.js\");\n/* harmony import */ var _barrel_optimize_names_BookOpenText_BotIcon_Calendar_Circle_Clock_LogOut_Mail_Megaphone_Menu_PenLine_Radio_Target_Telescope_UserCog_Video_lucide_react__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! __barrel_optimize__?names=BookOpenText,BotIcon,Calendar,Circle,Clock,LogOut,Mail,Megaphone,Menu,PenLine,Radio,Target,Telescope,UserCog,Video!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/clock.js\");\n/* harmony import */ var _barrel_optimize_names_BookOpenText_BotIcon_Calendar_Circle_Clock_LogOut_Mail_Megaphone_Menu_PenLine_Radio_Target_Telescope_UserCog_Video_lucide_react__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! __barrel_optimize__?names=BookOpenText,BotIcon,Calendar,Circle,Clock,LogOut,Mail,Megaphone,Menu,PenLine,Radio,Target,Telescope,UserCog,Video!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/pen-line.js\");\n/* harmony import */ var _barrel_optimize_names_BookOpenText_BotIcon_Calendar_Circle_Clock_LogOut_Mail_Megaphone_Menu_PenLine_Radio_Target_Telescope_UserCog_Video_lucide_react__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! __barrel_optimize__?names=BookOpenText,BotIcon,Calendar,Circle,Clock,LogOut,Mail,Megaphone,Menu,PenLine,Radio,Target,Telescope,UserCog,Video!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/bot.js\");\n/* harmony import */ var _barrel_optimize_names_BookOpenText_BotIcon_Calendar_Circle_Clock_LogOut_Mail_Megaphone_Menu_PenLine_Radio_Target_Telescope_UserCog_Video_lucide_react__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! __barrel_optimize__?names=BookOpenText,BotIcon,Calendar,Circle,Clock,LogOut,Mail,Megaphone,Menu,PenLine,Radio,Target,Telescope,UserCog,Video!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/video.js\");\n/* harmony import */ var _barrel_optimize_names_BookOpenText_BotIcon_Calendar_Circle_Clock_LogOut_Mail_Megaphone_Menu_PenLine_Radio_Target_Telescope_UserCog_Video_lucide_react__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! __barrel_optimize__?names=BookOpenText,BotIcon,Calendar,Circle,Clock,LogOut,Mail,Megaphone,Menu,PenLine,Radio,Target,Telescope,UserCog,Video!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/telescope.js\");\n/* harmony import */ var _barrel_optimize_names_BookOpenText_BotIcon_Calendar_Circle_Clock_LogOut_Mail_Megaphone_Menu_PenLine_Radio_Target_Telescope_UserCog_Video_lucide_react__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! __barrel_optimize__?names=BookOpenText,BotIcon,Calendar,Circle,Clock,LogOut,Mail,Megaphone,Menu,PenLine,Radio,Target,Telescope,UserCog,Video!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/radio.js\");\n/* harmony import */ var _barrel_optimize_names_BookOpenText_BotIcon_Calendar_Circle_Clock_LogOut_Mail_Megaphone_Menu_PenLine_Radio_Target_Telescope_UserCog_Video_lucide_react__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! __barrel_optimize__?names=BookOpenText,BotIcon,Calendar,Circle,Clock,LogOut,Mail,Megaphone,Menu,PenLine,Radio,Target,Telescope,UserCog,Video!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/book-open-text.js\");\n/* harmony import */ var _barrel_optimize_names_BookOpenText_BotIcon_Calendar_Circle_Clock_LogOut_Mail_Megaphone_Menu_PenLine_Radio_Target_Telescope_UserCog_Video_lucide_react__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! __barrel_optimize__?names=BookOpenText,BotIcon,Calendar,Circle,Clock,LogOut,Mail,Megaphone,Menu,PenLine,Radio,Target,Telescope,UserCog,Video!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/megaphone.js\");\n/* harmony import */ var _barrel_optimize_names_BookOpenText_BotIcon_Calendar_Circle_Clock_LogOut_Mail_Megaphone_Menu_PenLine_Radio_Target_Telescope_UserCog_Video_lucide_react__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! __barrel_optimize__?names=BookOpenText,BotIcon,Calendar,Circle,Clock,LogOut,Mail,Megaphone,Menu,PenLine,Radio,Target,Telescope,UserCog,Video!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/circle.js\");\n/* harmony import */ var _barrel_optimize_names_BookOpenText_BotIcon_Calendar_Circle_Clock_LogOut_Mail_Megaphone_Menu_PenLine_Radio_Target_Telescope_UserCog_Video_lucide_react__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! __barrel_optimize__?names=BookOpenText,BotIcon,Calendar,Circle,Clock,LogOut,Mail,Megaphone,Menu,PenLine,Radio,Target,Telescope,UserCog,Video!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/log-out.js\");\n/* harmony import */ var next_image__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! next/image */ \"(ssr)/./node_modules/next/dist/api/image.js\");\n/* harmony import */ var next_link__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! next/link */ \"(ssr)/./node_modules/next/dist/client/app-dir/link.js\");\n/* harmony import */ var next_link__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(next_link__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _sidebar__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./sidebar */ \"(ssr)/./components/sidebar.tsx\");\n/* harmony import */ var next_auth_react__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! next-auth/react */ \"(ssr)/./node_modules/next-auth/react/index.js\");\n/* harmony import */ var next_auth_react__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(next_auth_react__WEBPACK_IMPORTED_MODULE_5__);\n/* harmony import */ var _components_ui_dropdown_menu__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @/components/ui/dropdown-menu */ \"(ssr)/./components/ui/dropdown-menu.tsx\");\n/* harmony import */ var _barrel_optimize_names_format_date_fns__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! __barrel_optimize__?names=format!=!date-fns */ \"(ssr)/./node_modules/date-fns/format.mjs\");\n/* harmony import */ var date_fns_locale__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! date-fns/locale */ \"(ssr)/./node_modules/date-fns/locale/fr.mjs\");\n/* harmony import */ var _notification_badge__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./notification-badge */ \"(ssr)/./components/notification-badge.tsx\");\n/* harmony import */ var _notes_dialog__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./notes-dialog */ \"(ssr)/./components/notes-dialog.tsx\");\n/* harmony import */ var _components_electron_WindowControls__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @/components/electron/WindowControls */ \"(ssr)/./components/electron/WindowControls.tsx\");\n/* __next_internal_client_entry_do_not_use__ MainNav auto */ \n\n\n\n\n\n\n\n\n\n\n\n\nconst requestNotificationPermission = async ()=>{\n try {\n const permission = await Notification.requestPermission();\n return permission === \"granted\";\n } catch (error) {\n console.error(\"Error requesting notification permission:\", error);\n return false;\n }\n};\nfunction MainNav() {\n const [isSidebarOpen, setIsSidebarOpen] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n const { data: session, status } = (0,next_auth_react__WEBPACK_IMPORTED_MODULE_5__.useSession)();\n const [userStatus, setUserStatus] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)('online');\n const [isNotesDialogOpen, setIsNotesDialogOpen] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n console.log(\"Session:\", session);\n console.log(\"Status:\", status);\n // Updated function to get user initials\n const getUserInitials = ()=>{\n if (session?.user?.name) {\n // Split the full name and get initials\n const names = session.user.name.split(' ');\n if (names.length >= 2) {\n return `${names[0][0]}${names[names.length - 1][0]}`.toUpperCase();\n }\n // If only one name, use first two letters\n return names[0].slice(0, 2).toUpperCase();\n }\n return \"?\";\n };\n // Function to get display name\n const getDisplayName = ()=>{\n return session?.user?.name || \"User\";\n };\n // Function to get user role\n const getUserRole = ()=>{\n if (session?.user?.role) {\n if (Array.isArray(session.user.role)) {\n // Filter out technical roles and format remaining ones\n return session.user.role.filter((role)=>![\n 'offline_access',\n 'uma_authorization',\n 'default-roles-cercle'\n ].includes(role)).map((role)=>{\n // Transform role names\n switch(role){\n case 'ROLE_Mentors':\n return 'Mentor';\n case 'ROLE_apprentice':\n return 'Apprentice';\n case 'ROLE_Admin':\n return 'Admin';\n default:\n return role.replace('ROLE_', '');\n }\n }).join(', ');\n }\n return session.user.role;\n }\n return \"\";\n };\n // Function to check if user has a specific role\n const hasRole = (requiredRoles)=>{\n if (!session?.user?.role) {\n console.log('No user roles found');\n return false;\n }\n const userRoles = Array.isArray(session.user.role) ? session.user.role : [\n session.user.role\n ];\n console.log('Raw user roles:', userRoles);\n // Clean up user roles by removing prefixes and converting to lowercase\n const cleanUserRoles = userRoles.map((role)=>role.replace(/^[\\/]/, '') // Remove leading slash\n .replace(/^ROLE_/, '') // Remove ROLE_ prefix\n .toLowerCase());\n console.log('Clean user roles:', cleanUserRoles);\n // Clean required roles\n const cleanRequiredRoles = requiredRoles.map((role)=>role.toLowerCase());\n console.log('Clean required roles:', cleanRequiredRoles);\n // Check if user has any of the required roles\n const hasAnyRole = cleanRequiredRoles.some((role)=>cleanUserRoles.includes(role));\n console.log('Has any role:', hasAnyRole);\n return hasAnyRole;\n };\n // Status configurations\n const statusConfig = {\n online: {\n color: 'text-green-500',\n label: 'Online',\n notifications: true\n },\n busy: {\n color: 'text-orange-500',\n label: 'Busy',\n notifications: false\n },\n away: {\n color: 'text-gray-500',\n label: 'Away',\n notifications: false\n }\n };\n // Handle status change\n const handleStatusChange = async (newStatus)=>{\n setUserStatus(newStatus);\n if (newStatus !== 'online') {\n // If status is busy or away, check and request notification permission if needed\n const hasPermission = await requestNotificationPermission();\n if (hasPermission) {\n // Disable notifications\n if ('serviceWorker' in navigator) {\n const registration = await navigator.serviceWorker.ready;\n await registration.pushManager.getSubscription()?.then((subscription)=>{\n if (subscription) {\n subscription.unsubscribe();\n }\n });\n }\n }\n } else {\n // Re-enable notifications if going back online\n requestNotificationPermission();\n }\n };\n // Base menu items (available for everyone)\n const baseMenuItems = [\n {\n title: \"WP-Admin\",\n icon: _barrel_optimize_names_BookOpenText_BotIcon_Calendar_Circle_Clock_LogOut_Mail_Megaphone_Menu_PenLine_Radio_Target_Telescope_UserCog_Video_lucide_react__WEBPACK_IMPORTED_MODULE_10__[\"default\"],\n href: '/wp-admin'\n }\n ];\n // Role-specific menu items\n const roleSpecificItems = [\n {\n title: \"Centrale\",\n icon: _barrel_optimize_names_BookOpenText_BotIcon_Calendar_Circle_Clock_LogOut_Mail_Megaphone_Menu_PenLine_Radio_Target_Telescope_UserCog_Video_lucide_react__WEBPACK_IMPORTED_MODULE_10__[\"default\"],\n href: '/missions',\n requiredRoles: [\n \"entrepreneurship\",\n \"admin\"\n ]\n },\n {\n title: \"Equipes\",\n icon: _barrel_optimize_names_BookOpenText_BotIcon_Calendar_Circle_Clock_LogOut_Mail_Megaphone_Menu_PenLine_Radio_Target_Telescope_UserCog_Video_lucide_react__WEBPACK_IMPORTED_MODULE_11__[\"default\"],\n href: '/equipes',\n requiredRoles: [\n \"admin\",\n \"entrepreneurship\"\n ]\n },\n {\n title: \"TheMessage\",\n icon: _barrel_optimize_names_BookOpenText_BotIcon_Calendar_Circle_Clock_LogOut_Mail_Megaphone_Menu_PenLine_Radio_Target_Telescope_UserCog_Video_lucide_react__WEBPACK_IMPORTED_MODULE_12__[\"default\"],\n href: '/the-message',\n requiredRoles: [\n \"mediation\",\n \"expression\"\n ]\n }\n ];\n // Get visible menu items based on user roles\n const visibleMenuItems = [\n ...baseMenuItems,\n ...roleSpecificItems.filter((item)=>hasRole(item.requiredRoles))\n ];\n // Format current date and time\n const now = new Date();\n const formattedDate = (0,_barrel_optimize_names_format_date_fns__WEBPACK_IMPORTED_MODULE_13__.format)(now, \"d MMMM yyyy\", {\n locale: date_fns_locale__WEBPACK_IMPORTED_MODULE_14__.fr\n });\n const formattedTime = (0,_barrel_optimize_names_format_date_fns__WEBPACK_IMPORTED_MODULE_13__.format)(now, \"HH:mm\");\n return /*#__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)(\"div\", {\n className: \"fixed top-0 left-0 right-0 z-50 bg-black\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex items-center justify-between px-4 py-1\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex items-center space-x-4\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"button\", {\n onClick: ()=>setIsSidebarOpen(true),\n className: \"text-white/80 hover:text-white\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_BookOpenText_BotIcon_Calendar_Circle_Clock_LogOut_Mail_Megaphone_Menu_PenLine_Radio_Target_Telescope_UserCog_Video_lucide_react__WEBPACK_IMPORTED_MODULE_15__[\"default\"], {\n className: \"w-5 h-5\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 242,\n columnNumber: 15\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 238,\n columnNumber: 13\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)((next_link__WEBPACK_IMPORTED_MODULE_3___default()), {\n href: \"/\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(next_image__WEBPACK_IMPORTED_MODULE_2__[\"default\"], {\n src: \"/Neahv2 logo W.png\",\n alt: \"Neah Logo\",\n width: 40,\n height: 13,\n className: \"text-white\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 245,\n columnNumber: 15\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 244,\n columnNumber: 13\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)((next_link__WEBPACK_IMPORTED_MODULE_3___default()), {\n href: \"/agenda\",\n className: \"text-white/80 hover:text-white\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_BookOpenText_BotIcon_Calendar_Circle_Clock_LogOut_Mail_Megaphone_Menu_PenLine_Radio_Target_Telescope_UserCog_Video_lucide_react__WEBPACK_IMPORTED_MODULE_16__[\"default\"], {\n className: \"w-5 h-5\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 254,\n columnNumber: 15\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 253,\n columnNumber: 13\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)((next_link__WEBPACK_IMPORTED_MODULE_3___default()), {\n href: \"/timetracker\",\n className: \"text-white/80 hover:text-white\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_BookOpenText_BotIcon_Calendar_Circle_Clock_LogOut_Mail_Megaphone_Menu_PenLine_Radio_Target_Telescope_UserCog_Video_lucide_react__WEBPACK_IMPORTED_MODULE_17__[\"default\"], {\n className: \"w-5 h-5\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 257,\n columnNumber: 15\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"sr-only\",\n children: \"TimeTracker\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 258,\n columnNumber: 15\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 256,\n columnNumber: 13\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"button\", {\n onClick: ()=>setIsNotesDialogOpen(true),\n className: \"text-white/80 hover:text-white\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_BookOpenText_BotIcon_Calendar_Circle_Clock_LogOut_Mail_Megaphone_Menu_PenLine_Radio_Target_Telescope_UserCog_Video_lucide_react__WEBPACK_IMPORTED_MODULE_18__[\"default\"], {\n className: \"w-5 h-5\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 264,\n columnNumber: 15\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"sr-only\",\n children: \"Notes\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 265,\n columnNumber: 15\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 260,\n columnNumber: 13\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)((next_link__WEBPACK_IMPORTED_MODULE_3___default()), {\n href: \"/alma\",\n className: \"text-white/80 hover:text-white\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_BookOpenText_BotIcon_Calendar_Circle_Clock_LogOut_Mail_Megaphone_Menu_PenLine_Radio_Target_Telescope_UserCog_Video_lucide_react__WEBPACK_IMPORTED_MODULE_19__[\"default\"], {\n className: \"w-5 h-5\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 268,\n columnNumber: 15\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"sr-only\",\n children: \"ALMA\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 269,\n columnNumber: 15\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 267,\n columnNumber: 13\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)((next_link__WEBPACK_IMPORTED_MODULE_3___default()), {\n href: \"/vision\",\n className: \"text-white/80 hover:text-white\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_BookOpenText_BotIcon_Calendar_Circle_Clock_LogOut_Mail_Megaphone_Menu_PenLine_Radio_Target_Telescope_UserCog_Video_lucide_react__WEBPACK_IMPORTED_MODULE_20__[\"default\"], {\n className: \"w-5 h-5\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 272,\n columnNumber: 15\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"sr-only\",\n children: \"Vision\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 273,\n columnNumber: 15\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 271,\n columnNumber: 13\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)((next_link__WEBPACK_IMPORTED_MODULE_3___default()), {\n href: \"/observatory\",\n className: \"text-white/80 hover:text-white\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_BookOpenText_BotIcon_Calendar_Circle_Clock_LogOut_Mail_Megaphone_Menu_PenLine_Radio_Target_Telescope_UserCog_Video_lucide_react__WEBPACK_IMPORTED_MODULE_21__[\"default\"], {\n className: \"w-5 h-5\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 276,\n columnNumber: 15\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"sr-only\",\n children: \"Observatory\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 277,\n columnNumber: 15\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 275,\n columnNumber: 13\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)((next_link__WEBPACK_IMPORTED_MODULE_3___default()), {\n href: \"/radio\",\n className: \"text-white/80 hover:text-white\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_BookOpenText_BotIcon_Calendar_Circle_Clock_LogOut_Mail_Megaphone_Menu_PenLine_Radio_Target_Telescope_UserCog_Video_lucide_react__WEBPACK_IMPORTED_MODULE_22__[\"default\"], {\n className: \"w-5 h-5\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 280,\n columnNumber: 15\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"sr-only\",\n children: \"Radio\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 281,\n columnNumber: 15\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 279,\n columnNumber: 13\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)((next_link__WEBPACK_IMPORTED_MODULE_3___default()), {\n href: \"/press\",\n className: \"text-white/80 hover:text-white\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_BookOpenText_BotIcon_Calendar_Circle_Clock_LogOut_Mail_Megaphone_Menu_PenLine_Radio_Target_Telescope_UserCog_Video_lucide_react__WEBPACK_IMPORTED_MODULE_23__[\"default\"], {\n className: \"w-5 h-5\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 284,\n columnNumber: 15\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"sr-only\",\n children: \"Press\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 285,\n columnNumber: 15\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 283,\n columnNumber: 13\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)((next_link__WEBPACK_IMPORTED_MODULE_3___default()), {\n href: \"/announcement\",\n className: \"text-white/80 hover:text-white\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_BookOpenText_BotIcon_Calendar_Circle_Clock_LogOut_Mail_Megaphone_Menu_PenLine_Radio_Target_Telescope_UserCog_Video_lucide_react__WEBPACK_IMPORTED_MODULE_24__[\"default\"], {\n className: \"w-5 h-5\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 288,\n columnNumber: 15\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"sr-only\",\n children: \"Announcement\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 289,\n columnNumber: 15\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 287,\n columnNumber: 13\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 237,\n columnNumber: 11\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"hidden md:flex flex-col items-center\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"text-white/80 text-xs\",\n children: formattedDate\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 295,\n columnNumber: 13\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"text-white text-sm font-medium\",\n children: formattedTime\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 296,\n columnNumber: 13\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 294,\n columnNumber: 11\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex items-center space-x-2\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_electron_WindowControls__WEBPACK_IMPORTED_MODULE_9__.WindowControls, {}, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 302,\n columnNumber: 13\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_notification_badge__WEBPACK_IMPORTED_MODULE_7__.NotificationBadge, {}, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 304,\n columnNumber: 13\n }, this),\n status === \"authenticated\" && session?.user ? /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_dropdown_menu__WEBPACK_IMPORTED_MODULE_6__.DropdownMenu, {\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_dropdown_menu__WEBPACK_IMPORTED_MODULE_6__.DropdownMenuTrigger, {\n className: \"outline-none\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"w-8 h-8 rounded-full bg-blue-600 flex items-center justify-center text-white cursor-pointer hover:bg-blue-700 transition-colors\",\n children: getUserInitials()\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 309,\n columnNumber: 19\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 308,\n columnNumber: 17\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_dropdown_menu__WEBPACK_IMPORTED_MODULE_6__.DropdownMenuContent, {\n align: \"end\",\n className: \"w-56 bg-black/90 border-gray-700\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_dropdown_menu__WEBPACK_IMPORTED_MODULE_6__.DropdownMenuLabel, {\n className: \"text-white/80\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex items-center justify-between\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n children: getDisplayName()\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 316,\n columnNumber: 23\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_dropdown_menu__WEBPACK_IMPORTED_MODULE_6__.DropdownMenu, {\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_dropdown_menu__WEBPACK_IMPORTED_MODULE_6__.DropdownMenuTrigger, {\n className: \"outline-none\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex items-center space-x-1 text-sm\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_BookOpenText_BotIcon_Calendar_Circle_Clock_LogOut_Mail_Megaphone_Menu_PenLine_Radio_Target_Telescope_UserCog_Video_lucide_react__WEBPACK_IMPORTED_MODULE_25__[\"default\"], {\n className: `h-3 w-3 ${statusConfig[userStatus].color}`\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 320,\n columnNumber: 29\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"text-gray-400\",\n children: statusConfig[userStatus].label\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 321,\n columnNumber: 29\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 319,\n columnNumber: 27\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 318,\n columnNumber: 25\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_dropdown_menu__WEBPACK_IMPORTED_MODULE_6__.DropdownMenuContent, {\n className: \"bg-black/90 border-gray-700\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_dropdown_menu__WEBPACK_IMPORTED_MODULE_6__.DropdownMenuItem, {\n className: \"text-white/80 hover:text-white hover:bg-black/50 cursor-pointer\",\n onClick: ()=>handleStatusChange('online'),\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_BookOpenText_BotIcon_Calendar_Circle_Clock_LogOut_Mail_Megaphone_Menu_PenLine_Radio_Target_Telescope_UserCog_Video_lucide_react__WEBPACK_IMPORTED_MODULE_25__[\"default\"], {\n className: \"h-3 w-3 text-green-500 mr-2\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 329,\n columnNumber: 29\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n children: \"Online\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 330,\n columnNumber: 29\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 325,\n columnNumber: 27\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_dropdown_menu__WEBPACK_IMPORTED_MODULE_6__.DropdownMenuItem, {\n className: \"text-white/80 hover:text-white hover:bg-black/50 cursor-pointer\",\n onClick: ()=>handleStatusChange('busy'),\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_BookOpenText_BotIcon_Calendar_Circle_Clock_LogOut_Mail_Megaphone_Menu_PenLine_Radio_Target_Telescope_UserCog_Video_lucide_react__WEBPACK_IMPORTED_MODULE_25__[\"default\"], {\n className: \"h-3 w-3 text-orange-500 mr-2\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 336,\n columnNumber: 29\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n children: \"Busy\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 337,\n columnNumber: 29\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 332,\n columnNumber: 27\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_dropdown_menu__WEBPACK_IMPORTED_MODULE_6__.DropdownMenuItem, {\n className: \"text-white/80 hover:text-white hover:bg-black/50 cursor-pointer\",\n onClick: ()=>handleStatusChange('away'),\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_BookOpenText_BotIcon_Calendar_Circle_Clock_LogOut_Mail_Megaphone_Menu_PenLine_Radio_Target_Telescope_UserCog_Video_lucide_react__WEBPACK_IMPORTED_MODULE_25__[\"default\"], {\n className: \"h-3 w-3 text-gray-500 mr-2\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 343,\n columnNumber: 29\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n children: \"Away\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 344,\n columnNumber: 29\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 339,\n columnNumber: 27\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 324,\n columnNumber: 25\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 317,\n columnNumber: 23\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 315,\n columnNumber: 21\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 314,\n columnNumber: 19\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_dropdown_menu__WEBPACK_IMPORTED_MODULE_6__.DropdownMenuSeparator, {\n className: \"bg-gray-700\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 350,\n columnNumber: 19\n }, this),\n visibleMenuItems.map((item)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_dropdown_menu__WEBPACK_IMPORTED_MODULE_6__.DropdownMenuItem, {\n className: \"text-white/80 hover:text-white hover:bg-black/50 cursor-pointer\",\n onClick: ()=>window.location.href = item.href,\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(item.icon, {\n className: \"mr-2 h-4 w-4\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 357,\n columnNumber: 23\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n children: item.title\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 358,\n columnNumber: 23\n }, this)\n ]\n }, item.title, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 352,\n columnNumber: 21\n }, this)),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_dropdown_menu__WEBPACK_IMPORTED_MODULE_6__.DropdownMenuItem, {\n className: \"text-white/80 hover:text-white hover:bg-black/50 cursor-pointer\",\n onClick: async ()=>{\n try {\n const keycloakIssuer = process.env.NEXT_PUBLIC_KEYCLOAK_ISSUER;\n const idToken = session?.idToken;\n // First sign out from NextAuth (clears NextAuth cookies)\n await (0,next_auth_react__WEBPACK_IMPORTED_MODULE_5__.signOut)({\n callbackUrl: '/signin',\n redirect: false\n });\n // If we have Keycloak ID token and issuer, call Keycloak logout\n if (keycloakIssuer && idToken) {\n const keycloakLogoutUrl = new URL(`${keycloakIssuer}/protocol/openid-connect/logout`);\n // Add required parameters\n keycloakLogoutUrl.searchParams.append('post_logout_redirect_uri', window.location.origin + '/signin');\n keycloakLogoutUrl.searchParams.append('id_token_hint', idToken);\n // Redirect to Keycloak logout (this will clear Keycloak cookies)\n window.location.href = keycloakLogoutUrl.toString();\n } else {\n // Fallback: just redirect to signin if we don't have Keycloak info\n window.location.href = '/signin';\n }\n } catch (error) {\n console.error('Error during logout:', error);\n // Fallback to simple redirect if something goes wrong\n window.location.href = '/signin';\n }\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_BookOpenText_BotIcon_Calendar_Circle_Clock_LogOut_Mail_Megaphone_Menu_PenLine_Radio_Target_Telescope_UserCog_Video_lucide_react__WEBPACK_IMPORTED_MODULE_26__[\"default\"], {\n className: \"mr-2 h-4 w-4\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 403,\n columnNumber: 21\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n children: \"D\\xe9connexion\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 404,\n columnNumber: 21\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 361,\n columnNumber: 19\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 313,\n columnNumber: 17\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 307,\n columnNumber: 15\n }, this) : /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"cursor-pointer text-white/80 hover:text-white\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n onClick: ()=>(0,next_auth_react__WEBPACK_IMPORTED_MODULE_5__.signIn)(\"keycloak\", {\n callbackUrl: \"/\"\n }),\n children: \"Login\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 410,\n columnNumber: 17\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 409,\n columnNumber: 15\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 300,\n columnNumber: 11\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 235,\n columnNumber: 9\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 234,\n columnNumber: 7\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_sidebar__WEBPACK_IMPORTED_MODULE_4__.Sidebar, {\n isOpen: isSidebarOpen,\n onClose: ()=>setIsSidebarOpen(false)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 418,\n columnNumber: 7\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_notes_dialog__WEBPACK_IMPORTED_MODULE_8__.NotesDialog, {\n open: isNotesDialogOpen,\n onOpenChange: setIsNotesDialogOpen\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/main-nav.tsx\",\n lineNumber: 419,\n columnNumber: 7\n }, this)\n ]\n }, void 0, true);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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Q2tILFFBQVE1RjtnQkFBZTZGLFNBQVMsSUFBTTVGLGlCQUFpQjs7Ozs7OzBCQUNoRSw4REFBQ1Ysc0RBQVdBO2dCQUNWdUcsTUFBTXZGO2dCQUNOd0YsY0FBY3ZGOzs7Ozs7OztBQUl0QiIsInNvdXJjZXMiOlsiL1VzZXJzL2FsbWEvRG9jdW1lbnRzL05lYWhOZXcvY29tcG9uZW50cy9tYWluLW5hdi50c3giXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2UgY2xpZW50XCI7XG5cbmltcG9ydCB7IHVzZVN0YXRlLCB1c2VFZmZlY3QgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7XG4gIENhbGVuZGFyLFxuICBNZXNzYWdlU3F1YXJlLFxuICBCb3RJY29uIGFzIFJvYm90LFxuICBCZWxsLFxuICBVc2VycyxcbiAgTG9nT3V0LFxuICBVc2VyQ29nLFxuICBDbG9jayxcbiAgUGVuTGluZSxcbiAgVmlkZW8sXG4gIFJhZGlvIGFzIFJhZGlvSWNvbixcbiAgTWVnYXBob25lLFxuICBIZWFydCxcbiAgVGFyZ2V0LFxuICBNYWlsLFxuICBUZWxlc2NvcGUsXG4gIExpZ2h0YnVsYixcbiAgQ2lyY2xlLFxuICBNZW51LFxuICBOZXdzcGFwZXIsXG4gIEJvb2tPcGVuVGV4dCxcbn0gZnJvbSBcImx1Y2lkZS1yZWFjdFwiO1xuaW1wb3J0IEltYWdlIGZyb20gXCJuZXh0L2ltYWdlXCI7XG5pbXBvcnQgTGluayBmcm9tIFwibmV4dC9saW5rXCI7XG5pbXBvcnQgeyBTaWRlYmFyIH0gZnJvbSBcIi4vc2lkZWJhclwiO1xuaW1wb3J0IHsgdXNlU2Vzc2lvbiwgc2lnbkluLCBzaWduT3V0IH0gZnJvbSBcIm5leHQtYXV0aC9yZWFjdFwiO1xuaW1wb3J0IHtcbiAgRHJvcGRvd25NZW51LFxuICBEcm9wZG93bk1lbnVDb250ZW50LFxuICBEcm9wZG93bk1lbnVJdGVtLFxuICBEcm9wZG93bk1lbnVMYWJlbCxcbiAgRHJvcGRvd25NZW51U2VwYXJhdG9yLFxuICBEcm9wZG93bk1lbnVUcmlnZ2VyLFxufSBmcm9tIFwiQC9jb21wb25lbnRzL3VpL2Ryb3Bkb3duLW1lbnVcIjtcbmltcG9ydCB7IGZvcm1hdCB9IGZyb20gJ2RhdGUtZm5zJztcbmltcG9ydCB7IGZyIH0gZnJvbSAnZGF0ZS1mbnMvbG9jYWxlJztcbmltcG9ydCB7IE5vdGlmaWNhdGlvbkJhZGdlIH0gZnJvbSAnLi9ub3RpZmljYXRpb24tYmFkZ2UnO1xuaW1wb3J0IHsgTm90ZXNEaWFsb2cgfSBmcm9tICcuL25vdGVzLWRpYWxvZyc7XG5pbXBvcnQgeyBXaW5kb3dDb250cm9scyB9IGZyb20gXCJAL2NvbXBvbmVudHMvZWxlY3Ryb24vV2luZG93Q29udHJvbHNcIjtcblxuY29uc3QgcmVxdWVzdE5vdGlmaWNhdGlvblBlcm1pc3Npb24gPSBhc3luYyAoKSA9PiB7XG4gIHRyeSB7XG4gICAgY29uc3QgcGVybWlzc2lvbiA9IGF3YWl0IE5vdGlmaWNhdGlvbi5yZXF1ZXN0UGVybWlzc2lvbigpO1xuICAgIHJldHVybiBwZXJtaXNzaW9uID09PSBcImdyYW50ZWRcIjtcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICBjb25zb2xlLmVycm9yKFwiRXJyb3IgcmVxdWVzdGluZyBub3RpZmljYXRpb24gcGVybWlzc2lvbjpcIiwgZXJyb3IpO1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufTtcblxuZXhwb3J0IGZ1bmN0aW9uIE1haW5OYXYoKSB7XG4gIGNvbnN0IFtpc1NpZGViYXJPcGVuLCBzZXRJc1NpZGViYXJPcGVuXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgeyBkYXRhOiBzZXNzaW9uLCBzdGF0dXMgfSA9IHVzZVNlc3Npb24oKTtcbiAgY29uc3QgW3VzZXJTdGF0dXMsIHNldFVzZXJTdGF0dXNdID0gdXNlU3RhdGU8J29ubGluZScgfCAnYnVzeScgfCAnYXdheSc+KCdvbmxpbmUnKTtcbiAgY29uc3QgW2lzTm90ZXNEaWFsb2dPcGVuLCBzZXRJc05vdGVzRGlhbG9nT3Blbl0gPSB1c2VTdGF0ZShmYWxzZSk7XG5cbiAgY29uc29sZS5sb2coXCJTZXNzaW9uOlwiLCBzZXNzaW9uKTtcbiAgY29uc29sZS5sb2coXCJTdGF0dXM6XCIsIHN0YXR1cyk7XG5cbiAgLy8gVXBkYXRlZCBmdW5jdGlvbiB0byBnZXQgdXNlciBpbml0aWFsc1xuICBjb25zdCBnZXRVc2VySW5pdGlhbHMgPSAoKSA9PiB7XG4gICAgaWYgKHNlc3Npb24/LnVzZXI/Lm5hbWUpIHtcbiAgICAgIC8vIFNwbGl0IHRoZSBmdWxsIG5hbWUgYW5kIGdldCBpbml0aWFsc1xuICAgICAgY29uc3QgbmFtZXMgPSBzZXNzaW9uLnVzZXIubmFtZS5zcGxpdCgnICcpO1xuICAgICAgaWYgKG5hbWVzLmxlbmd0aCA+PSAyKSB7XG4gICAgICAgIHJldHVybiBgJHtuYW1lc1swXVswXX0ke25hbWVzW25hbWVzLmxlbmd0aCAtIDFdWzBdfWAudG9VcHBlckNhc2UoKTtcbiAgICAgIH1cbiAgICAgIC8vIElmIG9ubHkgb25lIG5hbWUsIHVzZSBmaXJzdCB0d28gbGV0dGVyc1xuICAgICAgcmV0dXJuIG5hbWVzWzBdLnNsaWNlKDAsIDIpLnRvVXBwZXJDYXNlKCk7XG4gICAgfVxuICAgIHJldHVybiBcIj9cIjtcbiAgfTtcblxuICAvLyBGdW5jdGlvbiB0byBnZXQgZGlzcGxheSBuYW1lXG4gIGNvbnN0IGdldERpc3BsYXlOYW1lID0gKCkgPT4ge1xuICAgIHJldHVybiBzZXNzaW9uPy51c2VyPy5uYW1lIHx8IFwiVXNlclwiO1xuICB9O1xuXG4gIC8vIEZ1bmN0aW9uIHRvIGdldCB1c2VyIHJvbGVcbiAgY29uc3QgZ2V0VXNlclJvbGUgPSAoKSA9PiB7XG4gICAgaWYgKHNlc3Npb24/LnVzZXI/LnJvbGUpIHtcbiAgICAgIGlmIChBcnJheS5pc0FycmF5KHNlc3Npb24udXNlci5yb2xlKSkge1xuICAgICAgICAvLyBGaWx0ZXIgb3V0IHRlY2huaWNhbCByb2xlcyBhbmQgZm9ybWF0IHJlbWFpbmluZyBvbmVzXG4gICAgICAgIHJldHVybiBzZXNzaW9uLnVzZXIucm9sZVxuICAgICAgICAgIC5maWx0ZXIocm9sZSA9PiBcbiAgICAgICAgICAgICFbJ29mZmxpbmVfYWNjZXNzJywgJ3VtYV9hdXRob3JpemF0aW9uJywgJ2RlZmF1bHQtcm9sZXMtY2VyY2xlJ10uaW5jbHVkZXMocm9sZSlcbiAgICAgICAgICApXG4gICAgICAgICAgLm1hcChyb2xlID0+IHtcbiAgICAgICAgICAgIC8vIFRyYW5zZm9ybSByb2xlIG5hbWVzXG4gICAgICAgICAgICBzd2l0Y2gocm9sZSkge1xuICAgICAgICAgICAgICBjYXNlICdST0xFX01lbnRvcnMnOlxuICAgICAgICAgICAgICAgIHJldHVybiAnTWVudG9yJztcbiAgICAgICAgICAgICAgY2FzZSAnUk9MRV9hcHByZW50aWNlJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gJ0FwcHJlbnRpY2UnO1xuICAgICAgICAgICAgICBjYXNlICdST0xFX0FkbWluJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gJ0FkbWluJztcbiAgICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICByZXR1cm4gcm9sZS5yZXBsYWNlKCdST0xFXycsICcnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KVxuICAgICAgICAgIC5qb2luKCcsICcpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHNlc3Npb24udXNlci5yb2xlO1xuICAgIH1cbiAgICByZXR1cm4gXCJcIjtcbiAgfTtcblxuICAvLyBGdW5jdGlvbiB0byBjaGVjayBpZiB1c2VyIGhhcyBhIHNwZWNpZmljIHJvbGVcbiAgY29uc3QgaGFzUm9sZSA9IChyZXF1aXJlZFJvbGVzOiBzdHJpbmdbXSkgPT4ge1xuICAgIGlmICghc2Vzc2lvbj8udXNlcj8ucm9sZSkge1xuICAgICAgY29uc29sZS5sb2coJ05vIHVzZXIgcm9sZXMgZm91bmQnKTtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgXG4gICAgY29uc3QgdXNlclJvbGVzID0gQXJyYXkuaXNBcnJheShzZXNzaW9uLnVzZXIucm9sZSkgPyBzZXNzaW9uLnVzZXIucm9sZSA6IFtzZXNzaW9uLnVzZXIucm9sZV07XG4gICAgY29uc29sZS5sb2coJ1JhdyB1c2VyIHJvbGVzOicsIHVzZXJSb2xlcyk7XG4gICAgXG4gICAgLy8gQ2xlYW4gdXAgdXNlciByb2xlcyBieSByZW1vdmluZyBwcmVmaXhlcyBhbmQgY29udmVydGluZyB0byBsb3dlcmNhc2VcbiAgICBjb25zdCBjbGVhblVzZXJSb2xlcyA9IHVzZXJSb2xlcy5tYXAocm9sZSA9PiBcbiAgICAgIHJvbGUucmVwbGFjZSgvXltcXC9dLywgJycpICAvLyBSZW1vdmUgbGVhZGluZyBzbGFzaFxuICAgICAgICAgIC5yZXBsYWNlKC9eUk9MRV8vLCAnJykgLy8gUmVtb3ZlIFJPTEVfIHByZWZpeFxuICAgICAgICAgIC50b0xvd2VyQ2FzZSgpXG4gICAgKTtcbiAgICBjb25zb2xlLmxvZygnQ2xlYW4gdXNlciByb2xlczonLCBjbGVhblVzZXJSb2xlcyk7XG4gICAgXG4gICAgLy8gQ2xlYW4gcmVxdWlyZWQgcm9sZXNcbiAgICBjb25zdCBjbGVhblJlcXVpcmVkUm9sZXMgPSByZXF1aXJlZFJvbGVzLm1hcChyb2xlID0+IHJvbGUudG9Mb3dlckNhc2UoKSk7XG4gICAgY29uc29sZS5sb2coJ0NsZWFuIHJlcXVpcmVkIHJvbGVzOicsIGNsZWFuUmVxdWlyZWRSb2xlcyk7XG4gICAgXG4gICAgLy8gQ2hlY2sgaWYgdXNlciBoYXMgYW55IG9mIHRoZSByZXF1aXJlZCByb2xlc1xuICAgIGNvbnN0IGhhc0FueVJvbGUgPSBjbGVhblJlcXVpcmVkUm9sZXMuc29tZShyb2xlID0+IGNsZWFuVXNlclJvbGVzLmluY2x1ZGVzKHJvbGUpKTtcbiAgICBjb25zb2xlLmxvZygnSGFzIGFueSByb2xlOicsIGhhc0FueVJvbGUpO1xuICAgIFxuICAgIHJldHVybiBoYXNBbnlSb2xlO1xuICB9O1xuXG4gIC8vIFN0YXR1cyBjb25maWd1cmF0aW9uc1xuICBjb25zdCBzdGF0dXNDb25maWcgPSB7XG4gICAgb25saW5lOiB7XG4gICAgICBjb2xvcjogJ3RleHQtZ3JlZW4tNTAwJyxcbiAgICAgIGxhYmVsOiAnT25saW5lJyxcbiAgICAgIG5vdGlmaWNhdGlvbnM6IHRydWVcbiAgICB9LFxuICAgIGJ1c3k6IHtcbiAgICAgIGNvbG9yOiAndGV4dC1vcmFuZ2UtNTAwJyxcbiAgICAgIGxhYmVsOiAnQnVzeScsXG4gICAgICBub3RpZmljYXRpb25zOiBmYWxzZVxuICAgIH0sXG4gICAgYXdheToge1xuICAgICAgY29sb3I6ICd0ZXh0LWdyYXktNTAwJyxcbiAgICAgIGxhYmVsOiAnQXdheScsXG4gICAgICBub3RpZmljYXRpb25zOiBmYWxzZVxuICAgIH0sXG4gIH07XG5cbiAgLy8gSGFuZGxlIHN0YXR1cyBjaGFuZ2VcbiAgY29uc3QgaGFuZGxlU3RhdHVzQ2hhbmdlID0gYXN5bmMgKG5ld1N0YXR1czogJ29ubGluZScgfCAnYnVzeScgfCAnYXdheScpID0+IHtcbiAgICBzZXRVc2VyU3RhdHVzKG5ld1N0YXR1cyk7XG4gICAgXG4gICAgaWYgKG5ld1N0YXR1cyAhPT0gJ29ubGluZScpIHtcbiAgICAgIC8vIElmIHN0YXR1cyBpcyBidXN5IG9yIGF3YXksIGNoZWNrIGFuZCByZXF1ZXN0IG5vdGlmaWNhdGlvbiBwZXJtaXNzaW9uIGlmIG5lZWRlZFxuICAgICAgY29uc3QgaGFzUGVybWlzc2lvbiA9IGF3YWl0IHJlcXVlc3ROb3RpZmljYXRpb25QZXJtaXNzaW9uKCk7XG4gICAgICBcbiAgICAgIGlmIChoYXNQZXJtaXNzaW9uKSB7XG4gICAgICAgIC8vIERpc2FibGUgbm90aWZpY2F0aW9uc1xuICAgICAgICBpZiAoJ3NlcnZpY2VXb3JrZXInIGluIG5hdmlnYXRvcikge1xuICAgICAgICAgIGNvbnN0IHJlZ2lzdHJhdGlvbiA9IGF3YWl0IG5hdmlnYXRvci5zZXJ2aWNlV29ya2VyLnJlYWR5O1xuICAgICAgICAgIGF3YWl0IHJlZ2lzdHJhdGlvbi5wdXNoTWFuYWdlci5nZXRTdWJzY3JpcHRpb24oKT8udGhlbihzdWJzY3JpcHRpb24gPT4ge1xuICAgICAgICAgICAgaWYgKHN1YnNjcmlwdGlvbikge1xuICAgICAgICAgICAgICBzdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICAvLyBSZS1lbmFibGUgbm90aWZpY2F0aW9ucyBpZiBnb2luZyBiYWNrIG9ubGluZVxuICAgICAgcmVxdWVzdE5vdGlmaWNhdGlvblBlcm1pc3Npb24oKTtcbiAgICB9XG4gIH07XG5cbiAgLy8gQmFzZSBtZW51IGl0ZW1zIChhdmFpbGFibGUgZm9yIGV2ZXJ5b25lKVxuICBjb25zdCBiYXNlTWVudUl0ZW1zOiB7XG4gICAgdGl0bGU6IHN0cmluZztcbiAgICBpY29uOiBhbnk7XG4gICAgaHJlZjogc3RyaW5nO1xuICAgIHJlcXVpcmVkUm9sZXM/OiBzdHJpbmdbXTtcbiAgfVtdID0gW1xuICAgIHtcbiAgICAgIHRpdGxlOiBcIldQLUFkbWluXCIsXG4gICAgICBpY29uOiBUYXJnZXQsXG4gICAgICBocmVmOiAnL3dwLWFkbWluJyxcbiAgICB9LFxuICBdO1xuXG4gIC8vIFJvbGUtc3BlY2lmaWMgbWVudSBpdGVtc1xuICBjb25zdCByb2xlU3BlY2lmaWNJdGVtcyA9IFtcbiAgICB7XG4gICAgICB0aXRsZTogXCJDZW50cmFsZVwiLFxuICAgICAgaWNvbjogVGFyZ2V0LFxuICAgICAgaHJlZjogJy9taXNzaW9ucycsXG4gICAgICByZXF1aXJlZFJvbGVzOiBbXCJlbnRyZXByZW5ldXJzaGlwXCIsIFwiYWRtaW5cIl0sXG4gICAgfSxcbiAgICB7XG4gICAgICB0aXRsZTogXCJFcXVpcGVzXCIsXG4gICAgICBpY29uOiBVc2VyQ29nLFxuICAgICAgaHJlZjogJy9lcXVpcGVzJyxcbiAgICAgIHJlcXVpcmVkUm9sZXM6IFtcImFkbWluXCIsIFwiZW50cmVwcmVuZXVyc2hpcFwiXSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHRpdGxlOiBcIlRoZU1lc3NhZ2VcIixcbiAgICAgIGljb246IE1haWwsXG4gICAgICBocmVmOiAnL3RoZS1tZXNzYWdlJyxcbiAgICAgIHJlcXVpcmVkUm9sZXM6IFtcIm1lZGlhdGlvblwiLCBcImV4cHJlc3Npb25cIl0sXG4gICAgfSxcbiAgXTtcblxuICAvLyBHZXQgdmlzaWJsZSBtZW51IGl0ZW1zIGJhc2VkIG9uIHVzZXIgcm9sZXNcbiAgY29uc3QgdmlzaWJsZU1lbnVJdGVtcyA9IFtcbiAgICAuLi5iYXNlTWVudUl0ZW1zLFxuICAgIC4uLnJvbGVTcGVjaWZpY0l0ZW1zLmZpbHRlcihpdGVtID0+IGhhc1JvbGUoaXRlbS5yZXF1aXJlZFJvbGVzKSlcbiAgXTtcblxuICAvLyBGb3JtYXQgY3VycmVudCBkYXRlIGFuZCB0aW1lXG4gIGNvbnN0IG5vdyA9IG5ldyBEYXRlKCk7XG4gIGNvbnN0IGZvcm1hdHRlZERhdGUgPSBmb3JtYXQobm93LCBcImQgTU1NTSB5eXl5XCIsIHsgbG9jYWxlOiBmciB9KTtcbiAgY29uc3QgZm9ybWF0dGVkVGltZSA9IGZvcm1hdChub3csIFwiSEg6bW1cIik7XG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJmaXhlZCB0b3AtMCBsZWZ0LTAgcmlnaHQtMCB6LTUwIGJnLWJsYWNrXCI+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1iZXR3ZWVuIHB4LTQgcHktMVwiPlxuICAgICAgICAgIHsvKiBMZWZ0IHNpZGUgKi99XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmbGV4IGl0ZW1zLWNlbnRlciBzcGFjZS14LTRcIj5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gc2V0SXNTaWRlYmFyT3Blbih0cnVlKX1cbiAgICAgICAgICAgICAgY2xhc3NOYW1lPVwidGV4dC13aGl0ZS84MCBob3Zlcjp0ZXh0LXdoaXRlXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPE1lbnUgY2xhc3NOYW1lPVwidy01IGgtNVwiIC8+XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIDxMaW5rIGhyZWY9Jy8nPlxuICAgICAgICAgICAgICA8SW1hZ2VcbiAgICAgICAgICAgICAgICBzcmM9Jy9OZWFodjIgbG9nbyBXLnBuZydcbiAgICAgICAgICAgICAgICBhbHQ9J05lYWggTG9nbydcbiAgICAgICAgICAgICAgICB3aWR0aD17NDB9XG4gICAgICAgICAgICAgICAgaGVpZ2h0PXsxM31cbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9J3RleHQtd2hpdGUnXG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8L0xpbms+XG4gICAgICAgICAgICA8TGluayBocmVmPScvYWdlbmRhJyBjbGFzc05hbWU9J3RleHQtd2hpdGUvODAgaG92ZXI6dGV4dC13aGl0ZSc+XG4gICAgICAgICAgICAgIDxDYWxlbmRhciBjbGFzc05hbWU9J3ctNSBoLTUnIC8+XG4gICAgICAgICAgICA8L0xpbms+XG4gICAgICAgICAgICA8TGluayBocmVmPScvdGltZXRyYWNrZXInIGNsYXNzTmFtZT0ndGV4dC13aGl0ZS84MCBob3Zlcjp0ZXh0LXdoaXRlJz5cbiAgICAgICAgICAgICAgPENsb2NrIGNsYXNzTmFtZT0ndy01IGgtNScgLz5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwic3Itb25seVwiPlRpbWVUcmFja2VyPC9zcGFuPlxuICAgICAgICAgICAgPC9MaW5rPlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBzZXRJc05vdGVzRGlhbG9nT3Blbih0cnVlKX1cbiAgICAgICAgICAgICAgY2xhc3NOYW1lPSd0ZXh0LXdoaXRlLzgwIGhvdmVyOnRleHQtd2hpdGUnXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxQZW5MaW5lIGNsYXNzTmFtZT0ndy01IGgtNScgLz5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwic3Itb25seVwiPk5vdGVzPC9zcGFuPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8TGluayBocmVmPScvYWxtYScgY2xhc3NOYW1lPSd0ZXh0LXdoaXRlLzgwIGhvdmVyOnRleHQtd2hpdGUnPlxuICAgICAgICAgICAgICA8Um9ib3QgY2xhc3NOYW1lPSd3LTUgaC01JyAvPlxuICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJzci1vbmx5XCI+QUxNQTwvc3Bhbj5cbiAgICAgICAgICAgIDwvTGluaz5cbiAgICAgICAgICAgIDxMaW5rIGhyZWY9Jy92aXNpb24nIGNsYXNzTmFtZT0ndGV4dC13aGl0ZS84MCBob3Zlcjp0ZXh0LXdoaXRlJz5cbiAgICAgICAgICAgICAgPFZpZGVvIGNsYXNzTmFtZT0ndy01IGgtNScgLz5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwic3Itb25seVwiPlZpc2lvbjwvc3Bhbj5cbiAgICAgICAgICAgIDwvTGluaz5cbiAgICAgICAgICAgIDxMaW5rIGhyZWY9Jy9vYnNlcnZhdG9yeScgY2xhc3NOYW1lPSd0ZXh0LXdoaXRlLzgwIGhvdmVyOnRleHQtd2hpdGUnPlxuICAgICAgICAgICAgICA8VGVsZXNjb3BlIGNsYXNzTmFtZT0ndy01IGgtNScgLz5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwic3Itb25seVwiPk9ic2VydmF0b3J5PC9zcGFuPlxuICAgICAgICAgICAgPC9MaW5rPlxuICAgICAgICAgICAgPExpbmsgaHJlZj0nL3JhZGlvJyBjbGFzc05hbWU9J3RleHQtd2hpdGUvODAgaG92ZXI6dGV4dC13aGl0ZSc+XG4gICAgICAgICAgICAgIDxSYWRpb0ljb24gY2xhc3NOYW1lPSd3LTUgaC01JyAvPlxuICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJzci1vbmx5XCI+UmFkaW88L3NwYW4+XG4gICAgICAgICAgICA8L0xpbms+XG4gICAgICAgICAgICA8TGluayBocmVmPScvcHJlc3MnIGNsYXNzTmFtZT0ndGV4dC13aGl0ZS84MCBob3Zlcjp0ZXh0LXdoaXRlJz5cbiAgICAgICAgICAgICAgPEJvb2tPcGVuVGV4dCBjbGFzc05hbWU9J3ctNSBoLTUnIC8+XG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cInNyLW9ubHlcIj5QcmVzczwvc3Bhbj5cbiAgICAgICAgICAgIDwvTGluaz5cbiAgICAgICAgICAgIDxMaW5rIGhyZWY9Jy9hbm5vdW5jZW1lbnQnIGNsYXNzTmFtZT0ndGV4dC13aGl0ZS84MCBob3Zlcjp0ZXh0LXdoaXRlJz5cbiAgICAgICAgICAgICAgPE1lZ2FwaG9uZSBjbGFzc05hbWU9J3ctNSBoLTUnIC8+XG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cInNyLW9ubHlcIj5Bbm5vdW5jZW1lbnQ8L3NwYW4+XG4gICAgICAgICAgICA8L0xpbms+XG4gICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICB7LyogQ2VudGVyIC0gRGF0ZSBhbmQgVGltZSAqL31cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImhpZGRlbiBtZDpmbGV4IGZsZXgtY29sIGl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0ZXh0LXdoaXRlLzgwIHRleHQteHNcIj57Zm9ybWF0dGVkRGF0ZX08L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwidGV4dC13aGl0ZSB0ZXh0LXNtIGZvbnQtbWVkaXVtXCI+e2Zvcm1hdHRlZFRpbWV9PC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICB7LyogUmlnaHQgc2lkZSAqL31cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZsZXggaXRlbXMtY2VudGVyIHNwYWNlLXgtMlwiPlxuICAgICAgICAgICAgey8qIEVsZWN0cm9uIHdpbmRvdyBjb250cm9scyAtIG9ubHkgc2hvd3MgaW4gZWxlY3Ryb24gZW52aXJvbm1lbnQgKi99XG4gICAgICAgICAgICA8V2luZG93Q29udHJvbHMgLz5cblxuICAgICAgICAgICAgPE5vdGlmaWNhdGlvbkJhZGdlIC8+XG5cbiAgICAgICAgICAgIHtzdGF0dXMgPT09IFwiYXV0aGVudGljYXRlZFwiICYmIHNlc3Npb24/LnVzZXIgPyAoXG4gICAgICAgICAgICAgIDxEcm9wZG93bk1lbnU+XG4gICAgICAgICAgICAgICAgPERyb3Bkb3duTWVudVRyaWdnZXIgY2xhc3NOYW1lPVwib3V0bGluZS1ub25lXCI+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInctOCBoLTggcm91bmRlZC1mdWxsIGJnLWJsdWUtNjAwIGZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIHRleHQtd2hpdGUgY3Vyc29yLXBvaW50ZXIgaG92ZXI6YmctYmx1ZS03MDAgdHJhbnNpdGlvbi1jb2xvcnNcIj5cbiAgICAgICAgICAgICAgICAgICAge2dldFVzZXJJbml0aWFscygpfVxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9Ecm9wZG93bk1lbnVUcmlnZ2VyPlxuICAgICAgICAgICAgICAgIDxEcm9wZG93bk1lbnVDb250ZW50IGFsaWduPVwiZW5kXCIgY2xhc3NOYW1lPVwidy01NiBiZy1ibGFjay85MCBib3JkZXItZ3JheS03MDBcIj5cbiAgICAgICAgICAgICAgICAgIDxEcm9wZG93bk1lbnVMYWJlbCBjbGFzc05hbWU9XCJ0ZXh0LXdoaXRlLzgwXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1iZXR3ZWVuXCI+XG4gICAgICAgICAgICAgICAgICAgICAgPHNwYW4+e2dldERpc3BsYXlOYW1lKCl9PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgIDxEcm9wZG93bk1lbnU+XG4gICAgICAgICAgICAgICAgICAgICAgICA8RHJvcGRvd25NZW51VHJpZ2dlciBjbGFzc05hbWU9XCJvdXRsaW5lLW5vbmVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmbGV4IGl0ZW1zLWNlbnRlciBzcGFjZS14LTEgdGV4dC1zbVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxDaXJjbGUgY2xhc3NOYW1lPXtgaC0zIHctMyAke3N0YXR1c0NvbmZpZ1t1c2VyU3RhdHVzXS5jb2xvcn1gfSAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cInRleHQtZ3JheS00MDBcIj57c3RhdHVzQ29uZmlnW3VzZXJTdGF0dXNdLmxhYmVsfTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0Ryb3Bkb3duTWVudVRyaWdnZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8RHJvcGRvd25NZW51Q29udGVudCBjbGFzc05hbWU9XCJiZy1ibGFjay85MCBib3JkZXItZ3JheS03MDBcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPERyb3Bkb3duTWVudUl0ZW0gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPVwidGV4dC13aGl0ZS84MCBob3Zlcjp0ZXh0LXdoaXRlIGhvdmVyOmJnLWJsYWNrLzUwIGN1cnNvci1wb2ludGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBoYW5kbGVTdGF0dXNDaGFuZ2UoJ29ubGluZScpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPENpcmNsZSBjbGFzc05hbWU9XCJoLTMgdy0zIHRleHQtZ3JlZW4tNTAwIG1yLTJcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPk9ubGluZTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Ecm9wZG93bk1lbnVJdGVtPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8RHJvcGRvd25NZW51SXRlbSBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJ0ZXh0LXdoaXRlLzgwIGhvdmVyOnRleHQtd2hpdGUgaG92ZXI6YmctYmxhY2svNTAgY3Vyc29yLXBvaW50ZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IGhhbmRsZVN0YXR1c0NoYW5nZSgnYnVzeScpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPENpcmNsZSBjbGFzc05hbWU9XCJoLTMgdy0zIHRleHQtb3JhbmdlLTUwMCBtci0yXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj5CdXN5PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L0Ryb3Bkb3duTWVudUl0ZW0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxEcm9wZG93bk1lbnVJdGVtIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cInRleHQtd2hpdGUvODAgaG92ZXI6dGV4dC13aGl0ZSBob3ZlcjpiZy1ibGFjay81MCBjdXJzb3ItcG9pbnRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gaGFuZGxlU3RhdHVzQ2hhbmdlKCdhd2F5Jyl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Q2lyY2xlIGNsYXNzTmFtZT1cImgtMyB3LTMgdGV4dC1ncmF5LTUwMCBtci0yXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj5Bd2F5PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L0Ryb3Bkb3duTWVudUl0ZW0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0Ryb3Bkb3duTWVudUNvbnRlbnQ+XG4gICAgICAgICAgICAgICAgICAgICAgPC9Ecm9wZG93bk1lbnU+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPC9Ecm9wZG93bk1lbnVMYWJlbD5cbiAgICAgICAgICAgICAgICAgIDxEcm9wZG93bk1lbnVTZXBhcmF0b3IgY2xhc3NOYW1lPVwiYmctZ3JheS03MDBcIiAvPlxuICAgICAgICAgICAgICAgICAge3Zpc2libGVNZW51SXRlbXMubWFwKChpdGVtKSA9PiAoXG4gICAgICAgICAgICAgICAgICAgIDxEcm9wZG93bk1lbnVJdGVtIFxuICAgICAgICAgICAgICAgICAgICAgIGtleT17aXRlbS50aXRsZX1cbiAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJ0ZXh0LXdoaXRlLzgwIGhvdmVyOnRleHQtd2hpdGUgaG92ZXI6YmctYmxhY2svNTAgY3Vyc29yLXBvaW50ZXJcIlxuICAgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gaXRlbS5ocmVmfVxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgPGl0ZW0uaWNvbiBjbGFzc05hbWU9XCJtci0yIGgtNCB3LTRcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPntpdGVtLnRpdGxlfTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPC9Ecm9wZG93bk1lbnVJdGVtPlxuICAgICAgICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICAgICAgICA8RHJvcGRvd25NZW51SXRlbSBcbiAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPVwidGV4dC13aGl0ZS84MCBob3Zlcjp0ZXh0LXdoaXRlIGhvdmVyOmJnLWJsYWNrLzUwIGN1cnNvci1wb2ludGVyXCJcbiAgICAgICAgICAgICAgICAgICAgb25DbGljaz17YXN5bmMgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBrZXljbG9ha0lzc3VlciA9IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0tFWUNMT0FLX0lTU1VFUjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGlkVG9rZW4gPSBzZXNzaW9uPy5pZFRva2VuO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBGaXJzdCBzaWduIG91dCBmcm9tIE5leHRBdXRoIChjbGVhcnMgTmV4dEF1dGggY29va2llcylcbiAgICAgICAgICAgICAgICAgICAgICAgIGF3YWl0IHNpZ25PdXQoeyBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2tVcmw6ICcvc2lnbmluJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcmVkaXJlY3Q6IGZhbHNlIFxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIElmIHdlIGhhdmUgS2V5Y2xvYWsgSUQgdG9rZW4gYW5kIGlzc3VlciwgY2FsbCBLZXljbG9hayBsb2dvdXRcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChrZXljbG9ha0lzc3VlciAmJiBpZFRva2VuKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGtleWNsb2FrTG9nb3V0VXJsID0gbmV3IFVSTChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBgJHtrZXljbG9ha0lzc3Vlcn0vcHJvdG9jb2wvb3BlbmlkLWNvbm5lY3QvbG9nb3V0YFxuICAgICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gQWRkIHJlcXVpcmVkIHBhcmFtZXRlcnNcbiAgICAgICAgICAgICAgICAgICAgICAgICAga2V5Y2xvYWtMb2dvdXRVcmwuc2VhcmNoUGFyYW1zLmFwcGVuZChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAncG9zdF9sb2dvdXRfcmVkaXJlY3RfdXJpJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgJy9zaWduaW4nXG4gICAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGtleWNsb2FrTG9nb3V0VXJsLnNlYXJjaFBhcmFtcy5hcHBlbmQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2lkX3Rva2VuX2hpbnQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkVG9rZW5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgIC8vIFJlZGlyZWN0IHRvIEtleWNsb2FrIGxvZ291dCAodGhpcyB3aWxsIGNsZWFyIEtleWNsb2FrIGNvb2tpZXMpXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0ga2V5Y2xvYWtMb2dvdXRVcmwudG9TdHJpbmcoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIC8vIEZhbGxiYWNrOiBqdXN0IHJlZGlyZWN0IHRvIHNpZ25pbiBpZiB3ZSBkb24ndCBoYXZlIEtleWNsb2FrIGluZm9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSAnL3NpZ25pbic7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGR1cmluZyBsb2dvdXQ6JywgZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gRmFsbGJhY2sgdG8gc2ltcGxlIHJlZGlyZWN0IGlmIHNvbWV0aGluZyBnb2VzIHdyb25nXG4gICAgICAgICAgICAgICAgICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9ICcvc2lnbmluJztcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxMb2dPdXQgY2xhc3NOYW1lPVwibXItMiBoLTQgdy00XCIgLz5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4+RMOpY29ubmV4aW9uPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgPC9Ecm9wZG93bk1lbnVJdGVtPlxuICAgICAgICAgICAgICAgIDwvRHJvcGRvd25NZW51Q29udGVudD5cbiAgICAgICAgICAgICAgPC9Ecm9wZG93bk1lbnU+XG4gICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0nY3Vyc29yLXBvaW50ZXIgdGV4dC13aGl0ZS84MCBob3Zlcjp0ZXh0LXdoaXRlJz5cbiAgICAgICAgICAgICAgICA8c3BhbiBvbkNsaWNrPXsoKSA9PiBzaWduSW4oXCJrZXljbG9ha1wiLCB7IGNhbGxiYWNrVXJsOiBcIi9cIiB9KX0+XG4gICAgICAgICAgICAgICAgICBMb2dpblxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPFNpZGViYXIgaXNPcGVuPXtpc1NpZGViYXJPcGVufSBvbkNsb3NlPXsoKSA9PiBzZXRJc1NpZGViYXJPcGVuKGZhbHNlKX0gLz5cbiAgICAgIDxOb3Rlc0RpYWxvZyBcbiAgICAgICAgb3Blbj17aXNOb3Rlc0RpYWxvZ09wZW59XG4gICAgICAgIG9uT3BlbkNoYW5nZT17c2V0SXNOb3Rlc0RpYWxvZ09wZW59XG4gICAgICAvPlxuICAgIDwvPlxuICApO1xufSJdLCJuYW1lcyI6WyJ1c2VTdGF0ZSIsIkNhbGVuZGFyIiwiQm90SWNvbiIsIlJvYm90IiwiTG9nT3V0IiwiVXNlckNvZyIsIkNsb2NrIiwiUGVuTGluZSIsIlZpZGVvIiwiUmFkaW8iLCJSYWRpb0ljb24iLCJNZWdhcGhvbmUiLCJUYXJnZXQiLCJNYWlsIiwiVGVsZXNjb3BlIiwiQ2lyY2xlIiwiTWVudSIsIkJvb2tPcGVuVGV4dCIsIkltYWdlIiwiTGluayIsIlNpZGViYXIiLCJ1c2VTZXNzaW9uIiwic2lnbkluIiwic2lnbk91dCIsIkRyb3Bkb3duTWVudSIsIkRyb3Bkb3duTWVudUNvbnRlbnQiLCJEcm9wZG93bk1lbnVJdGVtIiwiRHJvcGRvd25NZW51TGFiZWwiLCJEcm9wZG93bk1lbnVTZXBhcmF0b3IiLCJEcm9wZG93bk1lbnVUcmlnZ2VyIiwiZm9ybWF0IiwiZnIiLCJOb3RpZmljYXRpb25CYWRnZSIsIk5vdGVzRGlhbG9nIiwiV2luZG93Q29udHJvbHMiLCJyZXF1ZXN0Tm90aWZpY2F0aW9uUGVybWlzc2lvbiIsInBlcm1pc3Npb24iLCJOb3RpZmljYXRpb24iLCJyZXF1ZXN0UGVybWlzc2lvbiIsImVycm9yIiwiY29uc29sZSIsIk1haW5OYXYiLCJpc1NpZGViYXJPcGVuIiwic2V0SXNTaWRlYmFyT3BlbiIsImRhdGEiLCJzZXNzaW9uIiwic3RhdHVzIiwidXNlclN0YXR1cyIsInNldFVzZXJTdGF0dXMiLCJpc05vdGVzRGlhbG9nT3BlbiIsInNldElzTm90ZXNEaWFsb2dPcGVuIiwibG9nIiwiZ2V0VXNlckluaXRpYWxzIiwidXNlciIsIm5hbWUiLCJuYW1lcyIsInNwbGl0IiwibGVuZ3RoIiwidG9VcHBlckNhc2UiLCJzbGljZSIsImdldERpc3BsYXlOYW1lIiwiZ2V0VXNlclJvbGUiLCJyb2xlIiwiQXJyYXkiLCJpc0FycmF5IiwiZmlsdGVyIiwiaW5jbHVkZXMiLCJtYXAiLCJyZXBsYWNlIiwiam9pbiIsImhhc1JvbGUiLCJyZXF1aXJlZFJvbGVzIiwidXNlclJvbGVzIiwiY2xlYW5Vc2VyUm9sZXMiLCJ0b0xvd2VyQ2FzZSIsImNsZWFuUmVxdWlyZWRSb2xlcyIsImhhc0FueVJvbGUiLCJzb21lIiwic3RhdHVzQ29uZmlnIiwib25saW5lIiwiY29sb3IiLCJsYWJlbCIsIm5vdGlmaWNhdGlvbnMiLCJidXN5IiwiYXdheSIsImhhbmRsZVN0YXR1c0NoYW5nZSIsIm5ld1N0YXR1cyIsImhhc1Blcm1pc3Npb24iLCJuYXZpZ2F0b3IiLCJyZWdpc3RyYXRpb24iLCJzZXJ2aWNlV29ya2VyIiwicmVhZHkiLCJwdXNoTWFuYWdlciIsImdldFN1YnNjcmlwdGlvbiIsInRoZW4iLCJzdWJzY3JpcHRpb24iLCJ1bnN1YnNjcmliZSIsImJhc2VNZW51SXRlbXMiLCJ0aXRsZSIsImljb24iLCJocmVmIiwicm9sZVNwZWNpZmljSXRlbXMiLCJ2aXNpYmxlTWVudUl0ZW1zIiwiaXRlbSIsIm5vdyIsIkRhdGUiLCJmb3JtYXR0ZWREYXRlIiwibG9jYWxlIiwiZm9ybWF0dGVkVGltZSIsImRpdiIsImNsYXNzTmFtZSIsImJ1dHRvbiIsIm9uQ2xpY2siLCJzcmMiLCJhbHQiLCJ3aWR0aCIsImhlaWdodCIsInNwYW4iLCJhbGlnbiIsIndpbmRvdyIsImxvY2F0aW9uIiwia2V5Y2xvYWtJc3N1ZXIiLCJwcm9jZXNzIiwiZW52IiwiTkVYVF9QVUJMSUNfS0VZQ0xPQUtfSVNTVUVSIiwiaWRUb2tlbiIsImNhbGxiYWNrVXJsIiwicmVkaXJlY3QiLCJrZXljbG9ha0xvZ291dFVybCIsIlVSTCIsInNlYXJjaFBhcmFtcyIsImFwcGVuZCIsIm9yaWdpbiIsInRvU3RyaW5nIiwiaXNPcGVuIiwib25DbG9zZSIsIm9wZW4iLCJvbk9wZW5DaGFuZ2UiXSwiaWdub3JlTGlzdCI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./components/main-nav.tsx\n");
/***/ }),
/***/ "(ssr)/./components/news.tsx":
/*!*****************************!*\
!*** ./components/news.tsx ***!
\*****************************/
/***/ ((__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 */ News: () => (/* binding */ News)\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/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/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_card__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/components/ui/card */ \"(ssr)/./components/ui/card.tsx\");\n/* harmony import */ var _components_ui_button__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/components/ui/button */ \"(ssr)/./components/ui/button.tsx\");\n/* harmony import */ var _barrel_optimize_names_RefreshCw_Telescope_lucide_react__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! __barrel_optimize__?names=RefreshCw,Telescope!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/telescope.js\");\n/* harmony import */ var _barrel_optimize_names_RefreshCw_Telescope_lucide_react__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! __barrel_optimize__?names=RefreshCw,Telescope!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/refresh-cw.js\");\n/* harmony import */ var next_auth_react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! next-auth/react */ \"(ssr)/./node_modules/next-auth/react/index.js\");\n/* harmony import */ var next_auth_react__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(next_auth_react__WEBPACK_IMPORTED_MODULE_4__);\n/* __next_internal_client_entry_do_not_use__ News auto */ \n\n\n\n\n\nfunction News() {\n const [news, setNews] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)([]);\n const [loading, setLoading] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(true);\n const [error, setError] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const [refreshing, setRefreshing] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n const { status } = (0,next_auth_react__WEBPACK_IMPORTED_MODULE_4__.useSession)();\n const fetchNews = async (isRefresh = false)=>{\n if (isRefresh) setRefreshing(true);\n if (!isRefresh) setLoading(true);\n try {\n const response = await fetch(isRefresh ? '/api/news?refresh=true&limit=100' : '/api/news?limit=100');\n if (!response.ok) {\n throw new Error('Failed to fetch news');\n }\n const data = await response.json();\n // Debug log the date values\n console.log(`News component received ${data.length} articles`);\n setNews(data);\n setError(null);\n } catch (err) {\n setError('Failed to fetch news');\n console.error('Error fetching news:', err);\n } finally{\n setLoading(false);\n setRefreshing(false);\n }\n };\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)({\n \"News.useEffect\": ()=>{\n if (status === 'authenticated') {\n fetchNews();\n }\n }\n }[\"News.useEffect\"], [\n status\n ]);\n if (status === 'loading' || loading) {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_card__WEBPACK_IMPORTED_MODULE_2__.Card, {\n className: \"transition-transform duration-500 ease-in-out transform hover:scale-105 bg-white/95 backdrop-blur-sm border-0 shadow-lg\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_card__WEBPACK_IMPORTED_MODULE_2__.CardHeader, {\n className: \"flex flex-row items-center justify-between pb-2 border-b border-gray-100\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_card__WEBPACK_IMPORTED_MODULE_2__.CardTitle, {\n className: \"text-lg font-semibold text-gray-800 flex items-center gap-2\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_RefreshCw_Telescope_lucide_react__WEBPACK_IMPORTED_MODULE_5__[\"default\"], {\n className: \"h-5 w-5 text-gray-600\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/news.tsx\",\n lineNumber: 64,\n columnNumber: 13\n }, this),\n \"Nouvelles\"\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/news.tsx\",\n lineNumber: 63,\n columnNumber: 11\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/news.tsx\",\n lineNumber: 62,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_card__WEBPACK_IMPORTED_MODULE_2__.CardContent, {\n className: \"p-3\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex items-center justify-center py-6\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_RefreshCw_Telescope_lucide_react__WEBPACK_IMPORTED_MODULE_6__[\"default\"], {\n className: \"h-4 w-4 animate-spin text-gray-400\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/news.tsx\",\n lineNumber: 70,\n columnNumber: 13\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/news.tsx\",\n lineNumber: 69,\n columnNumber: 11\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/news.tsx\",\n lineNumber: 68,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/news.tsx\",\n lineNumber: 61,\n columnNumber: 7\n }, this);\n }\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_card__WEBPACK_IMPORTED_MODULE_2__.Card, {\n className: \"transition-transform duration-500 ease-in-out transform hover:scale-105 bg-white/95 backdrop-blur-sm border-0 shadow-lg\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_card__WEBPACK_IMPORTED_MODULE_2__.CardHeader, {\n className: \"flex flex-row items-center justify-between pb-2 border-b border-gray-100\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_card__WEBPACK_IMPORTED_MODULE_2__.CardTitle, {\n className: \"text-lg font-semibold text-gray-800 flex items-center gap-2\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_RefreshCw_Telescope_lucide_react__WEBPACK_IMPORTED_MODULE_5__[\"default\"], {\n className: \"h-5 w-5 text-gray-600\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/news.tsx\",\n lineNumber: 81,\n columnNumber: 11\n }, this),\n \"Nouvelles\",\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"text-sm font-normal ml-2 text-gray-500\",\n children: [\n \"(\",\n news.length,\n \")\"\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/news.tsx\",\n lineNumber: 83,\n columnNumber: 11\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/news.tsx\",\n lineNumber: 80,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_button__WEBPACK_IMPORTED_MODULE_3__.Button, {\n variant: \"ghost\",\n size: \"icon\",\n onClick: ()=>fetchNews(true),\n disabled: refreshing,\n className: \"h-7 w-7 p-0 hover:bg-gray-100/50 rounded-full\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_RefreshCw_Telescope_lucide_react__WEBPACK_IMPORTED_MODULE_6__[\"default\"], {\n className: \"h-3.5 w-3.5 text-gray-600\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/news.tsx\",\n lineNumber: 94,\n columnNumber: 11\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/news.tsx\",\n lineNumber: 87,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/news.tsx\",\n lineNumber: 79,\n columnNumber: 7\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_card__WEBPACK_IMPORTED_MODULE_2__.CardContent, {\n className: \"p-3\",\n children: error ? /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"text-xs text-red-500 text-center py-3\",\n children: error\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/news.tsx\",\n lineNumber: 99,\n columnNumber: 11\n }, this) : /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"space-y-2 max-h-[400px] overflow-y-auto pr-1 scrollbar-thin scrollbar-thumb-gray-200 scrollbar-track-transparent\",\n children: news.length === 0 ? /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"text-xs text-gray-500 text-center py-6\",\n children: \"No news available\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/news.tsx\",\n lineNumber: 103,\n columnNumber: 15\n }, this) : news.map((item)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"p-2 rounded-lg bg-white shadow-sm hover:shadow-md transition-all duration-200 border border-gray-100\",\n onClick: ()=>window.open(item.url, '_blank'),\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex flex-col gap-1\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex items-center justify-between text-xs\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"text-gray-500\",\n children: item.displayDate\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/news.tsx\",\n lineNumber: 113,\n columnNumber: 23\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/news.tsx\",\n lineNumber: 112,\n columnNumber: 21\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"h3\", {\n className: \"text-sm font-medium text-gray-800 line-clamp-2\",\n title: item.title,\n children: item.title\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/news.tsx\",\n lineNumber: 115,\n columnNumber: 21\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n className: \"text-xs text-gray-500 line-clamp-2\",\n title: item.description || undefined,\n children: item.description\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/news.tsx\",\n lineNumber: 118,\n columnNumber: 21\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/news.tsx\",\n lineNumber: 111,\n columnNumber: 19\n }, this)\n }, item.id, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/news.tsx\",\n lineNumber: 106,\n columnNumber: 17\n }, this))\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/news.tsx\",\n lineNumber: 101,\n columnNumber: 11\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/news.tsx\",\n lineNumber: 97,\n columnNumber: 7\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/news.tsx\",\n lineNumber: 78,\n columnNumber: 5\n }, this);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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LFNBQVMsSUFBTUksT0FBT0MsSUFBSSxDQUFDRixLQUFLRyxHQUFHLEVBQUU7c0NBRXJDLDRFQUFDVjtnQ0FBSUQsV0FBVTs7a0RBQ2IsOERBQUNDO3dDQUFJRCxXQUFVO2tEQUNiLDRFQUFDRTs0Q0FBS0YsV0FBVTtzREFBaUJRLEtBQUtJLFdBQVc7Ozs7Ozs7Ozs7O2tEQUVuRCw4REFBQ0M7d0NBQUdiLFdBQVU7d0NBQWlEYyxPQUFPTixLQUFLTSxLQUFLO2tEQUM3RU4sS0FBS00sS0FBSzs7Ozs7O2tEQUViLDhEQUFDQzt3Q0FBRWYsV0FBVTt3Q0FBcUNjLE9BQU9OLEtBQUtRLFdBQVcsSUFBSUM7a0RBQzFFVCxLQUFLUSxXQUFXOzs7Ozs7Ozs7Ozs7MkJBWmhCUixLQUFLVSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUF1QjlCIiwic291cmNlcyI6WyIvVXNlcnMvYWxtYS9Eb2N1bWVudHMvTmVhaE5ldy9jb21wb25lbnRzL25ld3MudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIGNsaWVudFwiO1xuXG5pbXBvcnQgeyB1c2VFZmZlY3QsIHVzZVN0YXRlIH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgeyBDYXJkLCBDYXJkQ29udGVudCwgQ2FyZEhlYWRlciwgQ2FyZFRpdGxlIH0gZnJvbSBcIkAvY29tcG9uZW50cy91aS9jYXJkXCI7XG5pbXBvcnQgeyBCdXR0b24gfSBmcm9tIFwiQC9jb21wb25lbnRzL3VpL2J1dHRvblwiO1xuaW1wb3J0IHsgUmVmcmVzaEN3LCBUZWxlc2NvcGUgfSBmcm9tIFwibHVjaWRlLXJlYWN0XCI7XG5pbXBvcnQgeyB1c2VTZXNzaW9uIH0gZnJvbSBcIm5leHQtYXV0aC9yZWFjdFwiO1xuXG5pbnRlcmZhY2UgTmV3c0l0ZW0ge1xuICBpZDogbnVtYmVyO1xuICB0aXRsZTogc3RyaW5nO1xuICBkaXNwbGF5RGF0ZTogc3RyaW5nO1xuICB0aW1lc3RhbXA6IHN0cmluZztcbiAgc291cmNlOiBzdHJpbmc7XG4gIGRlc2NyaXB0aW9uOiBzdHJpbmcgfCBudWxsO1xuICBjYXRlZ29yeTogc3RyaW5nIHwgbnVsbDtcbiAgdXJsOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBOZXdzKCkge1xuICBjb25zdCBbbmV3cywgc2V0TmV3c10gPSB1c2VTdGF0ZTxOZXdzSXRlbVtdPihbXSk7XG4gIGNvbnN0IFtsb2FkaW5nLCBzZXRMb2FkaW5nXSA9IHVzZVN0YXRlKHRydWUpO1xuICBjb25zdCBbZXJyb3IsIHNldEVycm9yXSA9IHVzZVN0YXRlPHN0cmluZyB8IG51bGw+KG51bGwpO1xuICBjb25zdCBbcmVmcmVzaGluZywgc2V0UmVmcmVzaGluZ10gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IHsgc3RhdHVzIH0gPSB1c2VTZXNzaW9uKCk7XG5cbiAgY29uc3QgZmV0Y2hOZXdzID0gYXN5bmMgKGlzUmVmcmVzaCA9IGZhbHNlKSA9PiB7XG4gICAgaWYgKGlzUmVmcmVzaCkgc2V0UmVmcmVzaGluZyh0cnVlKTtcbiAgICBpZiAoIWlzUmVmcmVzaCkgc2V0TG9hZGluZyh0cnVlKTtcbiAgICBcbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaChpc1JlZnJlc2ggPyAnL2FwaS9uZXdzP3JlZnJlc2g9dHJ1ZSZsaW1pdD0xMDAnIDogJy9hcGkvbmV3cz9saW1pdD0xMDAnKTtcbiAgICAgIGlmICghcmVzcG9uc2Uub2spIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gZmV0Y2ggbmV3cycpO1xuICAgICAgfVxuICAgICAgXG4gICAgICBjb25zdCBkYXRhID0gYXdhaXQgcmVzcG9uc2UuanNvbigpO1xuICAgICAgXG4gICAgICAvLyBEZWJ1ZyBsb2cgdGhlIGRhdGUgdmFsdWVzXG4gICAgICBjb25zb2xlLmxvZyhgTmV3cyBjb21wb25lbnQgcmVjZWl2ZWQgJHtkYXRhLmxlbmd0aH0gYXJ0aWNsZXNgKTtcbiAgICAgIFxuICAgICAgc2V0TmV3cyhkYXRhKTtcbiAgICAgIHNldEVycm9yKG51bGwpO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgc2V0RXJyb3IoJ0ZhaWxlZCB0byBmZXRjaCBuZXdzJyk7XG4gICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBmZXRjaGluZyBuZXdzOicsIGVycik7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHNldExvYWRpbmcoZmFsc2UpO1xuICAgICAgc2V0UmVmcmVzaGluZyhmYWxzZSk7XG4gICAgfVxuICB9O1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKHN0YXR1cyA9PT0gJ2F1dGhlbnRpY2F0ZWQnKSB7XG4gICAgICBmZXRjaE5ld3MoKTtcbiAgICB9XG4gIH0sIFtzdGF0dXNdKTtcblxuICBpZiAoc3RhdHVzID09PSAnbG9hZGluZycgfHwgbG9hZGluZykge1xuICAgIHJldHVybiAoXG4gICAgICA8Q2FyZCBjbGFzc05hbWU9XCJ0cmFuc2l0aW9uLXRyYW5zZm9ybSBkdXJhdGlvbi01MDAgZWFzZS1pbi1vdXQgdHJhbnNmb3JtIGhvdmVyOnNjYWxlLTEwNSBiZy13aGl0ZS85NSBiYWNrZHJvcC1ibHVyLXNtIGJvcmRlci0wIHNoYWRvdy1sZ1wiPlxuICAgICAgICA8Q2FyZEhlYWRlciBjbGFzc05hbWU9XCJmbGV4IGZsZXgtcm93IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW4gcGItMiBib3JkZXItYiBib3JkZXItZ3JheS0xMDBcIj5cbiAgICAgICAgICA8Q2FyZFRpdGxlIGNsYXNzTmFtZT1cInRleHQtbGcgZm9udC1zZW1pYm9sZCB0ZXh0LWdyYXktODAwIGZsZXggaXRlbXMtY2VudGVyIGdhcC0yXCI+XG4gICAgICAgICAgICA8VGVsZXNjb3BlIGNsYXNzTmFtZT1cImgtNSB3LTUgdGV4dC1ncmF5LTYwMFwiIC8+XG4gICAgICAgICAgICBOb3V2ZWxsZXNcbiAgICAgICAgICA8L0NhcmRUaXRsZT5cbiAgICAgICAgPC9DYXJkSGVhZGVyPlxuICAgICAgICA8Q2FyZENvbnRlbnQgY2xhc3NOYW1lPVwicC0zXCI+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciBweS02XCI+XG4gICAgICAgICAgICA8UmVmcmVzaEN3IGNsYXNzTmFtZT1cImgtNCB3LTQgYW5pbWF0ZS1zcGluIHRleHQtZ3JheS00MDBcIiAvPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L0NhcmRDb250ZW50PlxuICAgICAgPC9DYXJkPlxuICAgICk7XG4gIH1cblxuICByZXR1cm4gKFxuICAgIDxDYXJkIGNsYXNzTmFtZT1cInRyYW5zaXRpb24tdHJhbnNmb3JtIGR1cmF0aW9uLTUwMCBlYXNlLWluLW91dCB0cmFuc2Zvcm0gaG92ZXI6c2NhbGUtMTA1IGJnLXdoaXRlLzk1IGJhY2tkcm9wLWJsdXItc20gYm9yZGVyLTAgc2hhZG93LWxnXCI+XG4gICAgICA8Q2FyZEhlYWRlciBjbGFzc05hbWU9XCJmbGV4IGZsZXgtcm93IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW4gcGItMiBib3JkZXItYiBib3JkZXItZ3JheS0xMDBcIj5cbiAgICAgICAgPENhcmRUaXRsZSBjbGFzc05hbWU9XCJ0ZXh0LWxnIGZvbnQtc2VtaWJvbGQgdGV4dC1ncmF5LTgwMCBmbGV4IGl0ZW1zLWNlbnRlciBnYXAtMlwiPlxuICAgICAgICAgIDxUZWxlc2NvcGUgY2xhc3NOYW1lPVwiaC01IHctNSB0ZXh0LWdyYXktNjAwXCIgLz5cbiAgICAgICAgICBOb3V2ZWxsZXNcbiAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJ0ZXh0LXNtIGZvbnQtbm9ybWFsIG1sLTIgdGV4dC1ncmF5LTUwMFwiPlxuICAgICAgICAgICAgKHtuZXdzLmxlbmd0aH0pXG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICA8L0NhcmRUaXRsZT5cbiAgICAgICAgPEJ1dHRvblxuICAgICAgICAgIHZhcmlhbnQ9XCJnaG9zdFwiXG4gICAgICAgICAgc2l6ZT1cImljb25cIlxuICAgICAgICAgIG9uQ2xpY2s9eygpID0+IGZldGNoTmV3cyh0cnVlKX1cbiAgICAgICAgICBkaXNhYmxlZD17cmVmcmVzaGluZ31cbiAgICAgICAgICBjbGFzc05hbWU9XCJoLTcgdy03IHAtMCBob3ZlcjpiZy1ncmF5LTEwMC81MCByb3VuZGVkLWZ1bGxcIlxuICAgICAgICA+XG4gICAgICAgICAgPFJlZnJlc2hDdyBjbGFzc05hbWU9XCJoLTMuNSB3LTMuNSB0ZXh0LWdyYXktNjAwXCIgLz5cbiAgICAgICAgPC9CdXR0b24+XG4gICAgICA8L0NhcmRIZWFkZXI+XG4gICAgICA8Q2FyZENvbnRlbnQgY2xhc3NOYW1lPVwicC0zXCI+XG4gICAgICAgIHtlcnJvciA/IChcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInRleHQteHMgdGV4dC1yZWQtNTAwIHRleHQtY2VudGVyIHB5LTNcIj57ZXJyb3J9PC9kaXY+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJzcGFjZS15LTIgbWF4LWgtWzQwMHB4XSBvdmVyZmxvdy15LWF1dG8gcHItMSBzY3JvbGxiYXItdGhpbiBzY3JvbGxiYXItdGh1bWItZ3JheS0yMDAgc2Nyb2xsYmFyLXRyYWNrLXRyYW5zcGFyZW50XCI+XG4gICAgICAgICAgICB7bmV3cy5sZW5ndGggPT09IDAgPyAoXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwidGV4dC14cyB0ZXh0LWdyYXktNTAwIHRleHQtY2VudGVyIHB5LTZcIj5ObyBuZXdzIGF2YWlsYWJsZTwvZGl2PlxuICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgbmV3cy5tYXAoKGl0ZW0pID0+IChcbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICBrZXk9e2l0ZW0uaWR9XG4gICAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJwLTIgcm91bmRlZC1sZyBiZy13aGl0ZSBzaGFkb3ctc20gaG92ZXI6c2hhZG93LW1kIHRyYW5zaXRpb24tYWxsIGR1cmF0aW9uLTIwMCBib3JkZXIgYm9yZGVyLWdyYXktMTAwXCJcbiAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHdpbmRvdy5vcGVuKGl0ZW0udXJsLCAnX2JsYW5rJyl9XG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmbGV4IGZsZXgtY29sIGdhcC0xXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1iZXR3ZWVuIHRleHQteHNcIj5cbiAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJ0ZXh0LWdyYXktNTAwXCI+e2l0ZW0uZGlzcGxheURhdGV9PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzTmFtZT1cInRleHQtc20gZm9udC1tZWRpdW0gdGV4dC1ncmF5LTgwMCBsaW5lLWNsYW1wLTJcIiB0aXRsZT17aXRlbS50aXRsZX0+XG4gICAgICAgICAgICAgICAgICAgICAge2l0ZW0udGl0bGV9XG4gICAgICAgICAgICAgICAgICAgIDwvaDM+XG4gICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT1cInRleHQteHMgdGV4dC1ncmF5LTUwMCBsaW5lLWNsYW1wLTJcIiB0aXRsZT17aXRlbS5kZXNjcmlwdGlvbiB8fCB1bmRlZmluZWR9PlxuICAgICAgICAgICAgICAgICAgICAgIHtpdGVtLmRlc2NyaXB0aW9ufVxuICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgKSlcbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICl9XG4gICAgICA8L0NhcmRDb250ZW50PlxuICAgIDwvQ2FyZD5cbiAgKTtcbn1cbiJdLCJuYW1lcyI6WyJ1c2VFZmZlY3QiLCJ1c2VTdGF0ZSIsIkNhcmQiLCJDYXJkQ29udGVudCIsIkNhcmRIZWFkZXIiLCJDYXJkVGl0bGUiLCJCdXR0b24iLCJSZWZyZXNoQ3ciLCJUZWxlc2NvcGUiLCJ1c2VTZXNzaW9uIiwiTmV3cyIsIm5ld3MiLCJzZXROZXdzIiwibG9hZGluZyIsInNldExvYWRpbmciLCJlcnJvciIsInNldEVycm9yIiwicmVmcmVzaGluZyIsInNldFJlZnJlc2hpbmciLCJzdGF0dXMiLCJmZXRjaE5ld3MiLCJpc1JlZnJlc2giLCJyZXNwb25zZSIsImZldGNoIiwib2siLCJFcnJvciIsImRhdGEiLCJqc29uIiwiY29uc29sZSIsImxvZyIsImxlbmd0aCIsImVyciIsImNsYXNzTmFtZSIsImRpdiIsInNwYW4iLCJ2YXJpYW50Iiwic2l6ZSIsIm9uQ2xpY2siLCJkaXNhYmxlZCIsIm1hcCIsIml0ZW0iLCJ3aW5kb3ciLCJvcGVuIiwidXJsIiwiZGlzcGxheURhdGUiLCJoMyIsInRpdGxlIiwicCIsImRlc2NyaXB0aW9uIiwidW5kZWZpbmVkIiwiaWQiXSwiaWdub3JlTGlzdCI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./components/news.tsx\n");
/***/ }),
/***/ "(ssr)/./components/notes-dialog.tsx":
/*!*************************************!*\
!*** ./components/notes-dialog.tsx ***!
\*************************************/
/***/ ((__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 */ NotesDialog: () => (/* binding */ NotesDialog)\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/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/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_dialog__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/components/ui/dialog */ \"(ssr)/./components/ui/dialog.tsx\");\n/* harmony import */ var _radix_ui_react_dialog__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @radix-ui/react-dialog */ \"(ssr)/./node_modules/@radix-ui/react-dialog/dist/index.mjs\");\n/* harmony import */ var _lib_utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/lib/utils */ \"(ssr)/./lib/utils.ts\");\n/* harmony import */ var _components_ui_button__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @/components/ui/button */ \"(ssr)/./components/ui/button.tsx\");\n/* harmony import */ var _components_ui_textarea__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/components/ui/textarea */ \"(ssr)/./components/ui/textarea.tsx\");\n/* harmony import */ var _components_ui_input__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @/components/ui/input */ \"(ssr)/./components/ui/input.tsx\");\n/* harmony import */ var _barrel_optimize_names_Loader2_X_lucide_react__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! __barrel_optimize__?names=Loader2,X!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/loader-circle.js\");\n/* harmony import */ var _barrel_optimize_names_Loader2_X_lucide_react__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! __barrel_optimize__?names=Loader2,X!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/x.js\");\n/* harmony import */ var next_auth_react__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! next-auth/react */ \"(ssr)/./node_modules/next-auth/react/index.js\");\n/* harmony import */ var next_auth_react__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(next_auth_react__WEBPACK_IMPORTED_MODULE_7__);\n/* __next_internal_client_entry_do_not_use__ NotesDialog auto */ \n\n\n\n\n\n\n\n\n\n\n// Custom DialogOverlay to override the default black background\nconst DialogOverlay = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_1__.forwardRef(({ className, ...props }, ref)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_radix_ui_react_dialog__WEBPACK_IMPORTED_MODULE_8__.Overlay, {\n ref: ref,\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_3__.cn)(\"fixed inset-0 z-50 bg-black/40 backdrop-blur-sm data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0\", className),\n ...props\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notes-dialog.tsx\",\n lineNumber: 19,\n columnNumber: 3\n }, undefined));\nDialogOverlay.displayName = _radix_ui_react_dialog__WEBPACK_IMPORTED_MODULE_8__.Overlay.displayName;\nfunction NotesDialog({ open, onOpenChange }) {\n const { data: session } = (0,next_auth_react__WEBPACK_IMPORTED_MODULE_7__.useSession)();\n const [title, setTitle] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(\"\");\n const [content, setContent] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(\"\");\n const [isSaving, setIsSaving] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n const [error, setError] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(\"\");\n const handleSave = async ()=>{\n if (!title.trim()) {\n setError(\"Please enter a title for your note\");\n return;\n }\n if (!content.trim()) {\n setError(\"Please enter content for your note\");\n return;\n }\n try {\n setIsSaving(true);\n setError(\"\");\n // Construct API payload with lowercase folder name (always \"notes\" for quick notes)\n const payload = {\n id: `user-${session?.user?.id}/notes/${title}${title.endsWith('.md') ? '' : '.md'}`,\n title: title,\n content: content,\n folder: \"notes\",\n mime: \"text/markdown\"\n };\n // Use direct storage API endpoint\n const response = await fetch('/api/storage/files', {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json'\n },\n body: JSON.stringify(payload)\n });\n if (!response.ok) {\n throw new Error('Failed to save note');\n }\n // Reset form and close dialog\n setTitle(\"\");\n setContent(\"\");\n onOpenChange(false);\n } catch (err) {\n console.error('Error saving note:', err);\n setError(\"Failed to save your note. Please try again.\");\n } finally{\n setIsSaving(false);\n }\n };\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_dialog__WEBPACK_IMPORTED_MODULE_2__.Dialog, {\n open: open,\n onOpenChange: onOpenChange,\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_dialog__WEBPACK_IMPORTED_MODULE_2__.DialogPortal, {\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(DialogOverlay, {}, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notes-dialog.tsx\",\n lineNumber: 95,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_dialog__WEBPACK_IMPORTED_MODULE_2__.DialogContent, {\n className: \"sm:max-w-[500px] bg-white border-gray-200\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_dialog__WEBPACK_IMPORTED_MODULE_2__.DialogHeader, {\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_dialog__WEBPACK_IMPORTED_MODULE_2__.DialogTitle, {\n className: \"text-gray-900\",\n children: \"Quick Note\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notes-dialog.tsx\",\n lineNumber: 98,\n columnNumber: 13\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notes-dialog.tsx\",\n lineNumber: 97,\n columnNumber: 11\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"grid gap-4 py-4\",\n children: [\n error && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"bg-red-50 text-red-500 p-2 rounded-md text-sm\",\n children: error\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notes-dialog.tsx\",\n lineNumber: 103,\n columnNumber: 15\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"grid grid-cols-4 items-center gap-4\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_input__WEBPACK_IMPORTED_MODULE_6__.Input, {\n id: \"title\",\n placeholder: \"Note title\",\n className: \"col-span-4 text-gray-800 bg-white border-gray-300 placeholder-gray-500\",\n value: title,\n onChange: (e)=>setTitle(e.target.value),\n disabled: isSaving\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notes-dialog.tsx\",\n lineNumber: 109,\n columnNumber: 15\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notes-dialog.tsx\",\n lineNumber: 108,\n columnNumber: 13\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"grid grid-cols-4 items-center gap-4\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_textarea__WEBPACK_IMPORTED_MODULE_5__.Textarea, {\n id: \"content\",\n placeholder: \"What's on your mind?\",\n className: \"col-span-4 text-gray-800 bg-white border-gray-300 placeholder-gray-500\",\n rows: 10,\n value: content,\n onChange: (e)=>setContent(e.target.value),\n disabled: isSaving\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notes-dialog.tsx\",\n lineNumber: 120,\n columnNumber: 15\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notes-dialog.tsx\",\n lineNumber: 119,\n columnNumber: 13\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notes-dialog.tsx\",\n lineNumber: 101,\n columnNumber: 11\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_dialog__WEBPACK_IMPORTED_MODULE_2__.DialogFooter, {\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_button__WEBPACK_IMPORTED_MODULE_4__.Button, {\n variant: \"destructive\",\n onClick: ()=>onOpenChange(false),\n disabled: isSaving,\n className: \"bg-red-600 hover:bg-red-700 text-white\",\n children: \"Cancel\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notes-dialog.tsx\",\n lineNumber: 133,\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 onClick: handleSave,\n disabled: isSaving,\n className: \"bg-blue-600 hover:bg-blue-700 text-white\",\n children: isSaving ? /*#__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)(_barrel_optimize_names_Loader2_X_lucide_react__WEBPACK_IMPORTED_MODULE_9__[\"default\"], {\n className: \"mr-2 h-4 w-4 animate-spin\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notes-dialog.tsx\",\n lineNumber: 148,\n columnNumber: 19\n }, this),\n \"Saving...\"\n ]\n }, void 0, true) : \"Save Note\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notes-dialog.tsx\",\n lineNumber: 141,\n columnNumber: 13\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notes-dialog.tsx\",\n lineNumber: 132,\n columnNumber: 11\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_radix_ui_react_dialog__WEBPACK_IMPORTED_MODULE_8__.Close, {\n className: \"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_Loader2_X_lucide_react__WEBPACK_IMPORTED_MODULE_10__[\"default\"], {\n className: \"h-4 w-4 text-gray-500\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notes-dialog.tsx\",\n lineNumber: 157,\n columnNumber: 13\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"sr-only\",\n children: \"Close\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notes-dialog.tsx\",\n lineNumber: 158,\n columnNumber: 13\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notes-dialog.tsx\",\n lineNumber: 156,\n columnNumber: 11\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notes-dialog.tsx\",\n lineNumber: 96,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notes-dialog.tsx\",\n lineNumber: 94,\n columnNumber: 7\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notes-dialog.tsx\",\n lineNumber: 93,\n columnNumber: 5\n }, this);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9jb21wb25lbnRzL25vdGVzLWRpYWxvZy50c3giLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVpQztBQUNxRjtBQUM1RDtBQUN6QjtBQUNlO0FBQ0k7QUFDTjtBQUNKO0FBQ0c7QUFDZDtBQUUvQixnRUFBZ0U7QUFDaEUsTUFBTWdCLDhCQUFnQkQsNkNBQWdCLENBR3BDLENBQUMsRUFBRUcsU0FBUyxFQUFFLEdBQUdDLE9BQU8sRUFBRUMsb0JBQzFCLDhEQUFDYiwyREFBdUI7UUFDdEJhLEtBQUtBO1FBQ0xGLFdBQVdWLDhDQUFFQSxDQUNYLDJLQUNBVTtRQUVELEdBQUdDLEtBQUs7Ozs7OztBQUdiSCxjQUFjTSxXQUFXLEdBQUdmLDJEQUF1QixDQUFDZSxXQUFXO0FBT3hELFNBQVNDLFlBQVksRUFBRUMsSUFBSSxFQUFFQyxZQUFZLEVBQW9CO0lBQ2xFLE1BQU0sRUFBRUMsTUFBTUMsT0FBTyxFQUFFLEdBQUdiLDJEQUFVQTtJQUNwQyxNQUFNLENBQUNjLE9BQU9DLFNBQVMsR0FBRzdCLCtDQUFRQSxDQUFDO0lBQ25DLE1BQU0sQ0FBQzhCLFNBQVNDLFdBQVcsR0FBRy9CLCtDQUFRQSxDQUFDO0lBQ3ZDLE1BQU0sQ0FBQ2dDLFVBQVVDLFlBQVksR0FBR2pDLCtDQUFRQSxDQUFDO0lBQ3pDLE1BQU0sQ0FBQ2tDLE9BQU9DLFNBQVMsR0FBR25DLCtDQUFRQSxDQUFDO0lBRW5DLE1BQU1vQyxhQUFhO1FBQ2pCLElBQUksQ0FBQ1IsTUFBTVMsSUFBSSxJQUFJO1lBQ2pCRixTQUFTO1lBQ1Q7UUFDRjtRQUVBLElBQUksQ0FBQ0wsUUFBUU8sSUFBSSxJQUFJO1lBQ25CRixTQUFTO1lBQ1Q7UUFDRjtRQUVBLElBQUk7WUFDRkYsWUFBWTtZQUNaRSxTQUFTO1lBRVQsb0ZBQW9GO1lBQ3BGLE1BQU1HLFVBQVU7Z0JBQ2RDLElBQUksQ0FBQyxLQUFLLEVBQUVaLFNBQVNhLE1BQU1ELEdBQUcsT0FBTyxFQUFFWCxRQUFRQSxNQUFNYSxRQUFRLENBQUMsU0FBUyxLQUFLLE9BQU87Z0JBQ25GYixPQUFPQTtnQkFDUEUsU0FBU0E7Z0JBQ1RZLFFBQVE7Z0JBQ1JDLE1BQU07WUFDUjtZQUVBLGtDQUFrQztZQUNsQyxNQUFNQyxXQUFXLE1BQU1DLE1BQU0sc0JBQXNCO2dCQUNqREMsUUFBUTtnQkFDUkMsU0FBUztvQkFDUCxnQkFBZ0I7Z0JBQ2xCO2dCQUNBQyxNQUFNQyxLQUFLQyxTQUFTLENBQUNaO1lBQ3ZCO1lBRUEsSUFBSSxDQUFDTSxTQUFTTyxFQUFFLEVBQUU7Z0JBQ2hCLE1BQU0sSUFBSUMsTUFBTTtZQUNsQjtZQUVBLDhCQUE4QjtZQUM5QnZCLFNBQVM7WUFDVEUsV0FBVztZQUNYTixhQUFhO1FBRWYsRUFBRSxPQUFPNEIsS0FBSztZQUNaQyxRQUFRcEIsS0FBSyxDQUFDLHNCQUFzQm1CO1lBQ3BDbEIsU0FBUztRQUNYLFNBQVU7WUFDUkYsWUFBWTtRQUNkO0lBQ0Y7SUFFQSxxQkFDRSw4REFBQ2hDLHlEQUFNQTtRQUFDdUIsTUFBTUE7UUFBTUMsY0FBY0E7a0JBQ2hDLDRFQUFDbkIsK0RBQVlBOzs4QkFDWCw4REFBQ1U7Ozs7OzhCQUNELDhEQUFDZCxnRUFBYUE7b0JBQUNnQixXQUFVOztzQ0FDdkIsOERBQUNmLCtEQUFZQTtzQ0FDWCw0RUFBQ0MsOERBQVdBO2dDQUFDYyxXQUFVOzBDQUFnQjs7Ozs7Ozs7Ozs7c0NBR3pDLDhEQUFDcUM7NEJBQUlyQyxXQUFVOztnQ0FDWmdCLHVCQUNDLDhEQUFDcUI7b0NBQUlyQyxXQUFVOzhDQUNaZ0I7Ozs7Ozs4Q0FJTCw4REFBQ3FCO29DQUFJckMsV0FBVTs4Q0FDYiw0RUFBQ1AsdURBQUtBO3dDQUNKNEIsSUFBRzt3Q0FDSGlCLGFBQVk7d0NBQ1p0QyxXQUFVO3dDQUNWdUMsT0FBTzdCO3dDQUNQOEIsVUFBVSxDQUFDQyxJQUFNOUIsU0FBUzhCLEVBQUVDLE1BQU0sQ0FBQ0gsS0FBSzt3Q0FDeENJLFVBQVU3Qjs7Ozs7Ozs7Ozs7OENBSWQsOERBQUN1QjtvQ0FBSXJDLFdBQVU7OENBQ2IsNEVBQUNSLDZEQUFRQTt3Q0FDUDZCLElBQUc7d0NBQ0hpQixhQUFZO3dDQUNadEMsV0FBVTt3Q0FDVjRDLE1BQU07d0NBQ05MLE9BQU8zQjt3Q0FDUDRCLFVBQVUsQ0FBQ0MsSUFBTTVCLFdBQVc0QixFQUFFQyxNQUFNLENBQUNILEtBQUs7d0NBQzFDSSxVQUFVN0I7Ozs7Ozs7Ozs7Ozs7Ozs7O3NDQUtoQiw4REFBQzNCLCtEQUFZQTs7OENBQ1gsOERBQUNJLHlEQUFNQTtvQ0FDTHNELFNBQVE7b0NBQ1JDLFNBQVMsSUFBTXZDLGFBQWE7b0NBQzVCb0MsVUFBVTdCO29DQUNWZCxXQUFVOzhDQUNYOzs7Ozs7OENBR0QsOERBQUNULHlEQUFNQTtvQ0FDTHVELFNBQVM1QjtvQ0FDVHlCLFVBQVU3QjtvQ0FDVmQsV0FBVTs4Q0FFVGMseUJBQ0M7OzBEQUNFLDhEQUFDcEIscUZBQU9BO2dEQUFDTSxXQUFVOzs7Ozs7NENBQThCOzt1REFJbkQ7Ozs7Ozs7Ozs7OztzQ0FJTiw4REFBQ1gseURBQXFCOzRCQUFDVyxXQUFVOzs4Q0FDL0IsOERBQUNMLHNGQUFDQTtvQ0FBQ0ssV0FBVTs7Ozs7OzhDQUNiLDhEQUFDZ0Q7b0NBQUtoRCxXQUFVOzhDQUFVOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQU10QyIsInNvdXJjZXMiOlsiL1VzZXJzL2FsbWEvRG9jdW1lbnRzL05lYWhOZXcvY29tcG9uZW50cy9ub3Rlcy1kaWFsb2cudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIGNsaWVudFwiO1xuXG5pbXBvcnQgeyB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHsgRGlhbG9nLCBEaWFsb2dDb250ZW50LCBEaWFsb2dIZWFkZXIsIERpYWxvZ1RpdGxlLCBEaWFsb2dGb290ZXIsIERpYWxvZ1BvcnRhbCB9IGZyb20gXCJAL2NvbXBvbmVudHMvdWkvZGlhbG9nXCI7XG5pbXBvcnQgKiBhcyBEaWFsb2dQcmltaXRpdmUgZnJvbSBcIkByYWRpeC11aS9yZWFjdC1kaWFsb2dcIjtcbmltcG9ydCB7IGNuIH0gZnJvbSBcIkAvbGliL3V0aWxzXCI7XG5pbXBvcnQgeyBCdXR0b24gfSBmcm9tIFwiQC9jb21wb25lbnRzL3VpL2J1dHRvblwiO1xuaW1wb3J0IHsgVGV4dGFyZWEgfSBmcm9tIFwiQC9jb21wb25lbnRzL3VpL3RleHRhcmVhXCI7XG5pbXBvcnQgeyBJbnB1dCB9IGZyb20gXCJAL2NvbXBvbmVudHMvdWkvaW5wdXRcIjtcbmltcG9ydCB7IExvYWRlcjIsIFggfSBmcm9tIFwibHVjaWRlLXJlYWN0XCI7XG5pbXBvcnQgeyB1c2VTZXNzaW9uIH0gZnJvbSBcIm5leHQtYXV0aC9yZWFjdFwiO1xuaW1wb3J0ICogYXMgUmVhY3QgZnJvbSBcInJlYWN0XCI7XG5cbi8vIEN1c3RvbSBEaWFsb2dPdmVybGF5IHRvIG92ZXJyaWRlIHRoZSBkZWZhdWx0IGJsYWNrIGJhY2tncm91bmRcbmNvbnN0IERpYWxvZ092ZXJsYXkgPSBSZWFjdC5mb3J3YXJkUmVmPFxuICBSZWFjdC5FbGVtZW50UmVmPHR5cGVvZiBEaWFsb2dQcmltaXRpdmUuT3ZlcmxheT4sXG4gIFJlYWN0LkNvbXBvbmVudFByb3BzV2l0aG91dFJlZjx0eXBlb2YgRGlhbG9nUHJpbWl0aXZlLk92ZXJsYXk+XG4+KCh7IGNsYXNzTmFtZSwgLi4ucHJvcHMgfSwgcmVmKSA9PiAoXG4gIDxEaWFsb2dQcmltaXRpdmUuT3ZlcmxheVxuICAgIHJlZj17cmVmfVxuICAgIGNsYXNzTmFtZT17Y24oXG4gICAgICBcImZpeGVkIGluc2V0LTAgei01MCBiZy1ibGFjay80MCBiYWNrZHJvcC1ibHVyLXNtIGRhdGEtW3N0YXRlPW9wZW5dOmFuaW1hdGUtaW4gZGF0YS1bc3RhdGU9Y2xvc2VkXTphbmltYXRlLW91dCBkYXRhLVtzdGF0ZT1jbG9zZWRdOmZhZGUtb3V0LTAgZGF0YS1bc3RhdGU9b3Blbl06ZmFkZS1pbi0wXCIsXG4gICAgICBjbGFzc05hbWVcbiAgICApfVxuICAgIHsuLi5wcm9wc31cbiAgLz5cbikpXG5EaWFsb2dPdmVybGF5LmRpc3BsYXlOYW1lID0gRGlhbG9nUHJpbWl0aXZlLk92ZXJsYXkuZGlzcGxheU5hbWU7XG5cbmludGVyZmFjZSBOb3Rlc0RpYWxvZ1Byb3BzIHtcbiAgb3BlbjogYm9vbGVhbjtcbiAgb25PcGVuQ2hhbmdlOiAob3BlbjogYm9vbGVhbikgPT4gdm9pZDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIE5vdGVzRGlhbG9nKHsgb3Blbiwgb25PcGVuQ2hhbmdlIH06IE5vdGVzRGlhbG9nUHJvcHMpIHtcbiAgY29uc3QgeyBkYXRhOiBzZXNzaW9uIH0gPSB1c2VTZXNzaW9uKCk7XG4gIGNvbnN0IFt0aXRsZSwgc2V0VGl0bGVdID0gdXNlU3RhdGUoXCJcIik7XG4gIGNvbnN0IFtjb250ZW50LCBzZXRDb250ZW50XSA9IHVzZVN0YXRlKFwiXCIpO1xuICBjb25zdCBbaXNTYXZpbmcsIHNldElzU2F2aW5nXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgW2Vycm9yLCBzZXRFcnJvcl0gPSB1c2VTdGF0ZShcIlwiKTtcblxuICBjb25zdCBoYW5kbGVTYXZlID0gYXN5bmMgKCkgPT4ge1xuICAgIGlmICghdGl0bGUudHJpbSgpKSB7XG4gICAgICBzZXRFcnJvcihcIlBsZWFzZSBlbnRlciBhIHRpdGxlIGZvciB5b3VyIG5vdGVcIik7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKCFjb250ZW50LnRyaW0oKSkge1xuICAgICAgc2V0RXJyb3IoXCJQbGVhc2UgZW50ZXIgY29udGVudCBmb3IgeW91ciBub3RlXCIpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRyeSB7XG4gICAgICBzZXRJc1NhdmluZyh0cnVlKTtcbiAgICAgIHNldEVycm9yKFwiXCIpO1xuXG4gICAgICAvLyBDb25zdHJ1Y3QgQVBJIHBheWxvYWQgd2l0aCBsb3dlcmNhc2UgZm9sZGVyIG5hbWUgKGFsd2F5cyBcIm5vdGVzXCIgZm9yIHF1aWNrIG5vdGVzKVxuICAgICAgY29uc3QgcGF5bG9hZCA9IHtcbiAgICAgICAgaWQ6IGB1c2VyLSR7c2Vzc2lvbj8udXNlcj8uaWR9L25vdGVzLyR7dGl0bGV9JHt0aXRsZS5lbmRzV2l0aCgnLm1kJykgPyAnJyA6ICcubWQnfWAsXG4gICAgICAgIHRpdGxlOiB0aXRsZSxcbiAgICAgICAgY29udGVudDogY29udGVudCxcbiAgICAgICAgZm9sZGVyOiBcIm5vdGVzXCIsIC8vIEFsd2F5cyBzYXZlIHRvIE5vdGVzIGZvbGRlclxuICAgICAgICBtaW1lOiBcInRleHQvbWFya2Rvd25cIlxuICAgICAgfTtcbiAgICAgIFxuICAgICAgLy8gVXNlIGRpcmVjdCBzdG9yYWdlIEFQSSBlbmRwb2ludFxuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaCgnL2FwaS9zdG9yYWdlL2ZpbGVzJywge1xuICAgICAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICAgICAgaGVhZGVyczoge1xuICAgICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbidcbiAgICAgICAgfSxcbiAgICAgICAgYm9keTogSlNPTi5zdHJpbmdpZnkocGF5bG9hZClcbiAgICAgIH0pO1xuICAgICAgXG4gICAgICBpZiAoIXJlc3BvbnNlLm9rKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIHNhdmUgbm90ZScpO1xuICAgICAgfVxuICAgICAgXG4gICAgICAvLyBSZXNldCBmb3JtIGFuZCBjbG9zZSBkaWFsb2dcbiAgICAgIHNldFRpdGxlKFwiXCIpO1xuICAgICAgc2V0Q29udGVudChcIlwiKTtcbiAgICAgIG9uT3BlbkNoYW5nZShmYWxzZSk7XG4gICAgICBcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIHNhdmluZyBub3RlOicsIGVycik7XG4gICAgICBzZXRFcnJvcihcIkZhaWxlZCB0byBzYXZlIHlvdXIgbm90ZS4gUGxlYXNlIHRyeSBhZ2Fpbi5cIik7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHNldElzU2F2aW5nKGZhbHNlKTtcbiAgICB9XG4gIH07XG5cbiAgcmV0dXJuIChcbiAgICA8RGlhbG9nIG9wZW49e29wZW59IG9uT3BlbkNoYW5nZT17b25PcGVuQ2hhbmdlfT5cbiAgICAgIDxEaWFsb2dQb3J0YWw+XG4gICAgICAgIDxEaWFsb2dPdmVybGF5IC8+XG4gICAgICAgIDxEaWFsb2dDb250ZW50IGNsYXNzTmFtZT1cInNtOm1heC13LVs1MDBweF0gYmctd2hpdGUgYm9yZGVyLWdyYXktMjAwXCI+XG4gICAgICAgICAgPERpYWxvZ0hlYWRlcj5cbiAgICAgICAgICAgIDxEaWFsb2dUaXRsZSBjbGFzc05hbWU9XCJ0ZXh0LWdyYXktOTAwXCI+UXVpY2sgTm90ZTwvRGlhbG9nVGl0bGU+XG4gICAgICAgICAgPC9EaWFsb2dIZWFkZXI+XG4gICAgICAgICAgXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJncmlkIGdhcC00IHB5LTRcIj5cbiAgICAgICAgICAgIHtlcnJvciAmJiAoXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYmctcmVkLTUwIHRleHQtcmVkLTUwMCBwLTIgcm91bmRlZC1tZCB0ZXh0LXNtXCI+XG4gICAgICAgICAgICAgICAge2Vycm9yfVxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZ3JpZCBncmlkLWNvbHMtNCBpdGVtcy1jZW50ZXIgZ2FwLTRcIj5cbiAgICAgICAgICAgICAgPElucHV0XG4gICAgICAgICAgICAgICAgaWQ9XCJ0aXRsZVwiXG4gICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJOb3RlIHRpdGxlXCJcbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJjb2wtc3Bhbi00IHRleHQtZ3JheS04MDAgYmctd2hpdGUgYm9yZGVyLWdyYXktMzAwIHBsYWNlaG9sZGVyLWdyYXktNTAwXCJcbiAgICAgICAgICAgICAgICB2YWx1ZT17dGl0bGV9XG4gICAgICAgICAgICAgICAgb25DaGFuZ2U9eyhlKSA9PiBzZXRUaXRsZShlLnRhcmdldC52YWx1ZSl9XG4gICAgICAgICAgICAgICAgZGlzYWJsZWQ9e2lzU2F2aW5nfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZ3JpZCBncmlkLWNvbHMtNCBpdGVtcy1jZW50ZXIgZ2FwLTRcIj5cbiAgICAgICAgICAgICAgPFRleHRhcmVhXG4gICAgICAgICAgICAgICAgaWQ9XCJjb250ZW50XCJcbiAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIldoYXQncyBvbiB5b3VyIG1pbmQ/XCJcbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJjb2wtc3Bhbi00IHRleHQtZ3JheS04MDAgYmctd2hpdGUgYm9yZGVyLWdyYXktMzAwIHBsYWNlaG9sZGVyLWdyYXktNTAwXCJcbiAgICAgICAgICAgICAgICByb3dzPXsxMH1cbiAgICAgICAgICAgICAgICB2YWx1ZT17Y29udGVudH1cbiAgICAgICAgICAgICAgICBvbkNoYW5nZT17KGUpID0+IHNldENvbnRlbnQoZS50YXJnZXQudmFsdWUpfVxuICAgICAgICAgICAgICAgIGRpc2FibGVkPXtpc1NhdmluZ31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIFxuICAgICAgICAgIDxEaWFsb2dGb290ZXI+XG4gICAgICAgICAgICA8QnV0dG9uIFxuICAgICAgICAgICAgICB2YXJpYW50PVwiZGVzdHJ1Y3RpdmVcIiBcbiAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gb25PcGVuQ2hhbmdlKGZhbHNlKX0gXG4gICAgICAgICAgICAgIGRpc2FibGVkPXtpc1NhdmluZ31cbiAgICAgICAgICAgICAgY2xhc3NOYW1lPVwiYmctcmVkLTYwMCBob3ZlcjpiZy1yZWQtNzAwIHRleHQtd2hpdGVcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICBDYW5jZWxcbiAgICAgICAgICAgIDwvQnV0dG9uPlxuICAgICAgICAgICAgPEJ1dHRvbiBcbiAgICAgICAgICAgICAgb25DbGljaz17aGFuZGxlU2F2ZX0gXG4gICAgICAgICAgICAgIGRpc2FibGVkPXtpc1NhdmluZ31cbiAgICAgICAgICAgICAgY2xhc3NOYW1lPVwiYmctYmx1ZS02MDAgaG92ZXI6YmctYmx1ZS03MDAgdGV4dC13aGl0ZVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtpc1NhdmluZyA/IChcbiAgICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgICAgPExvYWRlcjIgY2xhc3NOYW1lPVwibXItMiBoLTQgdy00IGFuaW1hdGUtc3BpblwiIC8+XG4gICAgICAgICAgICAgICAgICBTYXZpbmcuLi5cbiAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICBcIlNhdmUgTm90ZVwiXG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICA8L0J1dHRvbj5cbiAgICAgICAgICA8L0RpYWxvZ0Zvb3Rlcj5cbiAgICAgICAgICA8RGlhbG9nUHJpbWl0aXZlLkNsb3NlIGNsYXNzTmFtZT1cImFic29sdXRlIHJpZ2h0LTQgdG9wLTQgcm91bmRlZC1zbSBvcGFjaXR5LTcwIHJpbmctb2Zmc2V0LWJhY2tncm91bmQgdHJhbnNpdGlvbi1vcGFjaXR5IGhvdmVyOm9wYWNpdHktMTAwIGZvY3VzOm91dGxpbmUtbm9uZSBmb2N1czpyaW5nLTIgZm9jdXM6cmluZy1yaW5nIGZvY3VzOnJpbmctb2Zmc2V0LTIgZGlzYWJsZWQ6cG9pbnRlci1ldmVudHMtbm9uZSBkYXRhLVtzdGF0ZT1vcGVuXTpiZy1hY2NlbnQgZGF0YS1bc3RhdGU9b3Blbl06dGV4dC1tdXRlZC1mb3JlZ3JvdW5kXCI+XG4gICAgICAgICAgICA8WCBjbGFzc05hbWU9XCJoLTQgdy00IHRleHQtZ3JheS01MDBcIiAvPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwic3Itb25seVwiPkNsb3NlPC9zcGFuPlxuICAgICAgICAgIDwvRGlhbG9nUHJpbWl0aXZlLkNsb3NlPlxuICAgICAgICA8L0RpYWxvZ0NvbnRlbnQ+XG4gICAgICA8L0RpYWxvZ1BvcnRhbD5cbiAgICA8L0RpYWxvZz5cbiAgKTtcbn0gIl0sIm5hbWVzIjpbInVzZVN0YXRlIiwiRGlhbG9nIiwiRGlhbG9nQ29udGVudCIsIkRpYWxvZ0hlYWRlciIsIkRpYWxvZ1RpdGxlIiwiRGlhbG9nRm9vdGVyIiwiRGlhbG9nUG9ydGFsIiwiRGlhbG9nUHJpbWl0aXZlIiwiY24iLCJCdXR0b24iLCJUZXh0YXJlYSIsIklucHV0IiwiTG9hZGVyMiIsIlgiLCJ1c2VTZXNzaW9uIiwiUmVhY3QiLCJEaWFsb2dPdmVybGF5IiwiZm9yd2FyZFJlZiIsImNsYXNzTmFtZSIsInByb3BzIiwicmVmIiwiT3ZlcmxheSIsImRpc3BsYXlOYW1lIiwiTm90ZXNEaWFsb2ciLCJvcGVuIiwib25PcGVuQ2hhbmdlIiwiZGF0YSIsInNlc3Npb24iLCJ0aXRsZSIsInNldFRpdGxlIiwiY29udGVudCIsInNldENvbnRlbnQiLCJpc1NhdmluZyIsInNldElzU2F2aW5nIiwiZXJyb3IiLCJzZXRFcnJvciIsImhhbmRsZVNhdmUiLCJ0cmltIiwicGF5bG9hZCIsImlkIiwidXNlciIsImVuZHNXaXRoIiwiZm9sZGVyIiwibWltZSIsInJlc3BvbnNlIiwiZmV0Y2giLCJtZXRob2QiLCJoZWFkZXJzIiwiYm9keSIsIkpTT04iLCJzdHJpbmdpZnkiLCJvayIsIkVycm9yIiwiZXJyIiwiY29uc29sZSIsImRpdiIsInBsYWNlaG9sZGVyIiwidmFsdWUiLCJvbkNoYW5nZSIsImUiLCJ0YXJnZXQiLCJkaXNhYmxlZCIsInJvd3MiLCJ2YXJpYW50Iiwib25DbGljayIsIkNsb3NlIiwic3BhbiJdLCJpZ25vcmVMaXN0IjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./components/notes-dialog.tsx\n");
/***/ }),
/***/ "(ssr)/./components/notification-badge.tsx":
/*!*******************************************!*\
!*** ./components/notification-badge.tsx ***!
\*******************************************/
/***/ ((__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 */ NotificationBadge: () => (/* binding */ NotificationBadge)\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/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/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/client/app-dir/link.js\");\n/* harmony import */ var next_link__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(next_link__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _barrel_optimize_names_AlertCircle_Bell_Check_ExternalLink_Kanban_LogIn_lucide_react__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! __barrel_optimize__?names=AlertCircle,Bell,Check,ExternalLink,Kanban,LogIn!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/bell.js\");\n/* harmony import */ var _barrel_optimize_names_AlertCircle_Bell_Check_ExternalLink_Kanban_LogIn_lucide_react__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! __barrel_optimize__?names=AlertCircle,Bell,Check,ExternalLink,Kanban,LogIn!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/check.js\");\n/* harmony import */ var _barrel_optimize_names_AlertCircle_Bell_Check_ExternalLink_Kanban_LogIn_lucide_react__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! __barrel_optimize__?names=AlertCircle,Bell,Check,ExternalLink,Kanban,LogIn!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/log-in.js\");\n/* harmony import */ var _barrel_optimize_names_AlertCircle_Bell_Check_ExternalLink_Kanban_LogIn_lucide_react__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! __barrel_optimize__?names=AlertCircle,Bell,Check,ExternalLink,Kanban,LogIn!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/circle-alert.js\");\n/* harmony import */ var _barrel_optimize_names_AlertCircle_Bell_Check_ExternalLink_Kanban_LogIn_lucide_react__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! __barrel_optimize__?names=AlertCircle,Bell,Check,ExternalLink,Kanban,LogIn!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/kanban.js\");\n/* harmony import */ var _barrel_optimize_names_AlertCircle_Bell_Check_ExternalLink_Kanban_LogIn_lucide_react__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! __barrel_optimize__?names=AlertCircle,Bell,Check,ExternalLink,Kanban,LogIn!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/external-link.js\");\n/* harmony import */ var _components_ui_badge__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/components/ui/badge */ \"(ssr)/./components/ui/badge.tsx\");\n/* harmony import */ var _hooks_use_notifications__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @/hooks/use-notifications */ \"(ssr)/./hooks/use-notifications.ts\");\n/* harmony import */ var _components_ui_button__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/components/ui/button */ \"(ssr)/./components/ui/button.tsx\");\n/* harmony import */ var next_auth_react__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! next-auth/react */ \"(ssr)/./node_modules/next-auth/react/index.js\");\n/* harmony import */ var next_auth_react__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(next_auth_react__WEBPACK_IMPORTED_MODULE_6__);\n/* harmony import */ var _components_ui_dropdown_menu__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @/components/ui/dropdown-menu */ \"(ssr)/./components/ui/dropdown-menu.tsx\");\n/* harmony import */ var _barrel_optimize_names_formatDistanceToNow_date_fns__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! __barrel_optimize__?names=formatDistanceToNow!=!date-fns */ \"(ssr)/./node_modules/date-fns/formatDistanceToNow.mjs\");\n/* harmony import */ var _components_safe_html__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @/components/safe-html */ \"(ssr)/./components/safe-html.tsx\");\n\n\n\n\n\n\n\n\n\n\n\n// Use React.memo to prevent unnecessary re-renders\nconst NotificationBadge = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_1__.memo)(function NotificationBadge({ className }) {\n const { data: session, status } = (0,next_auth_react__WEBPACK_IMPORTED_MODULE_6__.useSession)();\n const { notifications, notificationCount, markAsRead, markAllAsRead, fetchNotifications, loading, error } = (0,_hooks_use_notifications__WEBPACK_IMPORTED_MODULE_4__.useNotifications)();\n const hasUnread = notificationCount.unread > 0;\n const [isOpen, setIsOpen] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n const [manualFetchAttempted, setManualFetchAttempted] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n console.log('[NOTIFICATION_BADGE] Auth status:', status);\n console.log('[NOTIFICATION_BADGE] Session:', session ? 'exists' : 'null');\n console.log('[NOTIFICATION_BADGE] Current notification count:', notificationCount);\n console.log('[NOTIFICATION_BADGE] Current notifications:', notifications.length > 0 ? `${notifications.length} loaded` : 'none loaded');\n console.log('[NOTIFICATION_BADGE] Loading state:', loading);\n console.log('[NOTIFICATION_BADGE] Error state:', error);\n // Manual fetch function with error handling\n const manualFetch = async ()=>{\n console.log('[NOTIFICATION_BADGE] Manual fetch initiated');\n setManualFetchAttempted(true);\n try {\n // Direct fetch to debug\n const response = await fetch('/api/notifications', {\n credentials: 'include'\n });\n console.log('[NOTIFICATION_BADGE] Manual fetch response:', response.status);\n if (!response.ok) {\n console.error('[NOTIFICATION_BADGE] Manual fetch failed:', response.status, await response.text());\n } else {\n const data = await response.json();\n console.log('[NOTIFICATION_BADGE] Manual fetch success:', data);\n }\n } catch (err) {\n console.error('[NOTIFICATION_BADGE] Manual fetch error:', err);\n }\n // Then try the normal way\n fetchNotifications(1, 10);\n };\n // Fetch notifications when dropdown is opened\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)({\n \"NotificationBadge.NotificationBadge.useEffect\": ()=>{\n if (isOpen && status === 'authenticated') {\n console.log('[NOTIFICATION_BADGE] Dropdown opened, fetching notifications');\n manualFetch();\n }\n }\n }[\"NotificationBadge.NotificationBadge.useEffect\"], [\n isOpen,\n status\n ]);\n const handleMarkAsRead = async (notificationId)=>{\n await markAsRead(notificationId);\n };\n const handleMarkAllAsRead = async ()=>{\n await markAllAsRead();\n setIsOpen(false);\n };\n // Force fetch when component mounts\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)({\n \"NotificationBadge.NotificationBadge.useEffect\": ()=>{\n if (status === 'authenticated') {\n console.log('[NOTIFICATION_BADGE] Component mounted and authenticated, fetching initial notifications');\n manualFetch();\n }\n }\n }[\"NotificationBadge.NotificationBadge.useEffect\"], [\n status\n ]);\n // Take the latest 10 notifications for the dropdown\n const recentNotifications = notifications.slice(0, 10);\n const handleOpenChange = (open)=>{\n setIsOpen(open);\n if (open && status === 'authenticated') {\n // Fetch fresh notifications when dropdown opens\n console.log('[NOTIFICATION_BADGE] Dropdown opened via handleOpenChange, fetching notifications');\n manualFetch();\n }\n };\n // Special case for auth error\n const isAuthError = error?.includes('Not authenticated') || error?.includes('401');\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: `relative ${className || ''}`,\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_dropdown_menu__WEBPACK_IMPORTED_MODULE_7__.DropdownMenu, {\n open: isOpen,\n onOpenChange: handleOpenChange,\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_dropdown_menu__WEBPACK_IMPORTED_MODULE_7__.DropdownMenuTrigger, {\n asChild: true,\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_button__WEBPACK_IMPORTED_MODULE_5__.Button, {\n variant: \"ghost\",\n size: \"icon\",\n className: \"text-white/80 hover:text-white relative p-0\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_AlertCircle_Bell_Check_ExternalLink_Kanban_LogIn_lucide_react__WEBPACK_IMPORTED_MODULE_9__[\"default\"], {\n className: \"w-5 h-5\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 109,\n columnNumber: 13\n }, this),\n hasUnread && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_badge__WEBPACK_IMPORTED_MODULE_3__.Badge, {\n variant: \"notification\",\n size: \"notification\",\n className: \"absolute -top-2 -right-2 z-50\",\n children: notificationCount.unread > 99 ? '99+' : notificationCount.unread\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 111,\n columnNumber: 15\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"sr-only\",\n children: \"Notifications\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 119,\n columnNumber: 13\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 108,\n columnNumber: 11\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 107,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_dropdown_menu__WEBPACK_IMPORTED_MODULE_7__.DropdownMenuContent, {\n align: \"end\",\n className: \"w-80 max-h-[80vh] overflow-y-auto\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex items-center justify-between p-4\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"h3\", {\n className: \"font-medium\",\n children: \"Notifications\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 124,\n columnNumber: 13\n }, this),\n notificationCount.unread > 0 && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_button__WEBPACK_IMPORTED_MODULE_5__.Button, {\n variant: \"ghost\",\n size: \"sm\",\n onClick: handleMarkAllAsRead,\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_AlertCircle_Bell_Check_ExternalLink_Kanban_LogIn_lucide_react__WEBPACK_IMPORTED_MODULE_10__[\"default\"], {\n className: \"h-4 w-4 mr-2\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 127,\n columnNumber: 17\n }, this),\n \"Mark all read\"\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 126,\n columnNumber: 15\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 123,\n columnNumber: 11\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_dropdown_menu__WEBPACK_IMPORTED_MODULE_7__.DropdownMenuSeparator, {}, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 132,\n columnNumber: 11\n }, this),\n loading ? /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"py-8 px-4 text-center\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"animate-spin rounded-full h-8 w-8 border-b-2 border-gray-900 mx-auto mb-2\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 136,\n columnNumber: 15\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n className: \"text-sm text-muted-foreground\",\n children: \"Loading notifications...\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 137,\n columnNumber: 15\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 135,\n columnNumber: 13\n }, this) : isAuthError ? /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"py-8 px-4 text-center\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_AlertCircle_Bell_Check_ExternalLink_Kanban_LogIn_lucide_react__WEBPACK_IMPORTED_MODULE_11__[\"default\"], {\n className: \"h-8 w-8 text-orange-500 mx-auto mb-2\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 141,\n columnNumber: 15\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n className: \"text-sm text-muted-foreground mb-2\",\n children: \"Authentication required\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 142,\n columnNumber: 15\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_button__WEBPACK_IMPORTED_MODULE_5__.Button, {\n variant: \"outline\",\n size: \"sm\",\n onClick: ()=>(0,next_auth_react__WEBPACK_IMPORTED_MODULE_6__.signIn)(),\n children: \"Sign in\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 143,\n columnNumber: 15\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 140,\n columnNumber: 13\n }, this) : error ? /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"py-8 px-4 text-center\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_AlertCircle_Bell_Check_ExternalLink_Kanban_LogIn_lucide_react__WEBPACK_IMPORTED_MODULE_12__[\"default\"], {\n className: \"h-8 w-8 text-red-500 mx-auto mb-2\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 149,\n columnNumber: 15\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n className: \"text-sm text-red-500 mb-2\",\n children: error\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 150,\n columnNumber: 15\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_button__WEBPACK_IMPORTED_MODULE_5__.Button, {\n variant: \"outline\",\n size: \"sm\",\n onClick: manualFetch,\n children: \"Retry\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 151,\n columnNumber: 15\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 148,\n columnNumber: 13\n }, this) : notifications.length === 0 && manualFetchAttempted ? /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"py-8 px-4 text-center\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n className: \"text-sm text-muted-foreground\",\n children: \"No notifications found\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 157,\n columnNumber: 15\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_button__WEBPACK_IMPORTED_MODULE_5__.Button, {\n variant: \"outline\",\n size: \"sm\",\n className: \"mt-2\",\n onClick: manualFetch,\n children: \"Refresh\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 158,\n columnNumber: 15\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 156,\n columnNumber: 13\n }, this) : notifications.length === 0 ? /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"py-8 px-4 text-center\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n className: \"text-sm text-muted-foreground\",\n children: \"No notifications\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 164,\n columnNumber: 15\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 163,\n columnNumber: 13\n }, this) : /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, {\n children: recentNotifications.map((notification)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_dropdown_menu__WEBPACK_IMPORTED_MODULE_7__.DropdownMenuItem, {\n className: \"px-4 py-3 cursor-default\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"w-full\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex items-start justify-between\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"max-w-[90%]\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"text-sm font-medium\",\n children: [\n notification.title,\n !notification.isRead && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_badge__WEBPACK_IMPORTED_MODULE_3__.Badge, {\n variant: \"secondary\",\n className: \"ml-2 bg-blue-500 text-white\",\n children: \"New\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 176,\n columnNumber: 29\n }, this),\n notification.source === 'leantime' && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_badge__WEBPACK_IMPORTED_MODULE_3__.Badge, {\n variant: \"outline\",\n className: \"ml-2 text-[10px] py-0 px-1.5 bg-amber-50 text-amber-700 border-amber-200 flex items-center\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_AlertCircle_Bell_Check_ExternalLink_Kanban_LogIn_lucide_react__WEBPACK_IMPORTED_MODULE_13__[\"default\"], {\n className: \"mr-1 h-2.5 w-2.5\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 180,\n columnNumber: 31\n }, this),\n \"Agilit\\xe9\"\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 179,\n columnNumber: 29\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 173,\n columnNumber: 25\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n className: \"text-xs text-muted-foreground\",\n children: [\n (0,_barrel_optimize_names_formatDistanceToNow_date_fns__WEBPACK_IMPORTED_MODULE_14__.formatDistanceToNow)(new Date(notification.timestamp), {\n addSuffix: true\n }),\n notification.source && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"ml-1 opacity-75\",\n children: [\n \"• \",\n notification.source === 'leantime' ? 'Leantime' : notification.source\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 188,\n columnNumber: 29\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 185,\n columnNumber: 25\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 172,\n columnNumber: 23\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex space-x-1 ml-2\",\n children: [\n !notification.isRead && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_button__WEBPACK_IMPORTED_MODULE_5__.Button, {\n variant: \"ghost\",\n size: \"sm\",\n className: \"h-6 w-6 p-0\",\n onClick: ()=>handleMarkAsRead(notification.id),\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_AlertCircle_Bell_Check_ExternalLink_Kanban_LogIn_lucide_react__WEBPACK_IMPORTED_MODULE_10__[\"default\"], {\n className: \"h-3.5 w-3.5\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 202,\n columnNumber: 29\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"sr-only\",\n children: \"Mark as read\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 203,\n columnNumber: 29\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 196,\n columnNumber: 27\n }, this),\n notification.link && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)((next_link__WEBPACK_IMPORTED_MODULE_2___default()), {\n href: notification.link,\n target: \"_blank\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_button__WEBPACK_IMPORTED_MODULE_5__.Button, {\n variant: \"ghost\",\n size: \"sm\",\n className: \"h-6 w-6 p-0\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_AlertCircle_Bell_Check_ExternalLink_Kanban_LogIn_lucide_react__WEBPACK_IMPORTED_MODULE_15__[\"default\"], {\n className: \"h-3.5 w-3.5\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 209,\n columnNumber: 31\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"sr-only\",\n children: \"Open\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 210,\n columnNumber: 31\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 208,\n columnNumber: 29\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 207,\n columnNumber: 27\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 194,\n columnNumber: 23\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 171,\n columnNumber: 21\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_safe_html__WEBPACK_IMPORTED_MODULE_8__.SafeHTML, {\n html: notification.message,\n className: \"text-xs mt-1 notification-message\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 216,\n columnNumber: 21\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 170,\n columnNumber: 19\n }, this)\n }, notification.id, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 169,\n columnNumber: 17\n }, this))\n }, void 0, false)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 122,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 106,\n columnNumber: 7\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/notification-badge.tsx\",\n lineNumber: 105,\n columnNumber: 5\n }, this);\n});\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9jb21wb25lbnRzL25vdGlmaWNhdGlvbi1iYWRnZS50c3giLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUF5RDtBQUM1QjtBQUN3RDtBQUN2QztBQUNlO0FBQ2I7QUFDSztBQU9kO0FBQ1E7QUFDRztBQU1sRCxtREFBbUQ7QUFDNUMsTUFBTXVCLGtDQUFvQnRCLDJDQUFJQSxDQUFDLFNBQVNzQixrQkFBa0IsRUFBRUMsU0FBUyxFQUEwQjtJQUNwRyxNQUFNLEVBQUVDLE1BQU1DLE9BQU8sRUFBRUMsTUFBTSxFQUFFLEdBQUdiLDJEQUFVQTtJQUM1QyxNQUFNLEVBQUVjLGFBQWEsRUFBRUMsaUJBQWlCLEVBQUVDLFVBQVUsRUFBRUMsYUFBYSxFQUFFQyxrQkFBa0IsRUFBRUMsT0FBTyxFQUFFQyxLQUFLLEVBQUUsR0FBR3RCLDBFQUFnQkE7SUFDNUgsTUFBTXVCLFlBQVlOLGtCQUFrQk8sTUFBTSxHQUFHO0lBQzdDLE1BQU0sQ0FBQ0MsUUFBUUMsVUFBVSxHQUFHcEMsK0NBQVFBLENBQUM7SUFDckMsTUFBTSxDQUFDcUMsc0JBQXNCQyx3QkFBd0IsR0FBR3RDLCtDQUFRQSxDQUFDO0lBRWpFdUMsUUFBUUMsR0FBRyxDQUFDLHFDQUFxQ2Y7SUFDakRjLFFBQVFDLEdBQUcsQ0FBQyxpQ0FBaUNoQixVQUFVLFdBQVc7SUFDbEVlLFFBQVFDLEdBQUcsQ0FBQyxvREFBb0RiO0lBQ2hFWSxRQUFRQyxHQUFHLENBQUMsK0NBQStDZCxjQUFjZSxNQUFNLEdBQUcsSUFBSSxHQUFHZixjQUFjZSxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUc7SUFDekhGLFFBQVFDLEdBQUcsQ0FBQyx1Q0FBdUNUO0lBQ25EUSxRQUFRQyxHQUFHLENBQUMscUNBQXFDUjtJQUVqRCw0Q0FBNEM7SUFDNUMsTUFBTVUsY0FBYztRQUNsQkgsUUFBUUMsR0FBRyxDQUFDO1FBQ1pGLHdCQUF3QjtRQUV4QixJQUFJO1lBQ0Ysd0JBQXdCO1lBQ3hCLE1BQU1LLFdBQVcs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QU87Z0RBQzFCNUQsV0FBVTs7Ozs7Ozs7Ozs7O21DQWpET2dELGFBQWFPLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBNER0RCxHQUFHIiwic291cmNlcyI6WyIvVXNlcnMvYWxtYS9Eb2N1bWVudHMvTmVhaE5ldy9jb21wb25lbnRzL25vdGlmaWNhdGlvbi1iYWRnZS50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IG1lbW8sIHVzZVN0YXRlLCB1c2VFZmZlY3QgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgTGluayBmcm9tICduZXh0L2xpbmsnO1xuaW1wb3J0IHsgQmVsbCwgQ2hlY2ssIEV4dGVybmFsTGluaywgQWxlcnRDaXJjbGUsIExvZ0luLCBLYW5iYW4gfSBmcm9tICdsdWNpZGUtcmVhY3QnO1xuaW1wb3J0IHsgQmFkZ2UgfSBmcm9tICdAL2NvbXBvbmVudHMvdWkvYmFkZ2UnO1xuaW1wb3J0IHsgdXNlTm90aWZpY2F0aW9ucyB9IGZyb20gJ0AvaG9va3MvdXNlLW5vdGlmaWNhdGlvbnMnO1xuaW1wb3J0IHsgQnV0dG9uIH0gZnJvbSAnQC9jb21wb25lbnRzL3VpL2J1dHRvbic7XG5pbXBvcnQgeyB1c2VTZXNzaW9uLCBzaWduSW4gfSBmcm9tICduZXh0LWF1dGgvcmVhY3QnO1xuaW1wb3J0IHsgXG4gIERyb3Bkb3duTWVudSwgXG4gIERyb3Bkb3duTWVudUNvbnRlbnQsIFxuICBEcm9wZG93bk1lbnVJdGVtLCBcbiAgRHJvcGRvd25NZW51VHJpZ2dlcixcbiAgRHJvcGRvd25NZW51U2VwYXJhdG9yLFxufSBmcm9tICdAL2NvbXBvbmVudHMvdWkvZHJvcGRvd24tbWVudSc7XG5pbXBvcnQgeyBmb3JtYXREaXN0YW5jZVRvTm93IH0gZnJvbSAnZGF0ZS1mbnMnO1xuaW1wb3J0IHsgU2FmZUhUTUwgfSBmcm9tICdAL2NvbXBvbmVudHMvc2FmZS1odG1sJztcblxuaW50ZXJmYWNlIE5vdGlmaWNhdGlvbkJhZGdlUHJvcHMge1xuICBjbGFzc05hbWU/OiBzdHJpbmc7XG59XG5cbi8vIFVzZSBSZWFjdC5tZW1vIHRvIHByZXZlbnQgdW5uZWNlc3NhcnkgcmUtcmVuZGVyc1xuZXhwb3J0IGNvbnN0IE5vdGlmaWNhdGlvbkJhZGdlID0gbWVtbyhmdW5jdGlvbiBOb3RpZmljYXRpb25CYWRnZSh7IGNsYXNzTmFtZSB9OiBOb3RpZmljYXRpb25CYWRnZVByb3BzKSB7XG4gIGNvbnN0IHsgZGF0YTogc2Vzc2lvbiwgc3RhdHVzIH0gPSB1c2VTZXNzaW9uKCk7XG4gIGNvbnN0IHsgbm90aWZpY2F0aW9ucywgbm90aWZpY2F0aW9uQ291bnQsIG1hcmtBc1JlYWQsIG1hcmtBbGxBc1JlYWQsIGZldGNoTm90aWZpY2F0aW9ucywgbG9hZGluZywgZXJyb3IgfSA9IHVzZU5vdGlmaWNhdGlvbnMoKTtcbiAgY29uc3QgaGFzVW5yZWFkID0gbm90aWZpY2F0aW9uQ291bnQudW5yZWFkID4gMDtcbiAgY29uc3QgW2lzT3Blbiwgc2V0SXNPcGVuXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgW21hbnVhbEZldGNoQXR0ZW1wdGVkLCBzZXRNYW51YWxGZXRjaEF0dGVtcHRlZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIFxuICBjb25zb2xlLmxvZygnW05PVElGSUNBVElPTl9CQURHRV0gQXV0aCBzdGF0dXM6Jywgc3RhdHVzKTtcbiAgY29uc29sZS5sb2coJ1tOT1RJRklDQVRJT05fQkFER0VdIFNlc3Npb246Jywgc2Vzc2lvbiA/ICdleGlzdHMnIDogJ251bGwnKTtcbiAgY29uc29sZS5sb2coJ1tOT1RJRklDQVRJT05fQkFER0VdIEN1cnJlbnQgbm90aWZpY2F0aW9uIGNvdW50OicsIG5vdGlmaWNhdGlvbkNvdW50KTtcbiAgY29uc29sZS5sb2coJ1tOT1RJRklDQVRJT05fQkFER0VdIEN1cnJlbnQgbm90aWZpY2F0aW9uczonLCBub3RpZmljYXRpb25zLmxlbmd0aCA+IDAgPyBgJHtub3RpZmljYXRpb25zLmxlbmd0aH0gbG9hZGVkYCA6ICdub25lIGxvYWRlZCcpO1xuICBjb25zb2xlLmxvZygnW05PVElGSUNBVElPTl9CQURHRV0gTG9hZGluZyBzdGF0ZTonLCBsb2FkaW5nKTtcbiAgY29uc29sZS5sb2coJ1tOT1RJRklDQVRJT05fQkFER0VdIEVycm9yIHN0YXRlOicsIGVycm9yKTtcbiAgXG4gIC8vIE1hbnVhbCBmZXRjaCBmdW5jdGlvbiB3aXRoIGVycm9yIGhhbmRsaW5nXG4gIGNvbnN0IG1hbnVhbEZldGNoID0gYXN5bmMgKCkgPT4ge1xuICAgIGNvbnNvbGUubG9nKCdbTk9USUZJQ0FUSU9OX0JBREdFXSBNYW51YWwgZmV0Y2ggaW5pdGlhdGVkJyk7XG4gICAgc2V0TWFudWFsRmV0Y2hBdHRlbXB0ZWQodHJ1ZSk7XG4gICAgXG4gICAgdHJ5IHtcbiAgICAgIC8vIERpcmVjdCBmZXRjaCB0byBkZWJ1Z1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaCgnL2FwaS9ub3RpZmljYXRpb25zJywge1xuICAgICAgICBjcmVkZW50aWFsczogJ2luY2x1ZGUnXG4gICAgICB9KTtcbiAgICAgIFxuICAgICAgY29uc29sZS5sb2coJ1tOT1RJRklDQVRJT05fQkFER0VdIE1hbnVhbCBmZXRjaCByZXNwb25zZTonLCByZXNwb25zZS5zdGF0dXMpO1xuICAgICAgXG4gICAgICBpZiAoIXJlc3BvbnNlLm9rKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ1tOT1RJRklDQVRJT05fQkFER0VdIE1hbnVhbCBmZXRjaCBmYWlsZWQ6JywgcmVzcG9uc2Uuc3RhdHVzLCBhd2FpdCByZXNwb25zZS50ZXh0KCkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgZGF0YSA9IGF3YWl0IHJlc3BvbnNlLmpzb24oKTtcbiAgICAgICAgY29uc29sZS5sb2coJ1tOT1RJRklDQVRJT05fQkFER0VdIE1hbnVhbCBmZXRjaCBzdWNjZXNzOicsIGRhdGEpO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgY29uc29sZS5lcnJvcignW05PVElGSUNBVElPTl9CQURHRV0gTWFudWFsIGZldGNoIGVycm9yOicsIGVycik7XG4gICAgfVxuICAgIFxuICAgIC8vIFRoZW4gdHJ5IHRoZSBub3JtYWwgd2F5XG4gICAgZmV0Y2hOb3RpZmljYXRpb25zKDEsIDEwKTtcbiAgfTtcbiAgXG4gIC8vIEZldGNoIG5vdGlmaWNhdGlvbnMgd2hlbiBkcm9wZG93biBpcyBvcGVuZWRcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoaXNPcGVuICYmIHN0YXR1cyA9PT0gJ2F1dGhlbnRpY2F0ZWQnKSB7XG4gICAgICBjb25zb2xlLmxvZygnW05PVElGSUNBVElPTl9CQURHRV0gRHJvcGRvd24gb3BlbmVkLCBmZXRjaGluZyBub3RpZmljYXRpb25zJyk7XG4gICAgICBtYW51YWxGZXRjaCgpO1xuICAgIH1cbiAgfSwgW2lzT3Blbiwgc3RhdHVzXSk7XG4gIFxuICBjb25zdCBoYW5kbGVNYXJrQXNSZWFkID0gYXN5bmMgKG5vdGlmaWNhdGlvbklkOiBzdHJpbmcpID0+IHtcbiAgICBhd2FpdCBtYXJrQXNSZWFkKG5vdGlmaWNhdGlvbklkKTtcbiAgfTtcbiAgXG4gIGNvbnN0IGhhbmRsZU1hcmtBbGxBc1JlYWQgPSBhc3luYyAoKSA9PiB7XG4gICAgYXdhaXQgbWFya0FsbEFzUmVhZCgpO1xuICAgIHNldElzT3BlbihmYWxzZSk7XG4gIH07XG4gIFxuICAvLyBGb3JjZSBmZXRjaCB3aGVuIGNvbXBvbmVudCBtb3VudHNcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoc3RhdHVzID09PSAnYXV0aGVudGljYXRlZCcpIHtcbiAgICAgIGNvbnNvbGUubG9nKCdbTk9USUZJQ0FUSU9OX0JBREdFXSBDb21wb25lbnQgbW91bnRlZCBhbmQgYXV0aGVudGljYXRlZCwgZmV0Y2hpbmcgaW5pdGlhbCBub3RpZmljYXRpb25zJyk7XG4gICAgICBtYW51YWxGZXRjaCgpO1xuICAgIH1cbiAgfSwgW3N0YXR1c10pO1xuICBcbiAgLy8gVGFrZSB0aGUgbGF0ZXN0IDEwIG5vdGlmaWNhdGlvbnMgZm9yIHRoZSBkcm9wZG93blxuICBjb25zdCByZWNlbnROb3RpZmljYXRpb25zID0gbm90aWZpY2F0aW9ucy5zbGljZSgwLCAxMCk7XG4gIFxuICBjb25zdCBoYW5kbGVPcGVuQ2hhbmdlID0gKG9wZW46IGJvb2xlYW4pID0+IHtcbiAgICBzZXRJc09wZW4ob3Blbik7XG4gICAgaWYgKG9wZW4gJiYgc3RhdHVzID09PSAnYXV0aGVudGljYXRlZCcpIHtcbiAgICAgIC8vIEZldGNoIGZyZXNoIG5vdGlmaWNhdGlvbnMgd2hlbiBkcm9wZG93biBvcGVuc1xuICAgICAgY29uc29sZS5sb2coJ1tOT1RJRklDQVRJT05fQkFER0VdIERyb3Bkb3duIG9wZW5lZCB2aWEgaGFuZGxlT3BlbkNoYW5nZSwgZmV0Y2hpbmcgbm90aWZpY2F0aW9ucycpO1xuICAgICAgbWFudWFsRmV0Y2goKTtcbiAgICB9XG4gIH07XG4gIFxuICAvLyBTcGVjaWFsIGNhc2UgZm9yIGF1dGggZXJyb3JcbiAgY29uc3QgaXNBdXRoRXJyb3IgPSBlcnJvcj8uaW5jbHVkZXMoJ05vdCBhdXRoZW50aWNhdGVkJykgfHwgZXJyb3I/LmluY2x1ZGVzKCc0MDEnKTtcbiAgXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9e2ByZWxhdGl2ZSAke2NsYXNzTmFtZSB8fCAnJ31gfT5cbiAgICAgIDxEcm9wZG93bk1lbnUgb3Blbj17aXNPcGVufSBvbk9wZW5DaGFuZ2U9e2hhbmRsZU9wZW5DaGFuZ2V9PlxuICAgICAgICA8RHJvcGRvd25NZW51VHJpZ2dlciBhc0NoaWxkPlxuICAgICAgICAgIDxCdXR0b24gdmFyaWFudD1cImdob3N0XCIgc2l6ZT1cImljb25cIiBjbGFzc05hbWU9XCJ0ZXh0LXdoaXRlLzgwIGhvdmVyOnRleHQtd2hpdGUgcmVsYXRpdmUgcC0wXCI+XG4gICAgICAgICAgICA8QmVsbCBjbGFzc05hbWU9J3ctNSBoLTUnIC8+XG4gICAgICAgICAgICB7aGFzVW5yZWFkICYmIChcbiAgICAgICAgICAgICAgPEJhZGdlIFxuICAgICAgICAgICAgICAgIHZhcmlhbnQ9XCJub3RpZmljYXRpb25cIiBcbiAgICAgICAgICAgICAgICBzaXplPVwibm90aWZpY2F0aW9uXCJcbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJhYnNvbHV0ZSAtdG9wLTIgLXJpZ2h0LTIgei01MFwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7bm90aWZpY2F0aW9uQ291bnQudW5yZWFkID4gOTkgPyAnOTkrJyA6IG5vdGlmaWNhdGlvbkNvdW50LnVucmVhZH1cbiAgICAgICAgICAgICAgPC9CYWRnZT5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJzci1vbmx5XCI+Tm90aWZpY2F0aW9uczwvc3Bhbj5cbiAgICAgICAgICA8L0J1dHRvbj5cbiAgICAgICAgPC9Ecm9wZG93bk1lbnVUcmlnZ2VyPlxuICAgICAgICA8RHJvcGRvd25NZW51Q29udGVudCBhbGlnbj1cImVuZFwiIGNsYXNzTmFtZT1cInctODAgbWF4LWgtWzgwdmhdIG92ZXJmbG93LXktYXV0b1wiPlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1iZXR3ZWVuIHAtNFwiPlxuICAgICAgICAgICAgPGgzIGNsYXNzTmFtZT1cImZvbnQtbWVkaXVtXCI+Tm90aWZpY2F0aW9uczwvaDM+XG4gICAgICAgICAgICB7bm90aWZpY2F0aW9uQ291bnQudW5yZWFkID4gMCAmJiAoXG4gICAgICAgICAgICAgIDxCdXR0b24gdmFyaWFudD1cImdob3N0XCIgc2l6ZT1cInNtXCIgb25DbGljaz17aGFuZGxlTWFya0FsbEFzUmVhZH0+XG4gICAgICAgICAgICAgICAgPENoZWNrIGNsYXNzTmFtZT1cImgtNCB3LTQgbXItMlwiIC8+XG4gICAgICAgICAgICAgICAgTWFyayBhbGwgcmVhZFxuICAgICAgICAgICAgICA8L0J1dHRvbj5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPERyb3Bkb3duTWVudVNlcGFyYXRvciAvPlxuICAgICAgICAgIFxuICAgICAgICAgIHtsb2FkaW5nID8gKFxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJweS04IHB4LTQgdGV4dC1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJhbmltYXRlLXNwaW4gcm91bmRlZC1mdWxsIGgtOCB3LTggYm9yZGVyLWItMiBib3JkZXItZ3JheS05MDAgbXgtYXV0byBtYi0yXCI+PC9kaXY+XG4gICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT1cInRleHQtc20gdGV4dC1tdXRlZC1mb3JlZ3JvdW5kXCI+TG9hZGluZyBub3RpZmljYXRpb25zLi4uPC9wPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgKSA6IGlzQXV0aEVycm9yID8gKFxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJweS04IHB4LTQgdGV4dC1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgPExvZ0luIGNsYXNzTmFtZT1cImgtOCB3LTggdGV4dC1vcmFuZ2UtNTAwIG14LWF1dG8gbWItMlwiIC8+XG4gICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT1cInRleHQtc20gdGV4dC1tdXRlZC1mb3JlZ3JvdW5kIG1iLTJcIj5BdXRoZW50aWNhdGlvbiByZXF1aXJlZDwvcD5cbiAgICAgICAgICAgICAgPEJ1dHRvbiB2YXJpYW50PVwib3V0bGluZVwiIHNpemU9XCJzbVwiIG9uQ2xpY2s9eygpID0+IHNpZ25JbigpfT5cbiAgICAgICAgICAgICAgICBTaWduIGluXG4gICAgICAgICAgICAgIDwvQnV0dG9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgKSA6IGVycm9yID8gKFxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJweS04IHB4LTQgdGV4dC1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgPEFsZXJ0Q2lyY2xlIGNsYXNzTmFtZT1cImgtOCB3LTggdGV4dC1yZWQtNTAwIG14LWF1dG8gbWItMlwiIC8+XG4gICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT1cInRleHQtc20gdGV4dC1yZWQtNTAwIG1iLTJcIj57ZXJyb3J9PC9wPlxuICAgICAgICAgICAgICA8QnV0dG9uIHZhcmlhbnQ9XCJvdXRsaW5lXCIgc2l6ZT1cInNtXCIgb25DbGljaz17bWFudWFsRmV0Y2h9PlxuICAgICAgICAgICAgICAgIFJldHJ5XG4gICAgICAgICAgICAgIDwvQnV0dG9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgKSA6IG5vdGlmaWNhdGlvbnMubGVuZ3RoID09PSAwICYmIG1hbnVhbEZldGNoQXR0ZW1wdGVkID8gKFxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJweS04IHB4LTQgdGV4dC1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgPHAgY2xhc3NOYW1lPVwidGV4dC1zbSB0ZXh0LW11dGVkLWZvcmVncm91bmRcIj5ObyBub3RpZmljYXRpb25zIGZvdW5kPC9wPlxuICAgICAgICAgICAgICA8QnV0dG9uIHZhcmlhbnQ9XCJvdXRsaW5lXCIgc2l6ZT1cInNtXCIgY2xhc3NOYW1lPVwibXQtMlwiIG9uQ2xpY2s9e21hbnVhbEZldGNofT5cbiAgICAgICAgICAgICAgICBSZWZyZXNoXG4gICAgICAgICAgICAgIDwvQnV0dG9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgKSA6IG5vdGlmaWNhdGlvbnMubGVuZ3RoID09PSAwID8gKFxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJweS04IHB4LTQgdGV4dC1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgPHAgY2xhc3NOYW1lPVwidGV4dC1zbSB0ZXh0LW11dGVkLWZvcmVncm91bmRcIj5ObyBub3RpZmljYXRpb25zPC9wPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIHtyZWNlbnROb3RpZmljYXRpb25zLm1hcCgobm90aWZpY2F0aW9uKSA9PiAoXG4gICAgICAgICAgICAgICAgPERyb3Bkb3duTWVudUl0ZW0ga2V5PXtub3RpZmljYXRpb24uaWR9IGNsYXNzTmFtZT1cInB4LTQgcHktMyBjdXJzb3ItZGVmYXVsdFwiPlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ3LWZ1bGxcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmbGV4IGl0ZW1zLXN0YXJ0IGp1c3RpZnktYmV0d2VlblwiPlxuICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibWF4LXctWzkwJV1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwidGV4dC1zbSBmb250LW1lZGl1bVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7bm90aWZpY2F0aW9uLnRpdGxlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICB7IW5vdGlmaWNhdGlvbi5pc1JlYWQgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxCYWRnZSB2YXJpYW50PVwic2Vjb25kYXJ5XCIgY2xhc3NOYW1lPVwibWwtMiBiZy1ibHVlLTUwMCB0ZXh0LXdoaXRlXCI+TmV3PC9CYWRnZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAge25vdGlmaWNhdGlvbi5zb3VyY2UgPT09ICdsZWFudGltZScgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxCYWRnZSB2YXJpYW50PVwib3V0bGluZVwiIGNsYXNzTmFtZT1cIm1sLTIgdGV4dC1bMTBweF0gcHktMCBweC0xLjUgYmctYW1iZXItNTAgdGV4dC1hbWJlci03MDAgYm9yZGVyLWFtYmVyLTIwMCBmbGV4IGl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEthbmJhbiBjbGFzc05hbWU9XCJtci0xIGgtMi41IHctMi41XCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFnaWxpdMOpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9CYWRnZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3NOYW1lPVwidGV4dC14cyB0ZXh0LW11dGVkLWZvcmVncm91bmRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAge2Zvcm1hdERpc3RhbmNlVG9Ob3cobmV3IERhdGUobm90aWZpY2F0aW9uLnRpbWVzdGFtcCksIHsgYWRkU3VmZml4OiB0cnVlIH0pfVxuICAgICAgICAgICAgICAgICAgICAgICAgICB7bm90aWZpY2F0aW9uLnNvdXJjZSAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwibWwtMSBvcGFjaXR5LTc1XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICDigKIge25vdGlmaWNhdGlvbi5zb3VyY2UgPT09ICdsZWFudGltZScgPyAnTGVhbnRpbWUnIDogbm90aWZpY2F0aW9uLnNvdXJjZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmbGV4IHNwYWNlLXgtMSBtbC0yXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7IW5vdGlmaWNhdGlvbi5pc1JlYWQgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICA8QnV0dG9uIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcmlhbnQ9XCJnaG9zdFwiIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemU9XCJzbVwiIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cImgtNiB3LTYgcC0wXCIgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gaGFuZGxlTWFya0FzUmVhZChub3RpZmljYXRpb24uaWQpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPENoZWNrIGNsYXNzTmFtZT1cImgtMy41IHctMy41XCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJzci1vbmx5XCI+TWFyayBhcyByZWFkPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L0J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICB7bm90aWZpY2F0aW9uLmxpbmsgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICA8TGluayBocmVmPXtub3RpZmljYXRpb24ubGlua30gdGFyZ2V0PVwiX2JsYW5rXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEJ1dHRvbiB2YXJpYW50PVwiZ2hvc3RcIiBzaXplPVwic21cIiBjbGFzc05hbWU9XCJoLTYgdy02IHAtMFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEV4dGVybmFsTGluayBjbGFzc05hbWU9XCJoLTMuNSB3LTMuNVwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJzci1vbmx5XCI+T3Blbjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9MaW5rPlxuICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxTYWZlSFRNTCBcbiAgICAgICAgICAgICAgICAgICAgICBodG1sPXtub3RpZmljYXRpb24ubWVzc2FnZX0gXG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPVwidGV4dC14cyBtdC0xIG5vdGlmaWNhdGlvbi1tZXNzYWdlXCIgXG4gICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L0Ryb3Bkb3duTWVudUl0ZW0+XG4gICAgICAgICAgICAgICkpfVxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9Ecm9wZG93bk1lbnVDb250ZW50PlxuICAgICAgPC9Ecm9wZG93bk1lbnU+XG4gICAgPC9kaXY+XG4gICk7XG59KTsiXSwibmFtZXMiOlsiUmVhY3QiLCJtZW1vIiwidXNlU3RhdGUiLCJ1c2VFZmZlY3QiLCJMaW5rIiwiQmVsbCIsIkNoZWNrIiwiRXh0ZXJuYWxMaW5rIiwiQWxlcnRDaXJjbGUiLCJMb2dJbiIsIkthbmJhbiIsIkJhZGdlIiwidXNlTm90aWZpY2F0aW9ucyIsIkJ1dHRvbiIsInVzZVNlc3Npb24iLCJzaWduSW4iLCJEcm9wZG93bk1lbnUiLCJEcm9wZG93bk1lbnVDb250ZW50IiwiRHJvcGRvd25NZW51SXRlbSIsIkRyb3Bkb3duTWVudVRyaWdnZXIiLCJEcm9wZG93bk1lbnVTZXBhcmF0b3IiLCJmb3JtYXREaXN0YW5jZVRvTm93IiwiU2FmZUhUTUwiLCJOb3RpZmljYXRpb25CYWRnZSIsImNsYXNzTmFtZSIsImRhdGEiLCJzZXNzaW9uIiwic3RhdHVzIiwibm90aWZpY2F0aW9ucyIsIm5vdGlmaWNhdGlvbkNvdW50IiwibWFya0FzUmVhZCIsIm1hcmtBbGxBc1JlYWQiLCJmZXRjaE5vdGlmaWNhdGlvbnMiLCJsb2FkaW5nIiwiZXJyb3IiLCJoYXNVbnJlYWQiLCJ1bnJlYWQiLCJpc09wZW4iLCJzZXRJc09wZW4iLCJtYW51YWxGZXRjaEF0dGVtcHRlZCIsInNldE1hbnVhbEZldGNoQXR0ZW1wdGVkIiwiY29uc29sZSIsImxvZyIsImxlbmd0aCIsIm1hbnVhbEZldGNoIiwicmVzcG9uc2UiLCJmZXRjaCIsImNyZWRlbnRpYWxzIiwib2siLCJ0ZXh0IiwianNvbiIsImVyciIsImhhbmRsZU1hcmtBc1JlYWQiLCJub3RpZmljYXRpb25JZCIsImhhbmRsZU1hcmtBbGxBc1JlYWQiLCJyZWNlbnROb3RpZmljYXRpb25zIiwic2xpY2UiLCJoYW5kbGVPcGVuQ2hhbmdlIiwib3BlbiIsImlzQXV0aEVycm9yIiwiaW5jbHVkZXMiLCJkaXYiLCJvbk9wZW5DaGFuZ2UiLCJhc0NoaWxkIiwidmFyaWFudCIsInNpemUiLCJzcGFuIiwiYWxpZ24iLCJoMyIsIm9uQ2xpY2siLCJwIiwibWFwIiwibm90aWZpY2F0aW9uIiwidGl0bGUiLCJpc1JlYWQiLCJzb3VyY2UiLCJEYXRlIiwidGltZXN0YW1wIiwiYWRkU3VmZml4IiwiaWQiLCJsaW5rIiwiaHJlZiIsInRhcmdldCIsImh0bWwiLCJtZXNzYWdlIl0sImlnbm9yZUxpc3QiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./components/notification-badge.tsx\n");
/***/ }),
/***/ "(ssr)/./components/parole.tsx":
/*!*******************************!*\
!*** ./components/parole.tsx ***!
\*******************************/
/***/ ((__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 */ Parole: () => (/* binding */ Parole)\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/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/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_card__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/components/ui/card */ \"(ssr)/./components/ui/card.tsx\");\n/* harmony import */ var _components_ui_button__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/components/ui/button */ \"(ssr)/./components/ui/button.tsx\");\n/* harmony import */ var _barrel_optimize_names_MessageSquare_RefreshCw_lucide_react__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! __barrel_optimize__?names=MessageSquare,RefreshCw!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/message-square.js\");\n/* harmony import */ var _barrel_optimize_names_MessageSquare_RefreshCw_lucide_react__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! __barrel_optimize__?names=MessageSquare,RefreshCw!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/refresh-cw.js\");\n/* harmony import */ var next_navigation__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! next/navigation */ \"(ssr)/./node_modules/next/dist/api/navigation.js\");\n/* harmony import */ var _components_ui_avatar__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/components/ui/avatar */ \"(ssr)/./components/ui/avatar.tsx\");\n/* harmony import */ var next_auth_react__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! next-auth/react */ \"(ssr)/./node_modules/next-auth/react/index.js\");\n/* harmony import */ var next_auth_react__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(next_auth_react__WEBPACK_IMPORTED_MODULE_6__);\n/* __next_internal_client_entry_do_not_use__ Parole auto */ \n\n\n\n\n\n\n\nfunction Parole() {\n const [messages, setMessages] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)([]);\n const [error, setError] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const [loading, setLoading] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(true);\n const [refreshing, setRefreshing] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n const router = (0,next_navigation__WEBPACK_IMPORTED_MODULE_4__.useRouter)();\n const { data: session, status } = (0,next_auth_react__WEBPACK_IMPORTED_MODULE_6__.useSession)();\n const fetchMessages = async (isRefresh = false)=>{\n try {\n if (isRefresh) {\n setRefreshing(true);\n }\n const response = await fetch('/api/rocket-chat/messages' + (isRefresh ? '?refresh=true' : ''), {\n cache: 'no-store',\n next: {\n revalidate: 0\n }\n });\n if (!response.ok) {\n const errorData = await response.json();\n throw new Error(errorData.error || 'Failed to fetch messages');\n }\n const data = await response.json();\n if (Array.isArray(data.messages)) {\n setMessages(data.messages);\n } else {\n console.warn('Unexpected data format:', data);\n setMessages([]);\n }\n setError(null);\n } catch (err) {\n console.error('Error fetching messages:', err);\n const errorMessage = err instanceof Error ? err.message : 'Failed to fetch messages';\n setError(errorMessage);\n } finally{\n setLoading(false);\n setRefreshing(false);\n }\n };\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)({\n \"Parole.useEffect\": ()=>{\n if (status === 'authenticated') {\n fetchMessages();\n // Set up polling every 30 seconds\n const interval = setInterval({\n \"Parole.useEffect.interval\": ()=>fetchMessages()\n }[\"Parole.useEffect.interval\"], 30000);\n return ({\n \"Parole.useEffect\": ()=>clearInterval(interval)\n })[\"Parole.useEffect\"];\n }\n }\n }[\"Parole.useEffect\"], [\n status\n ]);\n if (status === 'loading') {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_card__WEBPACK_IMPORTED_MODULE_2__.Card, {\n className: \"transition-transform duration-500 ease-in-out transform hover:scale-105 bg-white/95 backdrop-blur-sm border-0 shadow-lg h-full\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_card__WEBPACK_IMPORTED_MODULE_2__.CardHeader, {\n className: \"flex flex-row items-center justify-between pb-2 border-b border-gray-100\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_card__WEBPACK_IMPORTED_MODULE_2__.CardTitle, {\n className: \"text-lg font-semibold text-gray-800 flex items-center gap-2\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_MessageSquare_RefreshCw_lucide_react__WEBPACK_IMPORTED_MODULE_7__[\"default\"], {\n className: \"h-5 w-5 text-gray-600\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 93,\n columnNumber: 13\n }, this),\n \"Parole\"\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 92,\n columnNumber: 11\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 91,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_card__WEBPACK_IMPORTED_MODULE_2__.CardContent, {\n className: \"p-6\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n className: \"text-center text-gray-500\",\n children: \"Loading...\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 98,\n columnNumber: 11\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 97,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 90,\n columnNumber: 7\n }, this);\n }\n if (status === 'unauthenticated' || error && error.includes('Session expired')) {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_card__WEBPACK_IMPORTED_MODULE_2__.Card, {\n className: \"transition-transform duration-500 ease-in-out transform hover:scale-105 bg-white/95 backdrop-blur-sm border-0 shadow-lg h-full\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_card__WEBPACK_IMPORTED_MODULE_2__.CardHeader, {\n className: \"flex flex-row items-center justify-between pb-2 border-b border-gray-100\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_card__WEBPACK_IMPORTED_MODULE_2__.CardTitle, {\n className: \"text-lg font-semibold text-gray-800 flex items-center gap-2\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_MessageSquare_RefreshCw_lucide_react__WEBPACK_IMPORTED_MODULE_7__[\"default\"], {\n className: \"h-5 w-5 text-gray-600\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 109,\n columnNumber: 13\n }, this),\n \"Parole\"\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 108,\n columnNumber: 11\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 107,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_card__WEBPACK_IMPORTED_MODULE_2__.CardContent, {\n className: \"p-6\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"text-center\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n className: \"text-gray-500 mb-4\",\n children: \"Please sign in to view messages\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 115,\n columnNumber: 13\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_button__WEBPACK_IMPORTED_MODULE_3__.Button, {\n onClick: (e)=>{\n e.stopPropagation();\n (0,next_auth_react__WEBPACK_IMPORTED_MODULE_6__.signIn)('keycloak');\n },\n variant: \"default\",\n className: \"bg-blue-600 hover:bg-blue-700 text-white\",\n children: \"Sign In\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 116,\n columnNumber: 13\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 114,\n columnNumber: 11\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 113,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 106,\n columnNumber: 7\n }, this);\n }\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_card__WEBPACK_IMPORTED_MODULE_2__.Card, {\n className: \"transition-transform duration-500 ease-in-out transform hover:scale-105 bg-white/95 backdrop-blur-sm border-0 shadow-lg cursor-pointer w-full\",\n onClick: ()=>router.push('/parole'),\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_card__WEBPACK_IMPORTED_MODULE_2__.CardHeader, {\n className: \"flex flex-row items-center justify-between pb-2 border-b border-gray-100\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_card__WEBPACK_IMPORTED_MODULE_2__.CardTitle, {\n className: \"text-lg font-semibold text-gray-800 flex items-center gap-2\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_MessageSquare_RefreshCw_lucide_react__WEBPACK_IMPORTED_MODULE_7__[\"default\"], {\n className: \"h-5 w-5 text-gray-600\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 139,\n columnNumber: 11\n }, this),\n \"Parole\"\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 138,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_button__WEBPACK_IMPORTED_MODULE_3__.Button, {\n variant: \"ghost\",\n size: \"icon\",\n onClick: (e)=>{\n e.stopPropagation();\n fetchMessages(true);\n },\n disabled: refreshing,\n className: `${refreshing ? 'animate-spin' : ''} text-gray-600 hover:text-gray-900`,\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_MessageSquare_RefreshCw_lucide_react__WEBPACK_IMPORTED_MODULE_8__[\"default\"], {\n className: \"h-4 w-4\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 152,\n columnNumber: 11\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 142,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 137,\n columnNumber: 7\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_card__WEBPACK_IMPORTED_MODULE_2__.CardContent, {\n className: \"p-4\",\n children: [\n loading && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n className: \"text-center text-gray-500\",\n children: \"Loading messages...\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 156,\n columnNumber: 21\n }, this),\n error && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"text-center\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n className: \"text-red-500\",\n children: [\n \"Error: \",\n error\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 159,\n columnNumber: 13\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_button__WEBPACK_IMPORTED_MODULE_3__.Button, {\n variant: \"outline\",\n onClick: (e)=>{\n e.stopPropagation();\n fetchMessages(true);\n },\n className: \"mt-2\",\n children: \"Try Again\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 160,\n columnNumber: 13\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 158,\n columnNumber: 11\n }, this),\n !loading && !error && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"space-y-4 max-h-[400px] overflow-y-auto pr-1 scrollbar-thin scrollbar-thumb-gray-200 scrollbar-track-transparent\",\n children: messages.length === 0 ? /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n className: \"text-center text-gray-500\",\n children: \"No messages found\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 175,\n columnNumber: 15\n }, this) : messages.map((message)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex items-start space-x-3 hover:bg-gray-50/50 p-3 rounded-lg transition-colors\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_avatar__WEBPACK_IMPORTED_MODULE_5__.Avatar, {\n className: \"h-8 w-8\",\n style: {\n backgroundColor: message.sender.color\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_avatar__WEBPACK_IMPORTED_MODULE_5__.AvatarImage, {\n src: `https://ui-avatars.com/api/?name=${encodeURIComponent(message.sender.name)}&background=random`\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 180,\n columnNumber: 21\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_avatar__WEBPACK_IMPORTED_MODULE_5__.AvatarFallback, {\n children: message.sender.initials\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 181,\n columnNumber: 21\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 179,\n columnNumber: 19\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex-1 min-w-0\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex items-baseline justify-between space-x-2\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n className: \"text-sm font-semibold text-gray-800 truncate max-w-[70%]\",\n children: message.sender.name\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 185,\n columnNumber: 23\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"text-xs font-medium text-gray-500 flex-shrink-0\",\n children: message.timestamp\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 186,\n columnNumber: 23\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 184,\n columnNumber: 21\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n className: \"text-sm text-gray-600 whitespace-pre-wrap line-clamp-2 mt-1\",\n children: message.text\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 188,\n columnNumber: 21\n }, this),\n message.roomName && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex items-center mt-2\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: `inline-flex items-center px-2 py-1 rounded-md text-xs font-medium ${message.room.isChannel ? 'bg-blue-50 text-blue-700' : message.room.isPrivateGroup ? 'bg-purple-50 text-purple-700' : 'bg-green-50 text-green-700'}`,\n children: [\n message.room.isChannel ? '#' : message.room.isPrivateGroup ? '🔒' : '💬',\n \" \",\n message.roomName\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 191,\n columnNumber: 25\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 190,\n columnNumber: 23\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 183,\n columnNumber: 19\n }, this)\n ]\n }, message.id, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 178,\n columnNumber: 17\n }, this))\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 173,\n columnNumber: 11\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 155,\n columnNumber: 7\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/parole.tsx\",\n lineNumber: 133,\n columnNumber: 5\n }, this);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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UUFBUTs7Ozs7Ozs7Ozs7Ozs7Ozs7OzsrQkFsQjVGNUIsUUFBUWdDLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUErQnBDIiwic291cmNlcyI6WyIvVXNlcnMvYWxtYS9Eb2N1bWVudHMvTmVhaE5ldy9jb21wb25lbnRzL3Bhcm9sZS50c3giXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2UgY2xpZW50XCI7XG5cbmltcG9ydCB7IHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7IENhcmQsIENhcmRDb250ZW50LCBDYXJkSGVhZGVyLCBDYXJkVGl0bGUgfSBmcm9tIFwiQC9jb21wb25lbnRzL3VpL2NhcmRcIjtcbmltcG9ydCB7IEJ1dHRvbiB9IGZyb20gXCJAL2NvbXBvbmVudHMvdWkvYnV0dG9uXCI7XG5pbXBvcnQgeyBSZWZyZXNoQ3csIE1lc3NhZ2VTcXVhcmUgfSBmcm9tIFwibHVjaWRlLXJlYWN0XCI7XG5pbXBvcnQgeyB1c2VSb3V0ZXIgfSBmcm9tIFwibmV4dC9uYXZpZ2F0aW9uXCI7XG5pbXBvcnQgeyBBdmF0YXIsIEF2YXRhckZhbGxiYWNrLCBBdmF0YXJJbWFnZSB9IGZyb20gXCJAL2NvbXBvbmVudHMvdWkvYXZhdGFyXCI7XG5pbXBvcnQgeyBzaWduSW4sIHVzZVNlc3Npb24gfSBmcm9tIFwibmV4dC1hdXRoL3JlYWN0XCI7XG5cbmludGVyZmFjZSBNZXNzYWdlIHtcbiAgaWQ6IHN0cmluZztcbiAgdGV4dDogc3RyaW5nO1xuICB0aW1lc3RhbXA6IHN0cmluZztcbiAgcmF3VGltZXN0YW1wOiBzdHJpbmc7XG4gIHJvb21OYW1lOiBzdHJpbmc7XG4gIHJvb21UeXBlOiBzdHJpbmc7XG4gIHNlbmRlcjoge1xuICAgIF9pZDogc3RyaW5nO1xuICAgIHVzZXJuYW1lOiBzdHJpbmc7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIGluaXRpYWxzOiBzdHJpbmc7XG4gICAgY29sb3I6IHN0cmluZztcbiAgfTtcbiAgaXNPd25NZXNzYWdlOiBib29sZWFuO1xuICByb29tOiB7XG4gICAgaWQ6IHN0cmluZztcbiAgICB0eXBlOiBzdHJpbmc7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIGlzQ2hhbm5lbDogYm9vbGVhbjtcbiAgICBpc1ByaXZhdGVHcm91cDogYm9vbGVhbjtcbiAgICBpc0RpcmVjdDogYm9vbGVhbjtcbiAgICBsaW5rOiBzdHJpbmc7XG4gIH07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBQYXJvbGUoKSB7XG4gIGNvbnN0IFttZXNzYWdlcywgc2V0TWVzc2FnZXNdID0gdXNlU3RhdGU8TWVzc2FnZVtdPihbXSk7XG4gIGNvbnN0IFtlcnJvciwgc2V0RXJyb3JdID0gdXNlU3RhdGU8c3RyaW5nIHwgbnVsbD4obnVsbCk7XG4gIGNvbnN0IFtsb2FkaW5nLCBzZXRMb2FkaW5nXSA9IHVzZVN0YXRlKHRydWUpO1xuICBjb25zdCBbcmVmcmVzaGluZywgc2V0UmVmcmVzaGluZ10gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IHJvdXRlciA9IHVzZVJvdXRlcigpO1xuICBjb25zdCB7IGRhdGE6IHNlc3Npb24sIHN0YXR1cyB9ID0gdXNlU2Vzc2lvbigpO1xuXG4gIGNvbnN0IGZldGNoTWVzc2FnZXMgPSBhc3luYyAoaXNSZWZyZXNoID0gZmFsc2UpID0+IHtcbiAgICB0cnkge1xuICAgICAgaWYgKGlzUmVmcmVzaCkge1xuICAgICAgICBzZXRSZWZyZXNoaW5nKHRydWUpO1xuICAgICAgfVxuXG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoKCcvYXBpL3JvY2tldC1jaGF0L21lc3NhZ2VzJyArIChpc1JlZnJlc2ggPyAnP3JlZnJlc2g9dHJ1ZScgOiAnJyksIHtcbiAgICAgICAgY2FjaGU6ICduby1zdG9yZScsXG4gICAgICAgIG5leHQ6IHsgcmV2YWxpZGF0ZTogMCB9LFxuICAgICAgfSk7XG5cbiAgICAgIGlmICghcmVzcG9uc2Uub2spIHtcbiAgICAgICAgY29uc3QgZXJyb3JEYXRhID0gYXdhaXQgcmVzcG9uc2UuanNvbigpO1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoZXJyb3JEYXRhLmVycm9yIHx8ICdGYWlsZWQgdG8gZmV0Y2ggbWVzc2FnZXMnKTtcbiAgICAgIH1cblxuICAgICAgY29uc3QgZGF0YSA9IGF3YWl0IHJlc3BvbnNlLmpzb24oKTtcbiAgICAgIGlmIChBcnJheS5pc0FycmF5KGRhdGEubWVzc2FnZXMpKSB7XG4gICAgICAgIHNldE1lc3NhZ2VzKGRhdGEubWVzc2FnZXMpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc29sZS53YXJuKCdVbmV4cGVjdGVkIGRhdGEgZm9ybWF0OicsIGRhdGEpO1xuICAgICAgICBzZXRNZXNzYWdlcyhbXSk7XG4gICAgICB9XG4gICAgICBzZXRFcnJvcihudWxsKTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGZldGNoaW5nIG1lc3NhZ2VzOicsIGVycik7XG4gICAgICBjb25zdCBlcnJvck1lc3NhZ2UgPSBlcnIgaW5zdGFuY2VvZiBFcnJvciA/IGVyci5tZXNzYWdlIDogJ0ZhaWxlZCB0byBmZXRjaCBtZXNzYWdlcyc7XG4gICAgICBzZXRFcnJvcihlcnJvck1lc3NhZ2UpO1xuICAgIH0gZmluYWxseSB7XG4gICAgICBzZXRMb2FkaW5nKGZhbHNlKTtcbiAgICAgIHNldFJlZnJlc2hpbmcoZmFsc2UpO1xuICAgIH1cbiAgfTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChzdGF0dXMgPT09ICdhdXRoZW50aWNhdGVkJykge1xuICAgICAgZmV0Y2hNZXNzYWdlcygpO1xuICAgICAgLy8gU2V0IHVwIHBvbGxpbmcgZXZlcnkgMzAgc2Vjb25kc1xuICAgICAgY29uc3QgaW50ZXJ2YWwgPSBzZXRJbnRlcnZhbCgoKSA9PiBmZXRjaE1lc3NhZ2VzKCksIDMwMDAwKTtcbiAgICAgIHJldHVybiAoKSA9PiBjbGVhckludGVydmFsKGludGVydmFsKTtcbiAgICB9XG4gIH0sIFtzdGF0dXNdKTtcblxuICBpZiAoc3RhdHVzID09PSAnbG9hZGluZycpIHtcbiAgICByZXR1cm4gKFxuICAgICAgPENhcmQgY2xhc3NOYW1lPVwidHJhbnNpdGlvbi10cmFuc2Zvcm0gZHVyYXRpb24tNTAwIGVhc2UtaW4tb3V0IHRyYW5zZm9ybSBob3ZlcjpzY2FsZS0xMDUgYmctd2hpdGUvOTUgYmFja2Ryb3AtYmx1ci1zbSBib3JkZXItMCBzaGFkb3ctbGcgaC1mdWxsXCI+XG4gICAgICAgIDxDYXJkSGVhZGVyIGNsYXNzTmFtZT1cImZsZXggZmxleC1yb3cgaXRlbXMtY2VudGVyIGp1c3RpZnktYmV0d2VlbiBwYi0yIGJvcmRlci1iIGJvcmRlci1ncmF5LTEwMFwiPlxuICAgICAgICAgIDxDYXJkVGl0bGUgY2xhc3NOYW1lPVwidGV4dC1sZyBmb250LXNlbWlib2xkIHRleHQtZ3JheS04MDAgZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTJcIj5cbiAgICAgICAgICAgIDxNZXNzYWdlU3F1YXJlIGNsYXNzTmFtZT1cImgtNSB3LTUgdGV4dC1ncmF5LTYwMFwiIC8+XG4gICAgICAgICAgICBQYXJvbGVcbiAgICAgICAgICA8L0NhcmRUaXRsZT5cbiAgICAgICAgPC9DYXJkSGVhZGVyPlxuICAgICAgICA8Q2FyZENvbnRlbnQgY2xhc3NOYW1lPVwicC02XCI+XG4gICAgICAgICAgPHAgY2xhc3NOYW1lPVwidGV4dC1jZW50ZXIgdGV4dC1ncmF5LTUwMFwiPkxvYWRpbmcuLi48L3A+XG4gICAgICAgIDwvQ2FyZENvbnRlbnQ+XG4gICAgICA8L0NhcmQ+XG4gICAgKTtcbiAgfVxuXG4gIGlmIChzdGF0dXMgPT09ICd1bmF1dGhlbnRpY2F0ZWQnIHx8IChlcnJvciAmJiBlcnJvci5pbmNsdWRlcygnU2Vzc2lvbiBleHBpcmVkJykpKSB7XG4gICAgcmV0dXJuIChcbiAgICAgIDxDYXJkIGNsYXNzTmFtZT1cInRyYW5zaXRpb24tdHJhbnNmb3JtIGR1cmF0aW9uLTUwMCBlYXNlLWluLW91dCB0cmFuc2Zvcm0gaG92ZXI6c2NhbGUtMTA1IGJnLXdoaXRlLzk1IGJhY2tkcm9wLWJsdXItc20gYm9yZGVyLTAgc2hhZG93LWxnIGgtZnVsbFwiPlxuICAgICAgICA8Q2FyZEhlYWRlciBjbGFzc05hbWU9XCJmbGV4IGZsZXgtcm93IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW4gcGItMiBib3JkZXItYiBib3JkZXItZ3JheS0xMDBcIj5cbiAgICAgICAgICA8Q2FyZFRpdGxlIGNsYXNzTmFtZT1cInRleHQtbGcgZm9udC1zZW1pYm9sZCB0ZXh0LWdyYXktODAwIGZsZXggaXRlbXMtY2VudGVyIGdhcC0yXCI+XG4gICAgICAgICAgICA8TWVzc2FnZVNxdWFyZSBjbGFzc05hbWU9XCJoLTUgdy01IHRleHQtZ3JheS02MDBcIiAvPlxuICAgICAgICAgICAgUGFyb2xlXG4gICAgICAgICAgPC9DYXJkVGl0bGU+XG4gICAgICAgIDwvQ2FyZEhlYWRlcj5cbiAgICAgICAgPENhcmRDb250ZW50IGNsYXNzTmFtZT1cInAtNlwiPlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwidGV4dC1jZW50ZXJcIj5cbiAgICAgICAgICAgIDxwIGNsYXNzTmFtZT1cInRleHQtZ3JheS01MDAgbWItNFwiPlBsZWFzZSBzaWduIGluIHRvIHZpZXcgbWVzc2FnZXM8L3A+XG4gICAgICAgICAgICA8QnV0dG9uIFxuICAgICAgICAgICAgICBvbkNsaWNrPXsoZSkgPT4ge1xuICAgICAgICAgICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICAgICAgc2lnbkluKCdrZXljbG9haycpO1xuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICB2YXJpYW50PVwiZGVmYXVsdFwiXG4gICAgICAgICAgICAgIGNsYXNzTmFtZT1cImJnLWJsdWUtNjAwIGhvdmVyOmJnLWJsdWUtNzAwIHRleHQtd2hpdGVcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICBTaWduIEluXG4gICAgICAgICAgICA8L0J1dHRvbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9DYXJkQ29udGVudD5cbiAgICAgIDwvQ2FyZD5cbiAgICApO1xuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8Q2FyZCBcbiAgICAgIGNsYXNzTmFtZT1cInRyYW5zaXRpb24tdHJhbnNmb3JtIGR1cmF0aW9uLTUwMCBlYXNlLWluLW91dCB0cmFuc2Zvcm0gaG92ZXI6c2NhbGUtMTA1IGJnLXdoaXRlLzk1IGJhY2tkcm9wLWJsdXItc20gYm9yZGVyLTAgc2hhZG93LWxnIGN1cnNvci1wb2ludGVyIHctZnVsbFwiIFxuICAgICAgb25DbGljaz17KCkgPT4gcm91dGVyLnB1c2goJy9wYXJvbGUnKX1cbiAgICA+XG4gICAgICA8Q2FyZEhlYWRlciBjbGFzc05hbWU9XCJmbGV4IGZsZXgtcm93IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW4gcGItMiBib3JkZXItYiBib3JkZXItZ3JheS0xMDBcIj5cbiAgICAgICAgPENhcmRUaXRsZSBjbGFzc05hbWU9XCJ0ZXh0LWxnIGZvbnQtc2VtaWJvbGQgdGV4dC1ncmF5LTgwMCBmbGV4IGl0ZW1zLWNlbnRlciBnYXAtMlwiPlxuICAgICAgICAgIDxNZXNzYWdlU3F1YXJlIGNsYXNzTmFtZT1cImgtNSB3LTUgdGV4dC1ncmF5LTYwMFwiIC8+XG4gICAgICAgICAgUGFyb2xlXG4gICAgICAgIDwvQ2FyZFRpdGxlPlxuICAgICAgICA8QnV0dG9uIFxuICAgICAgICAgIHZhcmlhbnQ9XCJnaG9zdFwiIFxuICAgICAgICAgIHNpemU9XCJpY29uXCJcbiAgICAgICAgICBvbkNsaWNrPXsoZSkgPT4ge1xuICAgICAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgIGZldGNoTWVzc2FnZXModHJ1ZSk7XG4gICAgICAgICAgfX1cbiAgICAgICAgICBkaXNhYmxlZD17cmVmcmVzaGluZ31cbiAgICAgICAgICBjbGFzc05hbWU9e2Ake3JlZnJlc2hpbmcgPyAnYW5pbWF0ZS1zcGluJyA6ICcnfSB0ZXh0LWdyYXktNjAwIGhvdmVyOnRleHQtZ3JheS05MDBgfVxuICAgICAgICA+XG4gICAgICAgICAgPFJlZnJlc2hDdyBjbGFzc05hbWU9XCJoLTQgdy00XCIgLz5cbiAgICAgICAgPC9CdXR0b24+XG4gICAgICA8L0NhcmRIZWFkZXI+XG4gICAgICA8Q2FyZENvbnRlbnQgY2xhc3NOYW1lPVwicC00XCI+XG4gICAgICAgIHtsb2FkaW5nICYmIDxwIGNsYXNzTmFtZT1cInRleHQtY2VudGVyIHRleHQtZ3JheS01MDBcIj5Mb2FkaW5nIG1lc3NhZ2VzLi4uPC9wPn1cbiAgICAgICAge2Vycm9yICYmIChcbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInRleHQtY2VudGVyXCI+XG4gICAgICAgICAgICA8cCBjbGFzc05hbWU9XCJ0ZXh0LXJlZC01MDBcIj5FcnJvcjoge2Vycm9yfTwvcD5cbiAgICAgICAgICAgIDxCdXR0b24gXG4gICAgICAgICAgICAgIHZhcmlhbnQ9XCJvdXRsaW5lXCIgXG4gICAgICAgICAgICAgIG9uQ2xpY2s9eyhlKSA9PiB7XG4gICAgICAgICAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgICAgICBmZXRjaE1lc3NhZ2VzKHRydWUpO1xuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICBjbGFzc05hbWU9XCJtdC0yXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgVHJ5IEFnYWluXG4gICAgICAgICAgICA8L0J1dHRvbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgKX1cbiAgICAgICAgeyFsb2FkaW5nICYmICFlcnJvciAmJiAoXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJzcGFjZS15LTQgbWF4LWgtWzQwMHB4XSBvdmVyZmxvdy15LWF1dG8gcHItMSBzY3JvbGxiYXItdGhpbiBzY3JvbGxiYXItdGh1bWItZ3JheS0yMDAgc2Nyb2xsYmFyLXRyYWNrLXRyYW5zcGFyZW50XCI+XG4gICAgICAgICAgICB7bWVzc2FnZXMubGVuZ3RoID09PSAwID8gKFxuICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9XCJ0ZXh0LWNlbnRlciB0ZXh0LWdyYXktNTAwXCI+Tm8gbWVzc2FnZXMgZm91bmQ8L3A+XG4gICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICBtZXNzYWdlcy5tYXAoKG1lc3NhZ2UpID0+IChcbiAgICAgICAgICAgICAgICA8ZGl2IGtleT17bWVzc2FnZS5pZH0gY2xhc3NOYW1lPVwiZmxleCBpdGVtcy1zdGFydCBzcGFjZS14LTMgaG92ZXI6YmctZ3JheS01MC81MCBwLTMgcm91bmRlZC1sZyB0cmFuc2l0aW9uLWNvbG9yc1wiPlxuICAgICAgICAgICAgICAgICAgPEF2YXRhciBjbGFzc05hbWU9XCJoLTggdy04XCIgc3R5bGU9e3sgYmFja2dyb3VuZENvbG9yOiBtZXNzYWdlLnNlbmRlci5jb2xvciB9fT5cbiAgICAgICAgICAgICAgICAgICAgPEF2YXRhckltYWdlIHNyYz17YGh0dHBzOi8vdWktYXZhdGFycy5jb20vYXBpLz9uYW1lPSR7ZW5jb2RlVVJJQ29tcG9uZW50KG1lc3NhZ2Uuc2VuZGVyLm5hbWUpfSZiYWNrZ3JvdW5kPXJhbmRvbWB9IC8+XG4gICAgICAgICAgICAgICAgICAgIDxBdmF0YXJGYWxsYmFjaz57bWVzc2FnZS5zZW5kZXIuaW5pdGlhbHN9PC9BdmF0YXJGYWxsYmFjaz5cbiAgICAgICAgICAgICAgICAgIDwvQXZhdGFyPlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmbGV4LTEgbWluLXctMFwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZsZXggaXRlbXMtYmFzZWxpbmUganVzdGlmeS1iZXR3ZWVuIHNwYWNlLXgtMlwiPlxuICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT1cInRleHQtc20gZm9udC1zZW1pYm9sZCB0ZXh0LWdyYXktODAwIHRydW5jYXRlIG1heC13LVs3MCVdXCI+e21lc3NhZ2Uuc2VuZGVyLm5hbWV9PC9wPlxuICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cInRleHQteHMgZm9udC1tZWRpdW0gdGV4dC1ncmF5LTUwMCBmbGV4LXNocmluay0wXCI+e21lc3NhZ2UudGltZXN0YW1wfTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT1cInRleHQtc20gdGV4dC1ncmF5LTYwMCB3aGl0ZXNwYWNlLXByZS13cmFwIGxpbmUtY2xhbXAtMiBtdC0xXCI+e21lc3NhZ2UudGV4dH08L3A+XG4gICAgICAgICAgICAgICAgICAgIHttZXNzYWdlLnJvb21OYW1lICYmIChcbiAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZsZXggaXRlbXMtY2VudGVyIG10LTJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT17YGlubGluZS1mbGV4IGl0ZW1zLWNlbnRlciBweC0yIHB5LTEgcm91bmRlZC1tZCB0ZXh0LXhzIGZvbnQtbWVkaXVtICR7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIG1lc3NhZ2Uucm9vbS5pc0NoYW5uZWwgPyAnYmctYmx1ZS01MCB0ZXh0LWJsdWUtNzAwJyA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgIG1lc3NhZ2Uucm9vbS5pc1ByaXZhdGVHcm91cCA/ICdiZy1wdXJwbGUtNTAgdGV4dC1wdXJwbGUtNzAwJyA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICdiZy1ncmVlbi01MCB0ZXh0LWdyZWVuLTcwMCdcbiAgICAgICAgICAgICAgICAgICAgICAgIH1gfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAge21lc3NhZ2Uucm9vbS5pc0NoYW5uZWwgPyAnIycgOiBtZXNzYWdlLnJvb20uaXNQcml2YXRlR3JvdXAgPyAn8J+UkicgOiAn8J+SrCd9IHttZXNzYWdlLnJvb21OYW1lfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICkpXG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICApfVxuICAgICAgPC9DYXJkQ29udGVudD5cbiAgICA8L0NhcmQ+XG4gICk7XG59ICJdLCJuYW1lcyI6WyJ1c2VFZmZlY3QiLCJ1c2VTdGF0ZSIsIkNhcmQiLCJDYXJkQ29udGVudCIsIkNhcmRIZWFkZXIiLCJDYXJkVGl0bGUiLCJCdXR0b24iLCJSZWZyZXNoQ3ciLCJNZXNzYWdlU3F1YXJlIiwidXNlUm91dGVyIiwiQXZhdGFyIiwiQXZhdGFyRmFsbGJhY2siLCJBdmF0YXJJbWFnZSIsInNpZ25JbiIsInVzZVNlc3Npb24iLCJQYXJvbGUiLCJtZXNzYWdlcyIsInNldE1lc3NhZ2VzIiwiZXJyb3IiLCJzZXRFcnJvciIsImxvYWRpbmciLCJzZXRMb2FkaW5nIiwicmVmcmVzaGluZyIsInNldFJlZnJlc2hpbmciLCJyb3V0ZXIiLCJkYXRhIiwic2Vzc2lvbiIsInN0YXR1cyIsImZldGNoTWVzc2FnZXMiLCJpc1JlZnJlc2giLCJyZXNwb25zZSIsImZldGNoIiwiY2FjaGUiLCJuZXh0IiwicmV2YWxpZGF0ZSIsIm9rIiwiZXJyb3JEYXRhIiwianNvbiIsIkVycm9yIiwiQXJyYXkiLCJpc0FycmF5IiwiY29uc29sZSIsIndhcm4iLCJlcnIiLCJlcnJvck1lc3NhZ2UiLCJtZXNzYWdlIiwiaW50ZXJ2YWwiLCJzZXRJbnRlcnZhbCIsImNsZWFySW50ZXJ2YWwiLCJjbGFzc05hbWUiLCJwIiwiaW5jbHVkZXMiLCJkaXYiLCJvbkNsaWNrIiwiZSIsInN0b3BQcm9wYWdhdGlvbiIsInZhcmlhbnQiLCJwdXNoIiwic2l6ZSIsImRpc2FibGVkIiwibGVuZ3RoIiwibWFwIiwic3R5bGUiLCJiYWNrZ3JvdW5kQ29sb3IiLCJzZW5kZXIiLCJjb2xvciIsInNyYyIsImVuY29kZVVSSUNvbXBvbmVudCIsIm5hbWUiLCJpbml0aWFscyIsInNwYW4iLCJ0aW1lc3RhbXAiLCJ0ZXh0Iiwicm9vbU5hbWUiLCJyb29tIiwiaXNDaGFubmVsIiwiaXNQcml2YXRlR3JvdXAiLCJpZCJdLCJpZ25vcmVMaXN0IjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./components/parole.tsx\n");
/***/ }),
/***/ "(ssr)/./components/providers.tsx":
/*!**********************************!*\
!*** ./components/providers.tsx ***!
\**********************************/
/***/ ((__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 */ Providers: () => (/* binding */ Providers)\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/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 next_auth_react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! next-auth/react */ \"(ssr)/./node_modules/next-auth/react/index.js\");\n/* harmony import */ var next_auth_react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(next_auth_react__WEBPACK_IMPORTED_MODULE_1__);\n/* __next_internal_client_entry_do_not_use__ Providers auto */ \n\nfunction Providers({ children }) {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(next_auth_react__WEBPACK_IMPORTED_MODULE_1__.SessionProvider, {\n children: children\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/providers.tsx\",\n lineNumber: 11,\n columnNumber: 5\n }, this);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9jb21wb25lbnRzL3Byb3ZpZGVycy50c3giLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBRWtEO0FBTTNDLFNBQVNDLFVBQVUsRUFBRUMsUUFBUSxFQUFrQjtJQUNwRCxxQkFDRSw4REFBQ0YsNERBQWVBO2tCQUNiRTs7Ozs7O0FBR1AiLCJzb3VyY2VzIjpbIi9Vc2Vycy9hbG1hL0RvY3VtZW50cy9OZWFoTmV3L2NvbXBvbmVudHMvcHJvdmlkZXJzLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBjbGllbnRcIjtcblxuaW1wb3J0IHsgU2Vzc2lvblByb3ZpZGVyIH0gZnJvbSBcIm5leHQtYXV0aC9yZWFjdFwiO1xuXG5pbnRlcmZhY2UgUHJvdmlkZXJzUHJvcHMge1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gUHJvdmlkZXJzKHsgY2hpbGRyZW4gfTogUHJvdmlkZXJzUHJvcHMpIHtcbiAgcmV0dXJuIChcbiAgICA8U2Vzc2lvblByb3ZpZGVyPlxuICAgICAge2NoaWxkcmVufVxuICAgIDwvU2Vzc2lvblByb3ZpZGVyPlxuICApO1xufSAiXSwibmFtZXMiOlsiU2Vzc2lvblByb3ZpZGVyIiwiUHJvdmlkZXJzIiwiY2hpbGRyZW4iXSwiaWdub3JlTGlzdCI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./components/providers.tsx\n");
/***/ }),
/***/ "(ssr)/./components/quote-card.tsx":
/*!***********************************!*\
!*** ./components/quote-card.tsx ***!
\***********************************/
/***/ ((__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 */ QuoteCard: () => (/* binding */ QuoteCard)\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/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 _barrel_optimize_names_RefreshCw_lucide_react__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! __barrel_optimize__?names=RefreshCw!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/refresh-cw.js\");\n/* harmony import */ var _components_ui_card__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @/components/ui/card */ \"(ssr)/./components/ui/card.tsx\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/route-modules/app-page/vendored/ssr/react.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);\n/* __next_internal_client_entry_do_not_use__ QuoteCard auto */ \n\n\n\nfunction QuoteCard() {\n const fetchQuote = async ()=>{\n // Récupere la liste des citations depuis le fichier dans /public/quotes.json\n const response = await fetch(\"/quotes.json\");\n const data = await response.json();\n // Retourne une citation aléatoire\n return data[Math.floor(Math.random() * data.length)];\n };\n const [quote, setQuote] = (0,react__WEBPACK_IMPORTED_MODULE_2__.useState)(null);\n (0,react__WEBPACK_IMPORTED_MODULE_2__.useEffect)({\n \"QuoteCard.useEffect\": ()=>{\n fetchQuote().then(setQuote);\n }\n }[\"QuoteCard.useEffect\"], []);\n const handleRefresh = ()=>{\n fetchQuote().then(setQuote);\n };\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_card__WEBPACK_IMPORTED_MODULE_1__.Card, {\n className: \"relative transition-transform duration-500 ease-in-out transform hover:scale-105\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_card__WEBPACK_IMPORTED_MODULE_1__.CardContent, {\n className: \"p-6\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"blockquote\", {\n className: \"space-y-2\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n className: \"text-lg\",\n children: quote ? quote.quote : \"Loading...\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/quote-card.tsx\",\n lineNumber: 36,\n columnNumber: 11\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"footer\", {\n className: \"text-sm text-gray-500\",\n children: quote ? quote.author : \"Loading...\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/quote-card.tsx\",\n lineNumber: 37,\n columnNumber: 11\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/quote-card.tsx\",\n lineNumber: 35,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"button\", {\n className: \"absolute bottom-4 right-4 p-1 hover:bg-gray-100 rounded-full\",\n onClick: handleRefresh,\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_RefreshCw_lucide_react__WEBPACK_IMPORTED_MODULE_3__[\"default\"], {\n className: \"w-4 h-4\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/quote-card.tsx\",\n lineNumber: 45,\n columnNumber: 11\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/quote-card.tsx\",\n lineNumber: 41,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/quote-card.tsx\",\n lineNumber: 34,\n columnNumber: 7\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/quote-card.tsx\",\n lineNumber: 33,\n columnNumber: 5\n }, this);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9jb21wb25lbnRzL3F1b3RlLWNhcmQudHN4IiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBRXlDO0FBQ2dCO0FBQ2I7QUFPckMsU0FBU0s7SUFDZCxNQUFNQyxhQUFhO1FBQ2pCLDZFQUE2RTtRQUM3RSxNQUFNQyxXQUFXLE1BQU1DLE1BQU07UUFDN0IsTUFBTUMsT0FBTyxNQUFNRixTQUFTRyxJQUFJO1FBRWhDLGtDQUFrQztRQUNsQyxPQUFPRCxJQUFJLENBQUNFLEtBQUtDLEtBQUssQ0FBQ0QsS0FBS0UsTUFBTSxLQUFLSixLQUFLSyxNQUFNLEVBQUU7SUFDdEQ7SUFFQSxNQUFNLENBQUNDLE9BQU9DLFNBQVMsR0FBR1osK0NBQVFBLENBQWU7SUFFakRELGdEQUFTQTsrQkFBQztZQUNSRyxhQUFhVyxJQUFJLENBQUNEO1FBQ3BCOzhCQUFHLEVBQUU7SUFFTCxNQUFNRSxnQkFBZ0I7UUFDcEJaLGFBQWFXLElBQUksQ0FBQ0Q7SUFDcEI7SUFFQSxxQkFDRSw4REFBQ2YscURBQUlBO1FBQUNrQixXQUFVO2tCQUNkLDRFQUFDakIsNERBQVdBO1lBQUNpQixXQUFVOzs4QkFDckIsOERBQUNDO29CQUFXRCxXQUFVOztzQ0FDcEIsOERBQUNFOzRCQUFFRixXQUFVO3NDQUFXSixRQUFRQSxNQUFNQSxLQUFLLEdBQUc7Ozs7OztzQ0FDOUMsOERBQUNPOzRCQUFPSCxXQUFVO3NDQUNmSixRQUFRQSxNQUFNUSxNQUFNLEdBQUc7Ozs7Ozs7Ozs7Ozs4QkFHNUIsOERBQUNDO29CQUNDTCxXQUFVO29CQUNWTSxTQUFTUDs4QkFFVCw0RUFBQ2xCLHFGQUFTQTt3QkFBQ21CLFdBQVU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFLL0IiLCJzb3VyY2VzIjpbIi9Vc2Vycy9hbG1hL0RvY3VtZW50cy9OZWFoTmV3L2NvbXBvbmVudHMvcXVvdGUtY2FyZC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2UgY2xpZW50XCI7XG5cbmltcG9ydCB7IFJlZnJlc2hDdyB9IGZyb20gXCJsdWNpZGUtcmVhY3RcIjtcbmltcG9ydCB7IENhcmQsIENhcmRDb250ZW50IH0gZnJvbSBcIkAvY29tcG9uZW50cy91aS9jYXJkXCI7XG5pbXBvcnQgeyB1c2VFZmZlY3QsIHVzZVN0YXRlIH0gZnJvbSBcInJlYWN0XCI7XG5cbmludGVyZmFjZSBRdW90ZSB7XG4gIHF1b3RlOiBzdHJpbmc7XG4gIGF1dGhvcjogc3RyaW5nO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gUXVvdGVDYXJkKCkge1xuICBjb25zdCBmZXRjaFF1b3RlID0gYXN5bmMgKCk6IFByb21pc2U8UXVvdGU+ID0+IHtcbiAgICAvLyBSw6ljdXBlcmUgbGEgbGlzdGUgZGVzIGNpdGF0aW9ucyBkZXB1aXMgbGUgZmljaGllciBkYW5zIC9wdWJsaWMvcXVvdGVzLmpzb25cbiAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoKFwiL3F1b3Rlcy5qc29uXCIpO1xuICAgIGNvbnN0IGRhdGEgPSBhd2FpdCByZXNwb25zZS5qc29uKCk7XG5cbiAgICAvLyBSZXRvdXJuZSB1bmUgY2l0YXRpb24gYWzDqWF0b2lyZVxuICAgIHJldHVybiBkYXRhW01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIGRhdGEubGVuZ3RoKV07XG4gIH07XG5cbiAgY29uc3QgW3F1b3RlLCBzZXRRdW90ZV0gPSB1c2VTdGF0ZTxRdW90ZSB8IG51bGw+KG51bGwpO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgZmV0Y2hRdW90ZSgpLnRoZW4oc2V0UXVvdGUpO1xuICB9LCBbXSk7XG5cbiAgY29uc3QgaGFuZGxlUmVmcmVzaCA9ICgpID0+IHtcbiAgICBmZXRjaFF1b3RlKCkudGhlbihzZXRRdW90ZSk7XG4gIH07XG5cbiAgcmV0dXJuIChcbiAgICA8Q2FyZCBjbGFzc05hbWU9J3JlbGF0aXZlIHRyYW5zaXRpb24tdHJhbnNmb3JtIGR1cmF0aW9uLTUwMCBlYXNlLWluLW91dCB0cmFuc2Zvcm0gaG92ZXI6c2NhbGUtMTA1Jz5cbiAgICAgIDxDYXJkQ29udGVudCBjbGFzc05hbWU9J3AtNic+XG4gICAgICAgIDxibG9ja3F1b3RlIGNsYXNzTmFtZT0nc3BhY2UteS0yJz5cbiAgICAgICAgICA8cCBjbGFzc05hbWU9J3RleHQtbGcnPntxdW90ZSA/IHF1b3RlLnF1b3RlIDogXCJMb2FkaW5nLi4uXCJ9PC9wPlxuICAgICAgICAgIDxmb290ZXIgY2xhc3NOYW1lPSd0ZXh0LXNtIHRleHQtZ3JheS01MDAnPlxuICAgICAgICAgICAge3F1b3RlID8gcXVvdGUuYXV0aG9yIDogXCJMb2FkaW5nLi4uXCJ9XG4gICAgICAgICAgPC9mb290ZXI+XG4gICAgICAgIDwvYmxvY2txdW90ZT5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIGNsYXNzTmFtZT0nYWJzb2x1dGUgYm90dG9tLTQgcmlnaHQtNCBwLTEgaG92ZXI6YmctZ3JheS0xMDAgcm91bmRlZC1mdWxsJ1xuICAgICAgICAgIG9uQ2xpY2s9e2hhbmRsZVJlZnJlc2h9XG4gICAgICAgID5cbiAgICAgICAgICA8UmVmcmVzaEN3IGNsYXNzTmFtZT0ndy00IGgtNCcgLz5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICA8L0NhcmRDb250ZW50PlxuICAgIDwvQ2FyZD5cbiAgKTtcbn1cbiJdLCJuYW1lcyI6WyJSZWZyZXNoQ3ciLCJDYXJkIiwiQ2FyZENvbnRlbnQiLCJ1c2VFZmZlY3QiLCJ1c2VTdGF0ZSIsIlF1b3RlQ2FyZCIsImZldGNoUXVvdGUiLCJyZXNwb25zZSIsImZldGNoIiwiZGF0YSIsImpzb24iLCJNYXRoIiwiZmxvb3IiLCJyYW5kb20iLCJsZW5ndGgiLCJxdW90ZSIsInNldFF1b3RlIiwidGhlbiIsImhhbmRsZVJlZnJlc2giLCJjbGFzc05hbWUiLCJibG9ja3F1b3RlIiwicCIsImZvb3RlciIsImF1dGhvciIsImJ1dHRvbiIsIm9uQ2xpY2siXSwiaWdub3JlTGlzdCI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./components/quote-card.tsx\n");
/***/ }),
/***/ "(ssr)/./components/safe-html.tsx":
/*!**********************************!*\
!*** ./components/safe-html.tsx ***!
\**********************************/
/***/ ((__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 */ SafeHTML: () => (/* binding */ SafeHTML)\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/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/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 dompurify__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! dompurify */ \"(ssr)/./node_modules/dompurify/dist/purify.es.mjs\");\n\n\n\nfunction SafeHTML({ html, className }) {\n const sanitizedHTML = dompurify__WEBPACK_IMPORTED_MODULE_2__[\"default\"].sanitize(html, {\n USE_PROFILES: {\n html: true\n },\n ALLOWED_TAGS: [\n 'a',\n 'p',\n 'br',\n 'b',\n 'i',\n 'em',\n 'strong',\n 'span',\n 'div',\n 'img',\n 'ul',\n 'ol',\n 'li',\n 'h1',\n 'h2',\n 'h3',\n 'h4',\n 'h5',\n 'h6',\n 'code',\n 'pre',\n 'blockquote'\n ],\n ALLOWED_ATTR: [\n 'href',\n 'target',\n 'class',\n 'id',\n 'style',\n 'src',\n 'alt',\n 'data-tagged-user-id',\n 'data-mention'\n ]\n });\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: className,\n dangerouslySetInnerHTML: {\n __html: sanitizedHTML\n }\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/safe-html.tsx\",\n lineNumber: 24,\n columnNumber: 5\n }, this);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9jb21wb25lbnRzL3NhZmUtaHRtbC50c3giLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQUEwQjtBQUNRO0FBTzNCLFNBQVNFLFNBQVMsRUFBRUMsSUFBSSxFQUFFQyxTQUFTLEVBQWlCO0lBQ3pELE1BQU1DLGdCQUFnQkosaURBQVNBLENBQUNLLFFBQVEsQ0FBQ0gsTUFBTTtRQUM3Q0ksY0FBYztZQUFFSixNQUFNO1FBQUs7UUFDM0JLLGNBQWM7WUFDWjtZQUFLO1lBQUs7WUFBTTtZQUFLO1lBQUs7WUFBTTtZQUFVO1lBQVE7WUFDbEQ7WUFBTztZQUFNO1lBQU07WUFBTTtZQUFNO1lBQU07WUFBTTtZQUFNO1lBQU07WUFDdkQ7WUFBUTtZQUFPO1NBQ2hCO1FBQ0RDLGNBQWM7WUFDWjtZQUFRO1lBQVU7WUFBUztZQUFNO1lBQVM7WUFBTztZQUNqRDtZQUF1QjtTQUN4QjtJQUNIO0lBRUEscUJBQ0UsOERBQUNDO1FBQ0NOLFdBQVdBO1FBQ1hPLHlCQUF5QjtZQUFFQyxRQUFRUDtRQUFjOzs7Ozs7QUFHdkQiLCJzb3VyY2VzIjpbIi9Vc2Vycy9hbG1hL0RvY3VtZW50cy9OZWFoTmV3L2NvbXBvbmVudHMvc2FmZS1odG1sLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IERPTVB1cmlmeSBmcm9tICdkb21wdXJpZnknO1xuXG5pbnRlcmZhY2UgU2FmZUhUTUxQcm9wcyB7XG4gIGh0bWw6IHN0cmluZztcbiAgY2xhc3NOYW1lPzogc3RyaW5nO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gU2FmZUhUTUwoeyBodG1sLCBjbGFzc05hbWUgfTogU2FmZUhUTUxQcm9wcykge1xuICBjb25zdCBzYW5pdGl6ZWRIVE1MID0gRE9NUHVyaWZ5LnNhbml0aXplKGh0bWwsIHtcbiAgICBVU0VfUFJPRklMRVM6IHsgaHRtbDogdHJ1ZSB9LFxuICAgIEFMTE9XRURfVEFHUzogW1xuICAgICAgJ2EnLCAncCcsICdicicsICdiJywgJ2knLCAnZW0nLCAnc3Ryb25nJywgJ3NwYW4nLCAnZGl2JywgXG4gICAgICAnaW1nJywgJ3VsJywgJ29sJywgJ2xpJywgJ2gxJywgJ2gyJywgJ2gzJywgJ2g0JywgJ2g1JywgJ2g2JyxcbiAgICAgICdjb2RlJywgJ3ByZScsICdibG9ja3F1b3RlJ1xuICAgIF0sXG4gICAgQUxMT1dFRF9BVFRSOiBbXG4gICAgICAnaHJlZicsICd0YXJnZXQnLCAnY2xhc3MnLCAnaWQnLCAnc3R5bGUnLCAnc3JjJywgJ2FsdCcsIFxuICAgICAgJ2RhdGEtdGFnZ2VkLXVzZXItaWQnLCAnZGF0YS1tZW50aW9uJ1xuICAgIF1cbiAgfSk7XG4gIFxuICByZXR1cm4gKFxuICAgIDxkaXYgXG4gICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZX0gXG4gICAgICBkYW5nZXJvdXNseVNldElubmVySFRNTD17eyBfX2h0bWw6IHNhbml0aXplZEhUTUwgfX0gXG4gICAgLz5cbiAgKTtcbn0gIl0sIm5hbWVzIjpbIlJlYWN0IiwiRE9NUHVyaWZ5IiwiU2FmZUhUTUwiLCJodG1sIiwiY2xhc3NOYW1lIiwic2FuaXRpemVkSFRNTCIsInNhbml0aXplIiwiVVNFX1BST0ZJTEVTIiwiQUxMT1dFRF9UQUdTIiwiQUxMT1dFRF9BVFRSIiwiZGl2IiwiZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUwiLCJfX2h0bWwiXSwiaWdub3JlTGlzdCI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./components/safe-html.tsx\n");
/***/ }),
/***/ "(ssr)/./components/sidebar.tsx":
/*!********************************!*\
!*** ./components/sidebar.tsx ***!
\********************************/
/***/ ((__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 */ Sidebar: () => (/* binding */ Sidebar)\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/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 _lib_utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @/lib/utils */ \"(ssr)/./lib/utils.ts\");\n/* harmony import */ var _barrel_optimize_names_Book_BookOpen_Building2_Calculator_ChevronLeft_FileText_GitFork_GraduationCap_HardDrive_Kanban_Mail_MessageSquare_Palette_Share2_lucide_react__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! __barrel_optimize__?names=Book,BookOpen,Building2,Calculator,ChevronLeft,FileText,GitFork,GraduationCap,HardDrive,Kanban,Mail,MessageSquare,Palette,Share2!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/file-text.js\");\n/* harmony import */ var _barrel_optimize_names_Book_BookOpen_Building2_Calculator_ChevronLeft_FileText_GitFork_GraduationCap_HardDrive_Kanban_Mail_MessageSquare_Palette_Share2_lucide_react__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! __barrel_optimize__?names=Book,BookOpen,Building2,Calculator,ChevronLeft,FileText,GitFork,GraduationCap,HardDrive,Kanban,Mail,MessageSquare,Palette,Share2!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/mail.js\");\n/* harmony import */ var _barrel_optimize_names_Book_BookOpen_Building2_Calculator_ChevronLeft_FileText_GitFork_GraduationCap_HardDrive_Kanban_Mail_MessageSquare_Palette_Share2_lucide_react__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! __barrel_optimize__?names=Book,BookOpen,Building2,Calculator,ChevronLeft,FileText,GitFork,GraduationCap,HardDrive,Kanban,Mail,MessageSquare,Palette,Share2!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/hard-drive.js\");\n/* harmony import */ var _barrel_optimize_names_Book_BookOpen_Building2_Calculator_ChevronLeft_FileText_GitFork_GraduationCap_HardDrive_Kanban_Mail_MessageSquare_Palette_Share2_lucide_react__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! __barrel_optimize__?names=Book,BookOpen,Building2,Calculator,ChevronLeft,FileText,GitFork,GraduationCap,HardDrive,Kanban,Mail,MessageSquare,Palette,Share2!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/graduation-cap.js\");\n/* harmony import */ var _barrel_optimize_names_Book_BookOpen_Building2_Calculator_ChevronLeft_FileText_GitFork_GraduationCap_HardDrive_Kanban_Mail_MessageSquare_Palette_Share2_lucide_react__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! __barrel_optimize__?names=Book,BookOpen,Building2,Calculator,ChevronLeft,FileText,GitFork,GraduationCap,HardDrive,Kanban,Mail,MessageSquare,Palette,Share2!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/message-square.js\");\n/* harmony import */ var _barrel_optimize_names_Book_BookOpen_Building2_Calculator_ChevronLeft_FileText_GitFork_GraduationCap_HardDrive_Kanban_Mail_MessageSquare_Palette_Share2_lucide_react__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! __barrel_optimize__?names=Book,BookOpen,Building2,Calculator,ChevronLeft,FileText,GitFork,GraduationCap,HardDrive,Kanban,Mail,MessageSquare,Palette,Share2!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/kanban.js\");\n/* harmony import */ var _barrel_optimize_names_Book_BookOpen_Building2_Calculator_ChevronLeft_FileText_GitFork_GraduationCap_HardDrive_Kanban_Mail_MessageSquare_Palette_Share2_lucide_react__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! __barrel_optimize__?names=Book,BookOpen,Building2,Calculator,ChevronLeft,FileText,GitFork,GraduationCap,HardDrive,Kanban,Mail,MessageSquare,Palette,Share2!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/book-open.js\");\n/* harmony import */ var _barrel_optimize_names_Book_BookOpen_Building2_Calculator_ChevronLeft_FileText_GitFork_GraduationCap_HardDrive_Kanban_Mail_MessageSquare_Palette_Share2_lucide_react__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! __barrel_optimize__?names=Book,BookOpen,Building2,Calculator,ChevronLeft,FileText,GitFork,GraduationCap,HardDrive,Kanban,Mail,MessageSquare,Palette,Share2!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/share-2.js\");\n/* harmony import */ var _barrel_optimize_names_Book_BookOpen_Building2_Calculator_ChevronLeft_FileText_GitFork_GraduationCap_HardDrive_Kanban_Mail_MessageSquare_Palette_Share2_lucide_react__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! __barrel_optimize__?names=Book,BookOpen,Building2,Calculator,ChevronLeft,FileText,GitFork,GraduationCap,HardDrive,Kanban,Mail,MessageSquare,Palette,Share2!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/palette.js\");\n/* harmony import */ var _barrel_optimize_names_Book_BookOpen_Building2_Calculator_ChevronLeft_FileText_GitFork_GraduationCap_HardDrive_Kanban_Mail_MessageSquare_Palette_Share2_lucide_react__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! __barrel_optimize__?names=Book,BookOpen,Building2,Calculator,ChevronLeft,FileText,GitFork,GraduationCap,HardDrive,Kanban,Mail,MessageSquare,Palette,Share2!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/git-fork.js\");\n/* harmony import */ var _barrel_optimize_names_Book_BookOpen_Building2_Calculator_ChevronLeft_FileText_GitFork_GraduationCap_HardDrive_Kanban_Mail_MessageSquare_Palette_Share2_lucide_react__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! __barrel_optimize__?names=Book,BookOpen,Building2,Calculator,ChevronLeft,FileText,GitFork,GraduationCap,HardDrive,Kanban,Mail,MessageSquare,Palette,Share2!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/calculator.js\");\n/* harmony import */ var _barrel_optimize_names_Book_BookOpen_Building2_Calculator_ChevronLeft_FileText_GitFork_GraduationCap_HardDrive_Kanban_Mail_MessageSquare_Palette_Share2_lucide_react__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! __barrel_optimize__?names=Book,BookOpen,Building2,Calculator,ChevronLeft,FileText,GitFork,GraduationCap,HardDrive,Kanban,Mail,MessageSquare,Palette,Share2!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/building-2.js\");\n/* harmony import */ var _barrel_optimize_names_Book_BookOpen_Building2_Calculator_ChevronLeft_FileText_GitFork_GraduationCap_HardDrive_Kanban_Mail_MessageSquare_Palette_Share2_lucide_react__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! __barrel_optimize__?names=Book,BookOpen,Building2,Calculator,ChevronLeft,FileText,GitFork,GraduationCap,HardDrive,Kanban,Mail,MessageSquare,Palette,Share2!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/book.js\");\n/* harmony import */ var _barrel_optimize_names_Book_BookOpen_Building2_Calculator_ChevronLeft_FileText_GitFork_GraduationCap_HardDrive_Kanban_Mail_MessageSquare_Palette_Share2_lucide_react__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! __barrel_optimize__?names=Book,BookOpen,Building2,Calculator,ChevronLeft,FileText,GitFork,GraduationCap,HardDrive,Kanban,Mail,MessageSquare,Palette,Share2!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/chevron-left.js\");\n/* harmony import */ var _components_ui_button__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/components/ui/button */ \"(ssr)/./components/ui/button.tsx\");\n/* harmony import */ var _components_ui_scroll_area__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/components/ui/scroll-area */ \"(ssr)/./components/ui/scroll-area.tsx\");\n/* harmony import */ var next_navigation__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! next/navigation */ \"(ssr)/./node_modules/next/dist/api/navigation.js\");\n/* harmony import */ var next_image__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! next/image */ \"(ssr)/./node_modules/next/dist/api/image.js\");\n/* harmony import */ var next_auth_react__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! next-auth/react */ \"(ssr)/./node_modules/next-auth/react/index.js\");\n/* harmony import */ var next_auth_react__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(next_auth_react__WEBPACK_IMPORTED_MODULE_6__);\n/* __next_internal_client_entry_do_not_use__ Sidebar auto */ \n\n\n\n\n\n\n\nfunction Sidebar({ isOpen, onClose }) {\n const { data: session, status } = (0,next_auth_react__WEBPACK_IMPORTED_MODULE_6__.useSession)();\n const router = (0,next_navigation__WEBPACK_IMPORTED_MODULE_4__.useRouter)();\n const pathname = (0,next_navigation__WEBPACK_IMPORTED_MODULE_4__.usePathname)();\n // Debug session data\n console.log('SIDEBAR DEBUG - Session:', session);\n console.log('SIDEBAR DEBUG - User roles:', session?.user?.role);\n // Show loading state while session is being checked\n if (status === 'loading') {\n return null;\n }\n // Show nothing if not authenticated (middleware will handle redirect)\n if (status === 'unauthenticated') {\n return null;\n }\n // Function to check if user has a specific role\n const hasRole = (requiredRole)=>{\n // If no role is required, allow access\n if (!requiredRole) {\n return true;\n }\n // If no session or user roles, deny access\n if (!session?.user?.role) {\n return false;\n }\n // Get user roles and normalize them properly\n const userRoles = Array.isArray(session.user.role) ? session.user.role : [\n session.user.role\n ];\n // Filter out technical/system roles that shouldn't count for permissions\n const ignoredRoles = [\n 'offline_access',\n 'uma_authorization',\n 'default-roles-cercle'\n ];\n const cleanUserRoles = userRoles.filter(Boolean) // Remove any null/undefined values\n .filter((role)=>!ignoredRoles.includes(String(role))) // Filter out system roles\n .map((role)=>{\n if (typeof role !== 'string') return '';\n return role.replace(/^\\//, '') // Remove leading slash\n .replace(/^ROLE_/i, '') // Remove ROLE_ prefix, case insensitive\n .replace(/^default-roles-[^/]*\\//i, '') // Remove realm prefix like default-roles-cercle/\n .toLowerCase();\n }).filter((role)=>role !== ''); // Remove empty strings\n // Check against array of required roles\n if (Array.isArray(requiredRole)) {\n const cleanRequiredRoles = requiredRole.filter(Boolean).map((role)=>typeof role === 'string' ? role.toLowerCase() : '').filter((role)=>role !== '');\n return cleanRequiredRoles.some((role)=>cleanUserRoles.includes(role));\n }\n // Check against single required role\n if (typeof requiredRole === 'string') {\n const cleanRequiredRole = requiredRole.toLowerCase();\n return cleanUserRoles.includes(cleanRequiredRole);\n }\n return false;\n };\n // Base menu items (available for everyone)\n const baseMenuItems = [\n {\n title: \"Pages\",\n icon: _barrel_optimize_names_Book_BookOpen_Building2_Calculator_ChevronLeft_FileText_GitFork_GraduationCap_HardDrive_Kanban_Mail_MessageSquare_Palette_Share2_lucide_react__WEBPACK_IMPORTED_MODULE_7__[\"default\"],\n href: \"/pages\",\n iframe: \"https://journal.governance-labs.com/\"\n },\n {\n title: \"Courrier\",\n icon: _barrel_optimize_names_Book_BookOpen_Building2_Calculator_ChevronLeft_FileText_GitFork_GraduationCap_HardDrive_Kanban_Mail_MessageSquare_Palette_Share2_lucide_react__WEBPACK_IMPORTED_MODULE_8__[\"default\"],\n href: \"/courrier\"\n },\n {\n title: \"Dossiers\",\n icon: _barrel_optimize_names_Book_BookOpen_Building2_Calculator_ChevronLeft_FileText_GitFork_GraduationCap_HardDrive_Kanban_Mail_MessageSquare_Palette_Share2_lucide_react__WEBPACK_IMPORTED_MODULE_9__[\"default\"],\n href: \"/dossiers\",\n iframe: \"https://espace.slm-lab.net/apps/files/?embedMode=true&hideNavigation=true\"\n },\n {\n title: \"Apprendre\",\n icon: _barrel_optimize_names_Book_BookOpen_Building2_Calculator_ChevronLeft_FileText_GitFork_GraduationCap_HardDrive_Kanban_Mail_MessageSquare_Palette_Share2_lucide_react__WEBPACK_IMPORTED_MODULE_10__[\"default\"],\n href: \"/apprendre\",\n iframe: \"https://apprendre.slm-lab.net\"\n },\n {\n title: \"Parole\",\n icon: _barrel_optimize_names_Book_BookOpen_Building2_Calculator_ChevronLeft_FileText_GitFork_GraduationCap_HardDrive_Kanban_Mail_MessageSquare_Palette_Share2_lucide_react__WEBPACK_IMPORTED_MODULE_11__[\"default\"],\n href: \"/parole\",\n iframe: \"https://parole.slm-lab.net/channel/City\"\n },\n {\n title: \"Missions\",\n icon: _barrel_optimize_names_Book_BookOpen_Building2_Calculator_ChevronLeft_FileText_GitFork_GraduationCap_HardDrive_Kanban_Mail_MessageSquare_Palette_Share2_lucide_react__WEBPACK_IMPORTED_MODULE_12__[\"default\"],\n href: \"/mission-tab\",\n iframe: process.env.NEXT_PUBLIC_IFRAME_MISSIONSBOARD_URL\n },\n {\n title: \"Chapitre\",\n icon: _barrel_optimize_names_Book_BookOpen_Building2_Calculator_ChevronLeft_FileText_GitFork_GraduationCap_HardDrive_Kanban_Mail_MessageSquare_Palette_Share2_lucide_react__WEBPACK_IMPORTED_MODULE_13__[\"default\"],\n href: \"/chapitre\",\n iframe: \"https://chapitre.slm-lab.net\"\n },\n {\n title: \"Agilité\",\n icon: _barrel_optimize_names_Book_BookOpen_Building2_Calculator_ChevronLeft_FileText_GitFork_GraduationCap_HardDrive_Kanban_Mail_MessageSquare_Palette_Share2_lucide_react__WEBPACK_IMPORTED_MODULE_14__[\"default\"],\n href: \"/agilite\",\n iframe: \"https://agilite.slm-lab.net/oidc/login\"\n }\n ];\n // Role-specific menu items\n const roleSpecificItems = [\n {\n title: \"Artlab\",\n icon: _barrel_optimize_names_Book_BookOpen_Building2_Calculator_ChevronLeft_FileText_GitFork_GraduationCap_HardDrive_Kanban_Mail_MessageSquare_Palette_Share2_lucide_react__WEBPACK_IMPORTED_MODULE_15__[\"default\"],\n href: \"/artlab\",\n iframe: \"https://artlab.slm-lab.net\",\n requiredRole: [\n \"expression\",\n \"admin\",\n \"user\",\n \"coding\",\n \"dataintelligence\",\n \"mediation\"\n ]\n },\n {\n title: \"Gite\",\n icon: _barrel_optimize_names_Book_BookOpen_Building2_Calculator_ChevronLeft_FileText_GitFork_GraduationCap_HardDrive_Kanban_Mail_MessageSquare_Palette_Share2_lucide_react__WEBPACK_IMPORTED_MODULE_16__[\"default\"],\n href: \"/gite\",\n iframe: \"https://gite.slm-lab.net/user/oauth2/cube\",\n requiredRole: [\n \"coding\",\n \"dataintelligence\"\n ]\n },\n {\n title: \"Calcul\",\n icon: _barrel_optimize_names_Book_BookOpen_Building2_Calculator_ChevronLeft_FileText_GitFork_GraduationCap_HardDrive_Kanban_Mail_MessageSquare_Palette_Share2_lucide_react__WEBPACK_IMPORTED_MODULE_17__[\"default\"],\n href: \"/calcul\",\n iframe: \"https://calcul.slm-lab.net\",\n requiredRole: \"dataintelligence\"\n },\n {\n title: \"Médiation\",\n icon: _barrel_optimize_names_Book_BookOpen_Building2_Calculator_ChevronLeft_FileText_GitFork_GraduationCap_HardDrive_Kanban_Mail_MessageSquare_Palette_Share2_lucide_react__WEBPACK_IMPORTED_MODULE_18__[\"default\"],\n href: \"/mediation\",\n iframe: \"https://connect.slm-lab.net/realms/cercle/protocol/openid-connect/auth?client_id=mediations.slm-lab.net&redirect_uri=https%3A%2F%2Fmediations.slm-lab.net%2F%3Fopenid_mode%3Dtrue&scope=openid%20profile%20email&response_type=code\",\n requiredRole: \"mediation\"\n },\n {\n title: \"Livres\",\n icon: _barrel_optimize_names_Book_BookOpen_Building2_Calculator_ChevronLeft_FileText_GitFork_GraduationCap_HardDrive_Kanban_Mail_MessageSquare_Palette_Share2_lucide_react__WEBPACK_IMPORTED_MODULE_19__[\"default\"],\n href: \"/livres\",\n iframe: \"https://memoire.slm-lab.net/\"\n }\n ];\n // Combine base items with role-specific items based on user roles\n const visibleMenuItems = [\n ...baseMenuItems,\n ...roleSpecificItems.filter((item)=>{\n const isVisible = hasRole(item.requiredRole);\n return isVisible;\n })\n ];\n const handleNavigation = (href, external)=>{\n if (external && href) {\n window.open(href, \"_blank\");\n } else {\n router.push(href);\n }\n onClose();\n };\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, {\n children: [\n isOpen && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"fixed inset-0 z-40 bg-background/80 backdrop-blur-sm\",\n onClick: onClose\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/sidebar.tsx\",\n lineNumber: 228,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_1__.cn)(\"fixed top-0 left-0 z-50 h-full w-64 transform bg-panel transition-all duration-200 ease-in-out\", isOpen ? \"translate-x-0\" : \"-translate-x-full\"),\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_scroll_area__WEBPACK_IMPORTED_MODULE_3__.ScrollArea, {\n className: \"h-full w-full relative\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"button\", {\n onClick: onClose,\n className: \"absolute -right-3 top-1/2 transform -translate-y-1/2 w-6 h-12 bg-black text-white rounded-r-md flex items-center justify-center hover:bg-gray-800 transition-colors z-[60]\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_Book_BookOpen_Building2_Calculator_ChevronLeft_FileText_GitFork_GraduationCap_HardDrive_Kanban_Mail_MessageSquare_Palette_Share2_lucide_react__WEBPACK_IMPORTED_MODULE_20__[\"default\"], {\n className: \"h-4 w-4\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/sidebar.tsx\",\n lineNumber: 247,\n columnNumber: 13\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/sidebar.tsx\",\n lineNumber: 243,\n columnNumber: 11\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex justify-center p-6 border-b\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(next_image__WEBPACK_IMPORTED_MODULE_5__[\"default\"], {\n src: \"/Neahv3 logo.png\",\n alt: \"Neah Logo\",\n width: 50,\n height: 16.5,\n className: \"text-black\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/sidebar.tsx\",\n lineNumber: 252,\n columnNumber: 13\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/sidebar.tsx\",\n lineNumber: 251,\n columnNumber: 11\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"space-y-1 p-4\",\n children: visibleMenuItems.map((item)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_button__WEBPACK_IMPORTED_MODULE_2__.Button, {\n variant: \"ghost\",\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_1__.cn)(\"w-full justify-start gap-2 text-black hover:bg-gray-100\", pathname === item.href && !item.external && \"bg-gray-100\"),\n onClick: ()=>handleNavigation(item.href, item.external),\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(item.icon, {\n className: \"h-5 w-5\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/sidebar.tsx\",\n lineNumber: 273,\n columnNumber: 17\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n children: item.title\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/sidebar.tsx\",\n lineNumber: 274,\n columnNumber: 17\n }, this)\n ]\n }, item.title, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/sidebar.tsx\",\n lineNumber: 264,\n columnNumber: 15\n }, this))\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/sidebar.tsx\",\n lineNumber: 262,\n columnNumber: 11\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/sidebar.tsx\",\n lineNumber: 241,\n columnNumber: 9\n }, this)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/sidebar.tsx\",\n lineNumber: 235,\n columnNumber: 7\n }, this)\n ]\n }, void 0, true);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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c0RBQU1oQixLQUFLcEIsS0FBSzs7Ozs7OzttQ0FUWm9CLEtBQUtwQixLQUFLOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQWlCL0IiLCJzb3VyY2VzIjpbIi9Vc2Vycy9hbG1hL0RvY3VtZW50cy9OZWFoTmV3L2NvbXBvbmVudHMvc2lkZWJhci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2UgY2xpZW50XCI7XG5cbmltcG9ydCB0eXBlIFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHsgdXNlU3RhdGUgfSBmcm9tIFwicmVhY3RcIjtcblxuaW1wb3J0IHsgY24gfSBmcm9tIFwiQC9saWIvdXRpbHNcIjtcbmltcG9ydCB7XG4gIFNoYXJlMixcbiAgUGFsZXR0ZSxcbiAgR2l0Rm9yayxcbiAgQnVpbGRpbmcyLFxuICBDYWxlbmRhcixcbiAgVGFyZ2V0LFxuICBNYWlsLFxuICBIYXJkRHJpdmUsXG4gIEdyYWR1YXRpb25DYXAsXG4gIE1lc3NhZ2VTcXVhcmUsXG4gIEZpbGVUZXh0LFxuICBDYWxjdWxhdG9yLFxuICBLYW5iYW4sXG4gIENoZXZyb25MZWZ0LFxuICBDaGV2cm9uUmlnaHQsXG4gIEJvb2tPcGVuLFxuICBCb29rLFxufSBmcm9tIFwibHVjaWRlLXJlYWN0XCI7XG5pbXBvcnQgeyBCdXR0b24gfSBmcm9tIFwiQC9jb21wb25lbnRzL3VpL2J1dHRvblwiO1xuaW1wb3J0IHsgU2Nyb2xsQXJlYSB9IGZyb20gXCJAL2NvbXBvbmVudHMvdWkvc2Nyb2xsLWFyZWFcIjtcbmltcG9ydCB7IHVzZVJvdXRlciwgdXNlUGF0aG5hbWUgfSBmcm9tIFwibmV4dC9uYXZpZ2F0aW9uXCI7XG5pbXBvcnQgTGluayBmcm9tIFwibmV4dC9saW5rXCI7XG5pbXBvcnQgSW1hZ2UgZnJvbSBcIm5leHQvaW1hZ2VcIjtcbmltcG9ydCB7IHVzZVNlc3Npb24gfSBmcm9tIFwibmV4dC1hdXRoL3JlYWN0XCI7XG5pbXBvcnQgeyBDYWxlbmRhck5hdiB9IGZyb20gXCJAL2NvbXBvbmVudHMvc2lkZWJhci9jYWxlbmRhci1uYXZcIjtcblxuaW50ZXJmYWNlIFNpZGViYXJQcm9wcyB7XG4gIGlzT3BlbjogYm9vbGVhbjtcbiAgb25DbG9zZTogKCkgPT4gdm9pZDtcbn1cblxuaW50ZXJmYWNlIE1lbnVJdGVtIHtcbiAgdGl0bGU6IHN0cmluZztcbiAgaWNvbjogYW55O1xuICBocmVmOiBzdHJpbmc7XG4gIGlmcmFtZT86IHN0cmluZztcbiAgZXh0ZXJuYWw/OiBib29sZWFuO1xuICByZXF1aXJlZFJvbGU/OiBzdHJpbmcgfCBzdHJpbmdbXTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIFNpZGViYXIoeyBpc09wZW4sIG9uQ2xvc2UgfTogU2lkZWJhclByb3BzKSB7XG4gIGNvbnN0IHsgZGF0YTogc2Vzc2lvbiwgc3RhdHVzIH0gPSB1c2VTZXNzaW9uKCk7XG4gIGNvbnN0IHJvdXRlciA9IHVzZVJvdXRlcigpO1xuICBjb25zdCBwYXRobmFtZSA9IHVzZVBhdGhuYW1lKCk7XG5cbiAgLy8gRGVidWcgc2Vzc2lvbiBkYXRhXG4gIGNvbnNvbGUubG9nKCdTSURFQkFSIERFQlVHIC0gU2Vzc2lvbjonLCBzZXNzaW9uKTtcbiAgY29uc29sZS5sb2coJ1NJREVCQVIgREVCVUcgLSBVc2VyIHJvbGVzOicsIHNlc3Npb24/LnVzZXI/LnJvbGUpO1xuICBcbiAgLy8gU2hvdyBsb2FkaW5nIHN0YXRlIHdoaWxlIHNlc3Npb24gaXMgYmVpbmcgY2hlY2tlZFxuICBpZiAoc3RhdHVzID09PSAnbG9hZGluZycpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIC8vIFNob3cgbm90aGluZyBpZiBub3QgYXV0aGVudGljYXRlZCAobWlkZGxld2FyZSB3aWxsIGhhbmRsZSByZWRpcmVjdClcbiAgaWYgKHN0YXR1cyA9PT0gJ3VuYXV0aGVudGljYXRlZCcpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIC8vIEZ1bmN0aW9uIHRvIGNoZWNrIGlmIHVzZXIgaGFzIGEgc3BlY2lmaWMgcm9sZVxuICBjb25zdCBoYXNSb2xlID0gKHJlcXVpcmVkUm9sZTogc3RyaW5nIHwgc3RyaW5nW10gfCB1bmRlZmluZWQpID0+IHtcbiAgICAvLyBJZiBubyByb2xlIGlzIHJlcXVpcmVkLCBhbGxvdyBhY2Nlc3NcbiAgICBpZiAoIXJlcXVpcmVkUm9sZSkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIFxuICAgIC8vIElmIG5vIHNlc3Npb24gb3IgdXNlciByb2xlcywgZGVueSBhY2Nlc3NcbiAgICBpZiAoIXNlc3Npb24/LnVzZXI/LnJvbGUpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgXG4gICAgLy8gR2V0IHVzZXIgcm9sZXMgYW5kIG5vcm1hbGl6ZSB0aGVtIHByb3Blcmx5XG4gICAgY29uc3QgdXNlclJvbGVzID0gQXJyYXkuaXNBcnJheShzZXNzaW9uLnVzZXIucm9sZSkgPyBzZXNzaW9uLnVzZXIucm9sZSA6IFtzZXNzaW9uLnVzZXIucm9sZV07XG4gICAgXG4gICAgLy8gRmlsdGVyIG91dCB0ZWNobmljYWwvc3lzdGVtIHJvbGVzIHRoYXQgc2hvdWxkbid0IGNvdW50IGZvciBwZXJtaXNzaW9uc1xuICAgIGNvbnN0IGlnbm9yZWRSb2xlcyA9IFsnb2ZmbGluZV9hY2Nlc3MnLCAndW1hX2F1dGhvcml6YXRpb24nLCAnZGVmYXVsdC1yb2xlcy1jZXJjbGUnXTtcbiAgICBcbiAgICBjb25zdCBjbGVhblVzZXJSb2xlcyA9IHVzZXJSb2xlc1xuICAgICAgLmZpbHRlcihCb29sZWFuKSAvLyBSZW1vdmUgYW55IG51bGwvdW5kZWZpbmVkIHZhbHVlc1xuICAgICAgLmZpbHRlcihyb2xlID0+ICFpZ25vcmVkUm9sZXMuaW5jbHVkZXMoU3RyaW5nKHJvbGUpKSkgLy8gRmlsdGVyIG91dCBzeXN0ZW0gcm9sZXNcbiAgICAgIC5tYXAocm9sZSA9PiB7XG4gICAgICAgIGlmICh0eXBlb2Ygcm9sZSAhPT0gJ3N0cmluZycpIHJldHVybiAnJztcbiAgICAgICAgcmV0dXJuIHJvbGVcbiAgICAgICAgICAucmVwbGFjZSgvXlxcLy8sICcnKSAgICAgICAgICAgICAgIC8vIFJlbW92ZSBsZWFkaW5nIHNsYXNoXG4gICAgICAgICAgLnJlcGxhY2UoL15ST0xFXy9pLCAnJykgICAgICAgICAgIC8vIFJlbW92ZSBST0xFXyBwcmVmaXgsIGNhc2UgaW5zZW5zaXRpdmVcbiAgICAgICAgICAucmVwbGFjZSgvXmRlZmF1bHQtcm9sZXMtW14vXSpcXC8vaSwgJycpIC8vIFJlbW92ZSByZWFsbSBwcmVmaXggbGlrZSBkZWZhdWx0LXJvbGVzLWNlcmNsZS9cbiAgICAgICAgICAudG9Mb3dlckNhc2UoKTtcbiAgICAgIH0pXG4gICAgICAuZmlsdGVyKHJvbGUgPT4gcm9sZSAhPT0gJycpOyAvLyBSZW1vdmUgZW1wdHkgc3RyaW5nc1xuICAgIFxuICAgIC8vIENoZWNrIGFnYWluc3QgYXJyYXkgb2YgcmVxdWlyZWQgcm9sZXNcbiAgICBpZiAoQXJyYXkuaXNBcnJheShyZXF1aXJlZFJvbGUpKSB7XG4gICAgICBjb25zdCBjbGVhblJlcXVpcmVkUm9sZXMgPSByZXF1aXJlZFJvbGVcbiAgICAgICAgLmZpbHRlcihCb29sZWFuKVxuICAgICAgICAubWFwKHJvbGUgPT4gdHlwZW9mIHJvbGUgPT09ICdzdHJpbmcnID8gcm9sZS50b0xvd2VyQ2FzZSgpIDogJycpXG4gICAgICAgIC5maWx0ZXIocm9sZSA9PiByb2xlICE9PSAnJyk7XG4gICAgICBcbiAgICAgIHJldHVybiBjbGVhblJlcXVpcmVkUm9sZXMuc29tZShyb2xlID0+IGNsZWFuVXNlclJvbGVzLmluY2x1ZGVzKHJvbGUpKTtcbiAgICB9XG4gICAgXG4gICAgLy8gQ2hlY2sgYWdhaW5zdCBzaW5nbGUgcmVxdWlyZWQgcm9sZVxuICAgIGlmICh0eXBlb2YgcmVxdWlyZWRSb2xlID09PSAnc3RyaW5nJykge1xuICAgICAgY29uc3QgY2xlYW5SZXF1aXJlZFJvbGUgPSByZXF1aXJlZFJvbGUudG9Mb3dlckNhc2UoKTtcbiAgICAgIHJldHVybiBjbGVhblVzZXJSb2xlcy5pbmNsdWRlcyhjbGVhblJlcXVpcmVkUm9sZSk7XG4gICAgfVxuICAgIFxuICAgIHJldHVybiBmYWxzZTtcbiAgfTtcblxuICAvLyBCYXNlIG1lbnUgaXRlbXMgKGF2YWlsYWJsZSBmb3IgZXZlcnlvbmUpXG4gIGNvbnN0IGJhc2VNZW51SXRlbXM6IE1lbnVJdGVtW10gPSBbXG4gICAge1xuICAgICAgdGl0bGU6IFwiUGFnZXNcIixcbiAgICAgIGljb246IEZpbGVUZXh0LFxuICAgICAgaHJlZjogXCIvcGFnZXNcIixcbiAgICAgIGlmcmFtZTogcHJvY2Vzcy5lbnYuTkVYVF9QVUJMSUNfSUZSQU1FX0NBUk5FVF9VUkwsXG4gICAgfSxcbiAgICB7XG4gICAgICB0aXRsZTogXCJDb3VycmllclwiLFxuICAgICAgaWNvbjogTWFpbCxcbiAgICAgIGhyZWY6IFwiL2NvdXJyaWVyXCIsXG4gICAgfSxcbiAgICB7XG4gICAgICB0aXRsZTogXCJEb3NzaWVyc1wiLFxuICAgICAgaWNvbjogSGFyZERyaXZlLFxuICAgICAgaHJlZjogXCIvZG9zc2llcnNcIixcbiAgICAgIGlmcmFtZTogcHJvY2Vzcy5lbnYuTkVYVF9QVUJMSUNfSUZSQU1FX0RSSVZFX1VSTCxcbiAgICB9LFxuICAgIHtcbiAgICAgIHRpdGxlOiBcIkFwcHJlbmRyZVwiLFxuICAgICAgaWNvbjogR3JhZHVhdGlvbkNhcCxcbiAgICAgIGhyZWY6IFwiL2FwcHJlbmRyZVwiLFxuICAgICAgaWZyYW1lOiBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19JRlJBTUVfTEVBUk5fVVJMLFxuICAgIH0sXG4gICAge1xuICAgICAgdGl0bGU6IFwiUGFyb2xlXCIsXG4gICAgICBpY29uOiBNZXNzYWdlU3F1YXJlLFxuICAgICAgaHJlZjogXCIvcGFyb2xlXCIsXG4gICAgICBpZnJhbWU6IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0lGUkFNRV9QQVJPTEVfVVJMLFxuICAgIH0sXG4gICAge1xuICAgICAgdGl0bGU6IFwiTWlzc2lvbnNcIixcbiAgICAgIGljb246IEthbmJhbixcbiAgICAgIGhyZWY6IFwiL21pc3Npb24tdGFiXCIsXG4gICAgICBpZnJhbWU6IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0lGUkFNRV9NSVNTSU9OU0JPQVJEX1VSTCxcbiAgICB9LFxuICAgIHtcbiAgICAgIHRpdGxlOiBcIkNoYXBpdHJlXCIsXG4gICAgICBpY29uOiBCb29rT3BlbixcbiAgICAgIGhyZWY6IFwiL2NoYXBpdHJlXCIsXG4gICAgICBpZnJhbWU6IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0lGUkFNRV9DSEFQVEVSX1VSTCxcbiAgICB9LFxuICAgIHtcbiAgICAgIHRpdGxlOiBcIkFnaWxpdMOpXCIsXG4gICAgICBpY29uOiBTaGFyZTIsXG4gICAgICBocmVmOiBcIi9hZ2lsaXRlXCIsXG4gICAgICBpZnJhbWU6IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0lGUkFNRV9BR0lMSVRZX1VSTCxcbiAgICB9LFxuICBdO1xuXG4gIC8vIFJvbGUtc3BlY2lmaWMgbWVudSBpdGVtc1xuICBjb25zdCByb2xlU3BlY2lmaWNJdGVtczogTWVudUl0ZW1bXSA9IFtcbiAgICB7XG4gICAgICB0aXRsZTogXCJBcnRsYWJcIixcbiAgICAgIGljb246IFBhbGV0dGUsXG4gICAgICBocmVmOiBcIi9hcnRsYWJcIixcbiAgICAgIGlmcmFtZTogcHJvY2Vzcy5lbnYuTkVYVF9QVUJMSUNfSUZSQU1FX0FSVExBQl9VUkwsXG4gICAgICByZXF1aXJlZFJvbGU6IFtcImV4cHJlc3Npb25cIiwgXCJhZG1pblwiLCBcInVzZXJcIiwgXCJjb2RpbmdcIiwgXCJkYXRhaW50ZWxsaWdlbmNlXCIsIFwibWVkaWF0aW9uXCJdLFxuICAgIH0sXG4gICAge1xuICAgICAgdGl0bGU6IFwiR2l0ZVwiLFxuICAgICAgaWNvbjogR2l0Rm9yayxcbiAgICAgIGhyZWY6IFwiL2dpdGVcIixcbiAgICAgIGlmcmFtZTogcHJvY2Vzcy5lbnYuTkVYVF9QVUJMSUNfSUZSQU1FX0dJVEVfVVJMLFxuICAgICAgcmVxdWlyZWRSb2xlOiBbXCJjb2RpbmdcIiwgXCJkYXRhaW50ZWxsaWdlbmNlXCJdLFxuICAgIH0sXG4gICAge1xuICAgICAgdGl0bGU6IFwiQ2FsY3VsXCIsXG4gICAgICBpY29uOiBDYWxjdWxhdG9yLFxuICAgICAgaHJlZjogXCIvY2FsY3VsXCIsXG4gICAgICBpZnJhbWU6IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0lGUkFNRV9DQUxDVUxBVElPTl9VUkwsXG4gICAgICByZXF1aXJlZFJvbGU6IFwiZGF0YWludGVsbGlnZW5jZVwiLFxuICAgIH0sXG4gICAge1xuICAgICAgdGl0bGU6IFwiTcOpZGlhdGlvblwiLFxuICAgICAgaWNvbjogQnVpbGRpbmcyLFxuICAgICAgaHJlZjogXCIvbWVkaWF0aW9uXCIsXG4gICAgICBpZnJhbWU6IHByb2Nlc3MuZW52Lk5FWFRfUFVCTElDX0lGUkFNRV9NRURJQVRJT05TX1VSTCxcbiAgICAgIHJlcXVpcmVkUm9sZTogXCJtZWRpYXRpb25cIixcbiAgICB9LFxuICAgIHtcbiAgICAgIHRpdGxlOiBcIkxpdnJlc1wiLFxuICAgICAgaWNvbjogQm9vayxcbiAgICAgIGhyZWY6IFwiL2xpdnJlc1wiLFxuICAgICAgaWZyYW1lOiBwcm9jZXNzLmVudi5ORVhUX1BVQkxJQ19JRlJBTUVfTElWUkVfVVJMLFxuICAgIH0sXG4gIF07XG5cbiAgLy8gQ29tYmluZSBiYXNlIGl0ZW1zIHdpdGggcm9sZS1zcGVjaWZpYyBpdGVtcyBiYXNlZCBvbiB1c2VyIHJvbGVzXG4gIGNvbnN0IHZpc2libGVNZW51SXRlbXMgPSBbXG4gICAgLi4uYmFzZU1lbnVJdGVtcyxcbiAgICAuLi5yb2xlU3BlY2lmaWNJdGVtcy5maWx0ZXIoaXRlbSA9PiB7XG4gICAgICBjb25zdCBpc1Zpc2libGUgPSBoYXNSb2xlKGl0ZW0ucmVxdWlyZWRSb2xlKTtcbiAgICAgIHJldHVybiBpc1Zpc2libGU7XG4gICAgfSlcbiAgXTtcblxuICBjb25zdCBoYW5kbGVOYXZpZ2F0aW9uID0gKGhyZWY6IHN0cmluZywgZXh0ZXJuYWw/OiBib29sZWFuKSA9PiB7XG4gICAgaWYgKGV4dGVybmFsICYmIGhyZWYpIHtcbiAgICAgIHdpbmRvdy5vcGVuKGhyZWYsIFwiX2JsYW5rXCIpO1xuICAgIH0gZWxzZSB7XG4gICAgICByb3V0ZXIucHVzaChocmVmKTtcbiAgICB9XG4gICAgb25DbG9zZSgpO1xuICB9O1xuXG4gIHJldHVybiAoXG4gICAgPD5cbiAgICAgIHsvKiBCYWNrZHJvcCAqL31cbiAgICAgIHtpc09wZW4gJiYgKFxuICAgICAgICA8ZGl2XG4gICAgICAgICAgY2xhc3NOYW1lPVwiZml4ZWQgaW5zZXQtMCB6LTQwIGJnLWJhY2tncm91bmQvODAgYmFja2Ryb3AtYmx1ci1zbVwiXG4gICAgICAgICAgb25DbGljaz17b25DbG9zZX1cbiAgICAgICAgLz5cbiAgICAgICl9XG5cbiAgICAgIHsvKiBTaWRlYmFyICovfVxuICAgICAgPGRpdlxuICAgICAgICBjbGFzc05hbWU9e2NuKFxuICAgICAgICAgIFwiZml4ZWQgdG9wLTAgbGVmdC0wIHotNTAgaC1mdWxsIHctNjQgdHJhbnNmb3JtIGJnLXBhbmVsIHRyYW5zaXRpb24tYWxsIGR1cmF0aW9uLTIwMCBlYXNlLWluLW91dFwiLFxuICAgICAgICAgIGlzT3BlbiA/IFwidHJhbnNsYXRlLXgtMFwiIDogXCItdHJhbnNsYXRlLXgtZnVsbFwiXG4gICAgICAgICl9XG4gICAgICA+XG4gICAgICAgIDxTY3JvbGxBcmVhIGNsYXNzTmFtZT1cImgtZnVsbCB3LWZ1bGwgcmVsYXRpdmVcIj5cbiAgICAgICAgICB7LyogSGlkZSBCdXR0b24gKi99XG4gICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgb25DbGljaz17b25DbG9zZX1cbiAgICAgICAgICAgIGNsYXNzTmFtZT1cImFic29sdXRlIC1yaWdodC0zIHRvcC0xLzIgdHJhbnNmb3JtIC10cmFuc2xhdGUteS0xLzIgdy02IGgtMTIgYmctYmxhY2sgdGV4dC13aGl0ZSByb3VuZGVkLXItbWQgZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgaG92ZXI6YmctZ3JheS04MDAgdHJhbnNpdGlvbi1jb2xvcnMgei1bNjBdXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8Q2hldnJvbkxlZnQgY2xhc3NOYW1lPVwiaC00IHctNFwiIC8+XG4gICAgICAgICAgPC9idXR0b24+XG5cbiAgICAgICAgICB7LyogTG9nbyAqL31cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZsZXgganVzdGlmeS1jZW50ZXIgcC02IGJvcmRlci1iXCI+XG4gICAgICAgICAgICA8SW1hZ2VcbiAgICAgICAgICAgICAgc3JjPVwiL05lYWh2MyBsb2dvLnBuZ1wiXG4gICAgICAgICAgICAgIGFsdD1cIk5lYWggTG9nb1wiXG4gICAgICAgICAgICAgIHdpZHRoPXs1MH1cbiAgICAgICAgICAgICAgaGVpZ2h0PXsxNi41fVxuICAgICAgICAgICAgICBjbGFzc05hbWU9XCJ0ZXh0LWJsYWNrXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICB7LyogTWVudSBJdGVtcyAqL31cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInNwYWNlLXktMSBwLTRcIj5cbiAgICAgICAgICAgIHt2aXNpYmxlTWVudUl0ZW1zLm1hcCgoaXRlbSkgPT4gKFxuICAgICAgICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgICAgICAga2V5PXtpdGVtLnRpdGxlfVxuICAgICAgICAgICAgICAgIHZhcmlhbnQ9XCJnaG9zdFwiXG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjbihcbiAgICAgICAgICAgICAgICAgIFwidy1mdWxsIGp1c3RpZnktc3RhcnQgZ2FwLTIgdGV4dC1ibGFjayBob3ZlcjpiZy1ncmF5LTEwMFwiLFxuICAgICAgICAgICAgICAgICAgcGF0aG5hbWUgPT09IGl0ZW0uaHJlZiAmJiAhaXRlbS5leHRlcm5hbCAmJiBcImJnLWdyYXktMTAwXCJcbiAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IGhhbmRsZU5hdmlnYXRpb24oaXRlbS5ocmVmLCBpdGVtLmV4dGVybmFsKX1cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxpdGVtLmljb24gY2xhc3NOYW1lPVwiaC01IHctNVwiIC8+XG4gICAgICAgICAgICAgICAgPHNwYW4+e2l0ZW0udGl0bGV9PC9zcGFuPlxuICAgICAgICAgICAgICA8L0J1dHRvbj5cbiAgICAgICAgICAgICkpfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L1Njcm9sbEFyZWE+XG4gICAgICA8L2Rpdj5cbiAgICA8Lz5cbiAgKTtcbn1cbiJdLCJuYW1lcyI6WyJjbiIsIlNoYXJlMiIsIlBhbGV0dGUiLCJHaXRGb3JrIiwiQnVpbGRpbmcyIiwiTWFpbCIsIkhhcmREcml2ZSIsIkdyYWR1YXRpb25DYXAiLCJNZXNzYWdlU3F1YXJlIiwiRmlsZVRleHQiLCJDYWxjdWxhdG9yIiwiS2FuYmFuIiwiQ2hldnJvbkxlZnQiLCJCb29rT3BlbiIsIkJvb2siLCJCdXR0b24iLCJTY3JvbGxBcmVhIiwidXNlUm91dGVyIiwidXNlUGF0aG5hbWUiLCJJbWFnZSIsInVzZVNlc3Npb24iLCJTaWRlYmFyIiwiaXNPcGVuIiwib25DbG9zZSIsImRhdGEiLCJzZXNzaW9uIiwic3RhdHVzIiwicm91dGVyIiwicGF0aG5hbWUiLCJjb25zb2xlIiwibG9nIiwidXNlciIsInJvbGUiLCJoYXNSb2xlIiwicmVxdWlyZWRSb2xlIiwidXNlclJvbGVzIiwiQXJyYXkiLCJpc0FycmF5IiwiaWdub3JlZFJvbGVzIiwiY2xlYW5Vc2VyUm9sZXMiLCJmaWx0ZXIiLCJCb29sZWFuIiwiaW5jbHVkZXMiLCJTdHJpbmciLCJtYXAiLCJyZXBsYWNlIiwidG9Mb3dlckNhc2UiLCJjbGVhblJlcXVpcmVkUm9sZXMiLCJzb21lIiwiY2xlYW5SZXF1aXJlZFJvbGUiLCJiYXNlTWVudUl0ZW1zIiwidGl0bGUiLCJpY29uIiwiaHJlZiIsImlmcmFtZSIsInByb2Nlc3MiLCJlbnYiLCJORVhUX1BVQkxJQ19JRlJBTUVfQ0FSTkVUX1VSTCIsIk5FWFRfUFVCTElDX0lGUkFNRV9EUklWRV9VUkwiLCJORVhUX1BVQkxJQ19JRlJBTUVfTEVBUk5fVVJMIiwiTkVYVF9QVUJMSUNfSUZSQU1FX1BBUk9MRV9VUkwiLCJORVhUX1BVQkxJQ19JRlJBTUVfTUlTU0lPTlNCT0FSRF9VUkwiLCJORVhUX1BVQkxJQ19JRlJBTUVfQ0hBUFRFUl9VUkwiLCJORVhUX1BVQkxJQ19JRlJBTUVfQUdJTElUWV9VUkwiLCJyb2xlU3BlY2lmaWNJdGVtcyIsIk5FWFRfUFVCTElDX0lGUkFNRV9BUlRMQUJfVVJMIiwiTkVYVF9QVUJMSUNfSUZSQU1FX0dJVEVfVVJMIiwiTkVYVF9QVUJMSUNfSUZSQU1FX0NBTENVTEFUSU9OX1VSTCIsIk5FWFRfUFVCTElDX0lGUkFNRV9NRURJQVRJT05TX1VSTCIsIk5FWFRfUFVCTElDX0lGUkFNRV9MSVZSRV9VUkwiLCJ2aXNpYmxlTWVudUl0ZW1zIiwiaXRlbSIsImlzVmlzaWJsZSIsImhhbmRsZU5hdmlnYXRpb24iLCJleHRlcm5hbCIsIndpbmRvdyIsIm9wZW4iLCJwdXNoIiwiZGl2IiwiY2xhc3NOYW1lIiwib25DbGljayIsImJ1dHRvbiIsInNyYyIsImFsdCIsIndpZHRoIiwiaGVpZ2h0IiwidmFyaWFudCIsInNwYW4iXSwiaWdub3JlTGlzdCI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./components/sidebar.tsx\n");
/***/ }),
/***/ "(ssr)/./components/ui/avatar.tsx":
/*!**********************************!*\
!*** ./components/ui/avatar.tsx ***!
\**********************************/
/***/ ((__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 */ Avatar: () => (/* binding */ Avatar),\n/* harmony export */ AvatarFallback: () => (/* binding */ AvatarFallback),\n/* harmony export */ AvatarImage: () => (/* binding */ AvatarImage)\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/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/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 _radix_ui_react_avatar__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @radix-ui/react-avatar */ \"(ssr)/./node_modules/@radix-ui/react-avatar/dist/index.mjs\");\n/* harmony import */ var _lib_utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/lib/utils */ \"(ssr)/./lib/utils.ts\");\n/* __next_internal_client_entry_do_not_use__ Avatar,AvatarImage,AvatarFallback auto */ \n\n\n\nconst Avatar = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_1__.forwardRef(({ className, ...props }, ref)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_radix_ui_react_avatar__WEBPACK_IMPORTED_MODULE_3__.Root, {\n ref: ref,\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_2__.cn)(\"relative flex h-10 w-10 shrink-0 overflow-hidden rounded-full\", className),\n ...props\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/avatar.tsx\",\n lineNumber: 12,\n columnNumber: 3\n }, undefined));\nAvatar.displayName = _radix_ui_react_avatar__WEBPACK_IMPORTED_MODULE_3__.Root.displayName;\nconst AvatarImage = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_1__.forwardRef(({ className, ...props }, ref)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_radix_ui_react_avatar__WEBPACK_IMPORTED_MODULE_3__.Image, {\n ref: ref,\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_2__.cn)(\"aspect-square h-full w-full\", className),\n ...props\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/avatar.tsx\",\n lineNumber: 27,\n columnNumber: 3\n }, undefined));\nAvatarImage.displayName = _radix_ui_react_avatar__WEBPACK_IMPORTED_MODULE_3__.Image.displayName;\nconst AvatarFallback = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_1__.forwardRef(({ className, ...props }, ref)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_radix_ui_react_avatar__WEBPACK_IMPORTED_MODULE_3__.Fallback, {\n ref: ref,\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_2__.cn)(\"flex h-full w-full items-center justify-center rounded-full bg-muted\", className),\n ...props\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/avatar.tsx\",\n lineNumber: 39,\n columnNumber: 3\n }, undefined));\nAvatarFallback.displayName = _radix_ui_react_avatar__WEBPACK_IMPORTED_MODULE_3__.Fallback.displayName;\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9jb21wb25lbnRzL3VpL2F2YXRhci50c3giLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7OztBQUU4QjtBQUMyQjtBQUV6QjtBQUVoQyxNQUFNRyx1QkFBU0gsNkNBQWdCLENBRzdCLENBQUMsRUFBRUssU0FBUyxFQUFFLEdBQUdDLE9BQU8sRUFBRUMsb0JBQzFCLDhEQUFDTix3REFBb0I7UUFDbkJNLEtBQUtBO1FBQ0xGLFdBQVdILDhDQUFFQSxDQUNYLGlFQUNBRztRQUVELEdBQUdDLEtBQUs7Ozs7OztBQUdiSCxPQUFPTSxXQUFXLEdBQUdSLHdEQUFvQixDQUFDUSxXQUFXO0FBRXJELE1BQU1DLDRCQUFjViw2Q0FBZ0IsQ0FHbEMsQ0FBQyxFQUFFSyxTQUFTLEVBQUUsR0FBR0MsT0FBTyxFQUFFQyxvQkFDMUIsOERBQUNOLHlEQUFxQjtRQUNwQk0sS0FBS0E7UUFDTEYsV0FBV0gsOENBQUVBLENBQUMsK0JBQStCRztRQUM1QyxHQUFHQyxLQUFLOzs7Ozs7QUFHYkksWUFBWUQsV0FBVyxHQUFHUix5REFBcUIsQ0FBQ1EsV0FBVztBQUUzRCxNQUFNRywrQkFBaUJaLDZDQUFnQixDQUdyQyxDQUFDLEVBQUVLLFNBQVMsRUFBRSxHQUFHQyxPQUFPLEVBQUVDLG9CQUMxQiw4REFBQ04sNERBQXdCO1FBQ3ZCTSxLQUFLQTtRQUNMRixXQUFXSCw4Q0FBRUEsQ0FDWCx3RUFDQUc7UUFFRCxHQUFHQyxLQUFLOzs7Ozs7QUFHYk0sZUFBZUgsV0FBVyxHQUFHUiw0REFBd0IsQ0FBQ1EsV0FBVztBQUVuQiIsInNvdXJjZXMiOlsiL1VzZXJzL2FsbWEvRG9jdW1lbnRzL05lYWhOZXcvY29tcG9uZW50cy91aS9hdmF0YXIudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIGNsaWVudFwiXG5cbmltcG9ydCAqIGFzIFJlYWN0IGZyb20gXCJyZWFjdFwiXG5pbXBvcnQgKiBhcyBBdmF0YXJQcmltaXRpdmUgZnJvbSBcIkByYWRpeC11aS9yZWFjdC1hdmF0YXJcIlxuXG5pbXBvcnQgeyBjbiB9IGZyb20gXCJAL2xpYi91dGlsc1wiXG5cbmNvbnN0IEF2YXRhciA9IFJlYWN0LmZvcndhcmRSZWY8XG4gIFJlYWN0LkVsZW1lbnRSZWY8dHlwZW9mIEF2YXRhclByaW1pdGl2ZS5Sb290PixcbiAgUmVhY3QuQ29tcG9uZW50UHJvcHNXaXRob3V0UmVmPHR5cGVvZiBBdmF0YXJQcmltaXRpdmUuUm9vdD5cbj4oKHsgY2xhc3NOYW1lLCAuLi5wcm9wcyB9LCByZWYpID0+IChcbiAgPEF2YXRhclByaW1pdGl2ZS5Sb290XG4gICAgcmVmPXtyZWZ9XG4gICAgY2xhc3NOYW1lPXtjbihcbiAgICAgIFwicmVsYXRpdmUgZmxleCBoLTEwIHctMTAgc2hyaW5rLTAgb3ZlcmZsb3ctaGlkZGVuIHJvdW5kZWQtZnVsbFwiLFxuICAgICAgY2xhc3NOYW1lXG4gICAgKX1cbiAgICB7Li4ucHJvcHN9XG4gIC8+XG4pKVxuQXZhdGFyLmRpc3BsYXlOYW1lID0gQXZhdGFyUHJpbWl0aXZlLlJvb3QuZGlzcGxheU5hbWVcblxuY29uc3QgQXZhdGFySW1hZ2UgPSBSZWFjdC5mb3J3YXJkUmVmPFxuICBSZWFjdC5FbGVtZW50UmVmPHR5cGVvZiBBdmF0YXJQcmltaXRpdmUuSW1hZ2U+LFxuICBSZWFjdC5Db21wb25lbnRQcm9wc1dpdGhvdXRSZWY8dHlwZW9mIEF2YXRhclByaW1pdGl2ZS5JbWFnZT5cbj4oKHsgY2xhc3NOYW1lLCAuLi5wcm9wcyB9LCByZWYpID0+IChcbiAgPEF2YXRhclByaW1pdGl2ZS5JbWFnZVxuICAgIHJlZj17cmVmfVxuICAgIGNsYXNzTmFtZT17Y24oXCJhc3BlY3Qtc3F1YXJlIGgtZnVsbCB3LWZ1bGxcIiwgY2xhc3NOYW1lKX1cbiAgICB7Li4ucHJvcHN9XG4gIC8+XG4pKVxuQXZhdGFySW1hZ2UuZGlzcGxheU5hbWUgPSBBdmF0YXJQcmltaXRpdmUuSW1hZ2UuZGlzcGxheU5hbWVcblxuY29uc3QgQXZhdGFyRmFsbGJhY2sgPSBSZWFjdC5mb3J3YXJkUmVmPFxuICBSZWFjdC5FbGVtZW50UmVmPHR5cGVvZiBBdmF0YXJQcmltaXRpdmUuRmFsbGJhY2s+LFxuICBSZWFjdC5Db21wb25lbnRQcm9wc1dpdGhvdXRSZWY8dHlwZW9mIEF2YXRhclByaW1pdGl2ZS5GYWxsYmFjaz5cbj4oKHsgY2xhc3NOYW1lLCAuLi5wcm9wcyB9LCByZWYpID0+IChcbiAgPEF2YXRhclByaW1pdGl2ZS5GYWxsYmFja1xuICAgIHJlZj17cmVmfVxuICAgIGNsYXNzTmFtZT17Y24oXG4gICAgICBcImZsZXggaC1mdWxsIHctZnVsbCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgcm91bmRlZC1mdWxsIGJnLW11dGVkXCIsXG4gICAgICBjbGFzc05hbWVcbiAgICApfVxuICAgIHsuLi5wcm9wc31cbiAgLz5cbikpXG5BdmF0YXJGYWxsYmFjay5kaXNwbGF5TmFtZSA9IEF2YXRhclByaW1pdGl2ZS5GYWxsYmFjay5kaXNwbGF5TmFtZVxuXG5leHBvcnQgeyBBdmF0YXIsIEF2YXRhckltYWdlLCBBdmF0YXJGYWxsYmFjayB9XG4iXSwibmFtZXMiOlsiUmVhY3QiLCJBdmF0YXJQcmltaXRpdmUiLCJjbiIsIkF2YXRhciIsImZvcndhcmRSZWYiLCJjbGFzc05hbWUiLCJwcm9wcyIsInJlZiIsIlJvb3QiLCJkaXNwbGF5TmFtZSIsIkF2YXRhckltYWdlIiwiSW1hZ2UiLCJBdmF0YXJGYWxsYmFjayIsIkZhbGxiYWNrIl0sImlnbm9yZUxpc3QiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./components/ui/avatar.tsx\n");
/***/ }),
/***/ "(ssr)/./components/ui/badge.tsx":
/*!*********************************!*\
!*** ./components/ui/badge.tsx ***!
\*********************************/
/***/ ((__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 */ Badge: () => (/* binding */ Badge),\n/* harmony export */ badgeVariants: () => (/* binding */ badgeVariants)\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/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/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 class_variance_authority__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! class-variance-authority */ \"(ssr)/./node_modules/class-variance-authority/dist/index.mjs\");\n/* harmony import */ var _lib_utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/lib/utils */ \"(ssr)/./lib/utils.ts\");\n\n\n\n\nconst badgeVariants = (0,class_variance_authority__WEBPACK_IMPORTED_MODULE_2__.cva)(\"inline-flex items-center rounded-full border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2\", {\n variants: {\n variant: {\n default: \"border-transparent bg-primary text-primary-foreground hover:bg-primary/80\",\n secondary: \"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80\",\n destructive: \"border-transparent bg-destructive text-destructive-foreground hover:bg-destructive/80\",\n outline: \"text-foreground\",\n notification: \"border-transparent bg-red-500 text-white hover:bg-red-600 absolute -top-1 -right-1 px-1.5 py-0.5 min-w-[1.25rem] h-5 flex items-center justify-center\"\n },\n shape: {\n default: \"rounded-full\",\n pill: \"rounded-full\",\n square: \"rounded-md\"\n },\n size: {\n default: \"text-xs px-2.5 py-0.5\",\n sm: \"text-xs px-2 py-0.25 h-3.5 min-w-[1rem]\",\n lg: \"text-sm px-3 py-1\",\n notification: \"text-xs px-1.5 py-0.5 h-5 min-w-[1.25rem]\"\n }\n },\n defaultVariants: {\n variant: \"default\",\n shape: \"default\",\n size: \"default\"\n }\n});\nfunction Badge({ className, variant, shape, size, ...props }) {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_3__.cn)(badgeVariants({\n variant,\n shape,\n size\n }), className),\n ...props\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/badge.tsx\",\n lineNumber: 53,\n columnNumber: 5\n }, this);\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9jb21wb25lbnRzL3VpL2JhZGdlLnRzeCIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBOEI7QUFDbUM7QUFFakM7QUFFaEMsTUFBTUcsZ0JBQWdCRiw2REFBR0EsQ0FDdkIsMEtBQ0E7SUFDRUcsVUFBVTtRQUNSQyxTQUFTO1lBQ1BDLFNBQ0U7WUFDRkMsV0FDRTtZQUNGQyxhQUNFO1lBQ0ZDLFNBQVM7WUFDVEMsY0FDRTtRQUNKO1FBQ0FDLE9BQU87WUFDTEwsU0FBUztZQUNUTSxNQUFNO1lBQ05DLFFBQVE7UUFDVjtRQUNBQyxNQUFNO1lBQ0pSLFNBQVM7WUFDVFMsSUFBSTtZQUNKQyxJQUFJO1lBQ0pOLGNBQWM7UUFDaEI7SUFDRjtJQUNBTyxpQkFBaUI7UUFDZlosU0FBUztRQUNUTSxPQUFPO1FBQ1BHLE1BQU07SUFDUjtBQUNGO0FBT0YsU0FBU0ksTUFBTSxFQUNiQyxTQUFTLEVBQ1RkLE9BQU8sRUFDUE0sS0FBSyxFQUNMRyxJQUFJLEVBQ0osR0FBR00sT0FDUTtJQUNYLHFCQUNFLDhEQUFDQztRQUNDRixXQUFXakIsOENBQUVBLENBQUNDLGNBQWM7WUFBRUU7WUFBU007WUFBT0c7UUFBSyxJQUFJSztRQUN0RCxHQUFHQyxLQUFLOzs7Ozs7QUFHZjtBQUUrQiIsInNvdXJjZXMiOlsiL1VzZXJzL2FsbWEvRG9jdW1lbnRzL05lYWhOZXcvY29tcG9uZW50cy91aS9iYWRnZS50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgUmVhY3QgZnJvbSBcInJlYWN0XCJcbmltcG9ydCB7IGN2YSwgdHlwZSBWYXJpYW50UHJvcHMgfSBmcm9tIFwiY2xhc3MtdmFyaWFuY2UtYXV0aG9yaXR5XCJcblxuaW1wb3J0IHsgY24gfSBmcm9tIFwiQC9saWIvdXRpbHNcIlxuXG5jb25zdCBiYWRnZVZhcmlhbnRzID0gY3ZhKFxuICBcImlubGluZS1mbGV4IGl0ZW1zLWNlbnRlciByb3VuZGVkLWZ1bGwgYm9yZGVyIHB4LTIuNSBweS0wLjUgdGV4dC14cyBmb250LXNlbWlib2xkIHRyYW5zaXRpb24tY29sb3JzIGZvY3VzOm91dGxpbmUtbm9uZSBmb2N1czpyaW5nLTIgZm9jdXM6cmluZy1yaW5nIGZvY3VzOnJpbmctb2Zmc2V0LTJcIixcbiAge1xuICAgIHZhcmlhbnRzOiB7XG4gICAgICB2YXJpYW50OiB7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgXCJib3JkZXItdHJhbnNwYXJlbnQgYmctcHJpbWFyeSB0ZXh0LXByaW1hcnktZm9yZWdyb3VuZCBob3ZlcjpiZy1wcmltYXJ5LzgwXCIsXG4gICAgICAgIHNlY29uZGFyeTpcbiAgICAgICAgICBcImJvcmRlci10cmFuc3BhcmVudCBiZy1zZWNvbmRhcnkgdGV4dC1zZWNvbmRhcnktZm9yZWdyb3VuZCBob3ZlcjpiZy1zZWNvbmRhcnkvODBcIixcbiAgICAgICAgZGVzdHJ1Y3RpdmU6XG4gICAgICAgICAgXCJib3JkZXItdHJhbnNwYXJlbnQgYmctZGVzdHJ1Y3RpdmUgdGV4dC1kZXN0cnVjdGl2ZS1mb3JlZ3JvdW5kIGhvdmVyOmJnLWRlc3RydWN0aXZlLzgwXCIsXG4gICAgICAgIG91dGxpbmU6IFwidGV4dC1mb3JlZ3JvdW5kXCIsXG4gICAgICAgIG5vdGlmaWNhdGlvbjpcbiAgICAgICAgICBcImJvcmRlci10cmFuc3BhcmVudCBiZy1yZWQtNTAwIHRleHQtd2hpdGUgaG92ZXI6YmctcmVkLTYwMCBhYnNvbHV0ZSAtdG9wLTEgLXJpZ2h0LTEgcHgtMS41IHB5LTAuNSBtaW4tdy1bMS4yNXJlbV0gaC01IGZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyXCIsXG4gICAgICB9LFxuICAgICAgc2hhcGU6IHtcbiAgICAgICAgZGVmYXVsdDogXCJyb3VuZGVkLWZ1bGxcIixcbiAgICAgICAgcGlsbDogXCJyb3VuZGVkLWZ1bGxcIixcbiAgICAgICAgc3F1YXJlOiBcInJvdW5kZWQtbWRcIlxuICAgICAgfSxcbiAgICAgIHNpemU6IHtcbiAgICAgICAgZGVmYXVsdDogXCJ0ZXh0LXhzIHB4LTIuNSBweS0wLjVcIixcbiAgICAgICAgc206IFwidGV4dC14cyBweC0yIHB5LTAuMjUgaC0zLjUgbWluLXctWzFyZW1dXCIsXG4gICAgICAgIGxnOiBcInRleHQtc20gcHgtMyBweS0xXCIsXG4gICAgICAgIG5vdGlmaWNhdGlvbjogXCJ0ZXh0LXhzIHB4LTEuNSBweS0wLjUgaC01IG1pbi13LVsxLjI1cmVtXVwiXG4gICAgICB9XG4gICAgfSxcbiAgICBkZWZhdWx0VmFyaWFudHM6IHtcbiAgICAgIHZhcmlhbnQ6IFwiZGVmYXVsdFwiLFxuICAgICAgc2hhcGU6IFwiZGVmYXVsdFwiLFxuICAgICAgc2l6ZTogXCJkZWZhdWx0XCJcbiAgICB9LFxuICB9XG4pXG5cbmV4cG9ydCBpbnRlcmZhY2UgQmFkZ2VQcm9wc1xuICBleHRlbmRzIFJlYWN0LkhUTUxBdHRyaWJ1dGVzPEhUTUxEaXZFbGVtZW50PixcbiAgICBWYXJpYW50UHJvcHM8dHlwZW9mIGJhZGdlVmFyaWFudHM+IHt9XG5cbmZ1bmN0aW9uIEJhZGdlKHtcbiAgY2xhc3NOYW1lLFxuICB2YXJpYW50LFxuICBzaGFwZSxcbiAgc2l6ZSxcbiAgLi4ucHJvcHNcbn06IEJhZGdlUHJvcHMpIHtcbiAgcmV0dXJuIChcbiAgICA8ZGl2XG4gICAgICBjbGFzc05hbWU9e2NuKGJhZGdlVmFyaWFudHMoeyB2YXJpYW50LCBzaGFwZSwgc2l6ZSB9KSwgY2xhc3NOYW1lKX1cbiAgICAgIHsuLi5wcm9wc31cbiAgICAvPlxuICApXG59XG5cbmV4cG9ydCB7IEJhZGdlLCBiYWRnZVZhcmlhbnRzIH1cbiJdLCJuYW1lcyI6WyJSZWFjdCIsImN2YSIsImNuIiwiYmFkZ2VWYXJpYW50cyIsInZhcmlhbnRzIiwidmFyaWFudCIsImRlZmF1bHQiLCJzZWNvbmRhcnkiLCJkZXN0cnVjdGl2ZSIsIm91dGxpbmUiLCJub3RpZmljYXRpb24iLCJzaGFwZSIsInBpbGwiLCJzcXVhcmUiLCJzaXplIiwic20iLCJsZyIsImRlZmF1bHRWYXJpYW50cyIsIkJhZGdlIiwiY2xhc3NOYW1lIiwicHJvcHMiLCJkaXYiXSwiaWdub3JlTGlzdCI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./components/ui/badge.tsx\n");
/***/ }),
/***/ "(ssr)/./components/ui/button.tsx":
/*!**********************************!*\
!*** ./components/ui/button.tsx ***!
\**********************************/
/***/ ((__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 */ Button: () => (/* binding */ Button),\n/* harmony export */ buttonVariants: () => (/* binding */ buttonVariants)\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/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/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 _radix_ui_react_slot__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @radix-ui/react-slot */ \"(ssr)/./node_modules/@radix-ui/react-slot/dist/index.mjs\");\n/* harmony import */ var class_variance_authority__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! class-variance-authority */ \"(ssr)/./node_modules/class-variance-authority/dist/index.mjs\");\n/* harmony import */ var _lib_utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/lib/utils */ \"(ssr)/./lib/utils.ts\");\n\n\n\n\n\nconst buttonVariants = (0,class_variance_authority__WEBPACK_IMPORTED_MODULE_2__.cva)(\"inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0\", {\n variants: {\n variant: {\n default: \"bg-primary text-primary-foreground hover:bg-primary/90\",\n destructive: \"bg-destructive text-destructive-foreground hover:bg-destructive/90\",\n outline: \"border border-input bg-background hover:bg-accent hover:text-accent-foreground\",\n secondary: \"bg-secondary text-secondary-foreground hover:bg-secondary/80\",\n ghost: \"hover:bg-accent hover:text-accent-foreground\",\n link: \"text-primary underline-offset-4 hover:underline\"\n },\n size: {\n default: \"h-10 px-4 py-2\",\n sm: \"h-9 rounded-md px-3\",\n lg: \"h-11 rounded-md px-8\",\n icon: \"h-10 w-10\"\n }\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\"\n }\n});\nconst Button = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_1__.forwardRef(({ className, variant, size, asChild = false, ...props }, ref)=>{\n const Comp = asChild ? _radix_ui_react_slot__WEBPACK_IMPORTED_MODULE_4__.Slot : \"button\";\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(Comp, {\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_3__.cn)(buttonVariants({\n variant,\n size,\n className\n })),\n ref: ref,\n ...props\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/button.tsx\",\n lineNumber: 46,\n columnNumber: 7\n }, undefined);\n});\nButton.displayName = \"Button\";\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9jb21wb25lbnRzL3VpL2J1dHRvbi50c3giLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7OztBQUE4QjtBQUNhO0FBQ3NCO0FBRWpDO0FBRWhDLE1BQU1JLGlCQUFpQkYsNkRBQUdBLENBQ3hCLDRWQUNBO0lBQ0VHLFVBQVU7UUFDUkMsU0FBUztZQUNQQyxTQUFTO1lBQ1RDLGFBQ0U7WUFDRkMsU0FDRTtZQUNGQyxXQUNFO1lBQ0ZDLE9BQU87WUFDUEMsTUFBTTtRQUNSO1FBQ0FDLE1BQU07WUFDSk4sU0FBUztZQUNUTyxJQUFJO1lBQ0pDLElBQUk7WUFDSkMsTUFBTTtRQUNSO0lBQ0Y7SUFDQUMsaUJBQWlCO1FBQ2ZYLFNBQVM7UUFDVE8sTUFBTTtJQUNSO0FBQ0Y7QUFTRixNQUFNSyx1QkFBU2xCLDZDQUFnQixDQUM3QixDQUFDLEVBQUVvQixTQUFTLEVBQUVkLE9BQU8sRUFBRU8sSUFBSSxFQUFFUSxVQUFVLEtBQUssRUFBRSxHQUFHQyxPQUFPLEVBQUVDO0lBQ3hELE1BQU1DLE9BQU9ILFVBQVVwQixzREFBSUEsR0FBRztJQUM5QixxQkFDRSw4REFBQ3VCO1FBQ0NKLFdBQVdqQiw4Q0FBRUEsQ0FBQ0MsZUFBZTtZQUFFRTtZQUFTTztZQUFNTztRQUFVO1FBQ3hERyxLQUFLQTtRQUNKLEdBQUdELEtBQUs7Ozs7OztBQUdmO0FBRUZKLE9BQU9PLFdBQVcsR0FBRztBQUVZIiwic291cmNlcyI6WyIvVXNlcnMvYWxtYS9Eb2N1bWVudHMvTmVhaE5ldy9jb21wb25lbnRzL3VpL2J1dHRvbi50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgUmVhY3QgZnJvbSBcInJlYWN0XCJcbmltcG9ydCB7IFNsb3QgfSBmcm9tIFwiQHJhZGl4LXVpL3JlYWN0LXNsb3RcIlxuaW1wb3J0IHsgY3ZhLCB0eXBlIFZhcmlhbnRQcm9wcyB9IGZyb20gXCJjbGFzcy12YXJpYW5jZS1hdXRob3JpdHlcIlxuXG5pbXBvcnQgeyBjbiB9IGZyb20gXCJAL2xpYi91dGlsc1wiXG5cbmNvbnN0IGJ1dHRvblZhcmlhbnRzID0gY3ZhKFxuICBcImlubGluZS1mbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciBnYXAtMiB3aGl0ZXNwYWNlLW5vd3JhcCByb3VuZGVkLW1kIHRleHQtc20gZm9udC1tZWRpdW0gcmluZy1vZmZzZXQtYmFja2dyb3VuZCB0cmFuc2l0aW9uLWNvbG9ycyBmb2N1cy12aXNpYmxlOm91dGxpbmUtbm9uZSBmb2N1cy12aXNpYmxlOnJpbmctMiBmb2N1cy12aXNpYmxlOnJpbmctcmluZyBmb2N1cy12aXNpYmxlOnJpbmctb2Zmc2V0LTIgZGlzYWJsZWQ6cG9pbnRlci1ldmVudHMtbm9uZSBkaXNhYmxlZDpvcGFjaXR5LTUwIFsmX3N2Z106cG9pbnRlci1ldmVudHMtbm9uZSBbJl9zdmddOnNpemUtNCBbJl9zdmddOnNocmluay0wXCIsXG4gIHtcbiAgICB2YXJpYW50czoge1xuICAgICAgdmFyaWFudDoge1xuICAgICAgICBkZWZhdWx0OiBcImJnLXByaW1hcnkgdGV4dC1wcmltYXJ5LWZvcmVncm91bmQgaG92ZXI6YmctcHJpbWFyeS85MFwiLFxuICAgICAgICBkZXN0cnVjdGl2ZTpcbiAgICAgICAgICBcImJnLWRlc3RydWN0aXZlIHRleHQtZGVzdHJ1Y3RpdmUtZm9yZWdyb3VuZCBob3ZlcjpiZy1kZXN0cnVjdGl2ZS85MFwiLFxuICAgICAgICBvdXRsaW5lOlxuICAgICAgICAgIFwiYm9yZGVyIGJvcmRlci1pbnB1dCBiZy1iYWNrZ3JvdW5kIGhvdmVyOmJnLWFjY2VudCBob3Zlcjp0ZXh0LWFjY2VudC1mb3JlZ3JvdW5kXCIsXG4gICAgICAgIHNlY29uZGFyeTpcbiAgICAgICAgICBcImJnLXNlY29uZGFyeSB0ZXh0LXNlY29uZGFyeS1mb3JlZ3JvdW5kIGhvdmVyOmJnLXNlY29uZGFyeS84MFwiLFxuICAgICAgICBnaG9zdDogXCJob3ZlcjpiZy1hY2NlbnQgaG92ZXI6dGV4dC1hY2NlbnQtZm9yZWdyb3VuZFwiLFxuICAgICAgICBsaW5rOiBcInRleHQtcHJpbWFyeSB1bmRlcmxpbmUtb2Zmc2V0LTQgaG92ZXI6dW5kZXJsaW5lXCIsXG4gICAgICB9LFxuICAgICAgc2l6ZToge1xuICAgICAgICBkZWZhdWx0OiBcImgtMTAgcHgtNCBweS0yXCIsXG4gICAgICAgIHNtOiBcImgtOSByb3VuZGVkLW1kIHB4LTNcIixcbiAgICAgICAgbGc6IFwiaC0xMSByb3VuZGVkLW1kIHB4LThcIixcbiAgICAgICAgaWNvbjogXCJoLTEwIHctMTBcIixcbiAgICAgIH0sXG4gICAgfSxcbiAgICBkZWZhdWx0VmFyaWFudHM6IHtcbiAgICAgIHZhcmlhbnQ6IFwiZGVmYXVsdFwiLFxuICAgICAgc2l6ZTogXCJkZWZhdWx0XCIsXG4gICAgfSxcbiAgfVxuKVxuXG5leHBvcnQgaW50ZXJmYWNlIEJ1dHRvblByb3BzXG4gIGV4dGVuZHMgUmVhY3QuQnV0dG9uSFRNTEF0dHJpYnV0ZXM8SFRNTEJ1dHRvbkVsZW1lbnQ+LFxuICAgIFZhcmlhbnRQcm9wczx0eXBlb2YgYnV0dG9uVmFyaWFudHM+IHtcbiAgYXNDaGlsZD86IGJvb2xlYW5cbn1cblxuY29uc3QgQnV0dG9uID0gUmVhY3QuZm9yd2FyZFJlZjxIVE1MQnV0dG9uRWxlbWVudCwgQnV0dG9uUHJvcHM+KFxuICAoeyBjbGFzc05hbWUsIHZhcmlhbnQsIHNpemUsIGFzQ2hpbGQgPSBmYWxzZSwgLi4ucHJvcHMgfSwgcmVmKSA9PiB7XG4gICAgY29uc3QgQ29tcCA9IGFzQ2hpbGQgPyBTbG90IDogXCJidXR0b25cIlxuICAgIHJldHVybiAoXG4gICAgICA8Q29tcFxuICAgICAgICBjbGFzc05hbWU9e2NuKGJ1dHRvblZhcmlhbnRzKHsgdmFyaWFudCwgc2l6ZSwgY2xhc3NOYW1lIH0pKX1cbiAgICAgICAgcmVmPXtyZWZ9XG4gICAgICAgIHsuLi5wcm9wc31cbiAgICAgIC8+XG4gICAgKVxuICB9XG4pXG5CdXR0b24uZGlzcGxheU5hbWUgPSBcIkJ1dHRvblwiXG5cbmV4cG9ydCB7IEJ1dHRvbiwgYnV0dG9uVmFyaWFudHMgfVxuIl0sIm5hbWVzIjpbIlJlYWN0IiwiU2xvdCIsImN2YSIsImNuIiwiYnV0dG9uVmFyaWFudHMiLCJ2YXJpYW50cyIsInZhcmlhbnQiLCJkZWZhdWx0IiwiZGVzdHJ1Y3RpdmUiLCJvdXRsaW5lIiwic2Vjb25kYXJ5IiwiZ2hvc3QiLCJsaW5rIiwic2l6ZSIsInNtIiwibGciLCJpY29uIiwiZGVmYXVsdFZhcmlhbnRzIiwiQnV0dG9uIiwiZm9yd2FyZFJlZiIsImNsYXNzTmFtZSIsImFzQ2hpbGQiLCJwcm9wcyIsInJlZiIsIkNvbXAiLCJkaXNwbGF5TmFtZSJdLCJpZ25vcmVMaXN0IjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./components/ui/button.tsx\n");
/***/ }),
/***/ "(ssr)/./components/ui/card.tsx":
/*!********************************!*\
!*** ./components/ui/card.tsx ***!
\********************************/
/***/ ((__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 */ Card: () => (/* binding */ Card),\n/* harmony export */ CardContent: () => (/* binding */ CardContent),\n/* harmony export */ CardDescription: () => (/* binding */ CardDescription),\n/* harmony export */ CardFooter: () => (/* binding */ CardFooter),\n/* harmony export */ CardHeader: () => (/* binding */ CardHeader),\n/* harmony export */ CardTitle: () => (/* binding */ CardTitle)\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/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/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 _lib_utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/lib/utils */ \"(ssr)/./lib/utils.ts\");\n\n\n\nconst Card = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_1__.forwardRef(({ className, ...props }, ref)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n ref: ref,\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_2__.cn)(\"rounded-lg border bg-card text-card-foreground shadow-sm\", className),\n ...props\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/card.tsx\",\n lineNumber: 9,\n columnNumber: 3\n }, undefined));\nCard.displayName = \"Card\";\nconst CardHeader = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_1__.forwardRef(({ className, ...props }, ref)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n ref: ref,\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_2__.cn)(\"flex flex-col space-y-1.5 p-6\", className),\n ...props\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/card.tsx\",\n lineNumber: 24,\n columnNumber: 3\n }, undefined));\nCardHeader.displayName = \"CardHeader\";\nconst CardTitle = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_1__.forwardRef(({ className, ...props }, ref)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n ref: ref,\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_2__.cn)(\"text-2xl font-semibold leading-none tracking-tight\", className),\n ...props\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/card.tsx\",\n lineNumber: 36,\n columnNumber: 3\n }, undefined));\nCardTitle.displayName = \"CardTitle\";\nconst CardDescription = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_1__.forwardRef(({ className, ...props }, ref)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n ref: ref,\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_2__.cn)(\"text-sm text-muted-foreground\", className),\n ...props\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/card.tsx\",\n lineNumber: 51,\n columnNumber: 3\n }, undefined));\nCardDescription.displayName = \"CardDescription\";\nconst CardContent = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_1__.forwardRef(({ className, ...props }, ref)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n ref: ref,\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_2__.cn)(\"p-6 pt-0\", className),\n ...props\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/card.tsx\",\n lineNumber: 63,\n columnNumber: 3\n }, undefined));\nCardContent.displayName = \"CardContent\";\nconst CardFooter = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_1__.forwardRef(({ className, ...props }, ref)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n ref: ref,\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_2__.cn)(\"flex items-center p-6 pt-0\", className),\n ...props\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/card.tsx\",\n lineNumber: 71,\n columnNumber: 3\n }, undefined));\nCardFooter.displayName = \"CardFooter\";\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9jb21wb25lbnRzL3VpL2NhcmQudHN4IiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7OztBQUE4QjtBQUVFO0FBRWhDLE1BQU1FLHFCQUFPRiw2Q0FBZ0IsQ0FHM0IsQ0FBQyxFQUFFSSxTQUFTLEVBQUUsR0FBR0MsT0FBTyxFQUFFQyxvQkFDMUIsOERBQUNDO1FBQ0NELEtBQUtBO1FBQ0xGLFdBQVdILDhDQUFFQSxDQUNYLDREQUNBRztRQUVELEdBQUdDLEtBQUs7Ozs7OztBQUdiSCxLQUFLTSxXQUFXLEdBQUc7QUFFbkIsTUFBTUMsMkJBQWFULDZDQUFnQixDQUdqQyxDQUFDLEVBQUVJLFNBQVMsRUFBRSxHQUFHQyxPQUFPLEVBQUVDLG9CQUMxQiw4REFBQ0M7UUFDQ0QsS0FBS0E7UUFDTEYsV0FBV0gsOENBQUVBLENBQUMsaUNBQWlDRztRQUM5QyxHQUFHQyxLQUFLOzs7Ozs7QUFHYkksV0FBV0QsV0FBVyxHQUFHO0FBRXpCLE1BQU1FLDBCQUFZViw2Q0FBZ0IsQ0FHaEMsQ0FBQyxFQUFFSSxTQUFTLEVBQUUsR0FBR0MsT0FBTyxFQUFFQyxvQkFDMUIsOERBQUNDO1FBQ0NELEtBQUtBO1FBQ0xGLFdBQVdILDhDQUFFQSxDQUNYLHNEQUNBRztRQUVELEdBQUdDLEtBQUs7Ozs7OztBQUdiSyxVQUFVRixXQUFXLEdBQUc7QUFFeEIsTUFBTUcsZ0NBQWtCWCw2Q0FBZ0IsQ0FHdEMsQ0FBQyxFQUFFSSxTQUFTLEVBQUUsR0FBR0MsT0FBTyxFQUFFQyxvQkFDMUIsOERBQUNDO1FBQ0NELEtBQUtBO1FBQ0xGLFdBQVdILDhDQUFFQSxDQUFDLGlDQUFpQ0c7UUFDOUMsR0FBR0MsS0FBSzs7Ozs7O0FBR2JNLGdCQUFnQkgsV0FBVyxHQUFHO0FBRTlCLE1BQU1JLDRCQUFjWiw2Q0FBZ0IsQ0FHbEMsQ0FBQyxFQUFFSSxTQUFTLEVBQUUsR0FBR0MsT0FBTyxFQUFFQyxvQkFDMUIsOERBQUNDO1FBQUlELEtBQUtBO1FBQUtGLFdBQVdILDhDQUFFQSxDQUFDLFlBQVlHO1FBQWEsR0FBR0MsS0FBSzs7Ozs7O0FBRWhFTyxZQUFZSixXQUFXLEdBQUc7QUFFMUIsTUFBTUssMkJBQWFiLDZDQUFnQixDQUdqQyxDQUFDLEVBQUVJLFNBQVMsRUFBRSxHQUFHQyxPQUFPLEVBQUVDLG9CQUMxQiw4REFBQ0M7UUFDQ0QsS0FBS0E7UUFDTEYsV0FBV0gsOENBQUVBLENBQUMsOEJBQThCRztRQUMzQyxHQUFHQyxLQUFLOzs7Ozs7QUFHYlEsV0FBV0wsV0FBVyxHQUFHO0FBRXVEIiwic291cmNlcyI6WyIvVXNlcnMvYWxtYS9Eb2N1bWVudHMvTmVhaE5ldy9jb21wb25lbnRzL3VpL2NhcmQudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIFJlYWN0IGZyb20gXCJyZWFjdFwiXG5cbmltcG9ydCB7IGNuIH0gZnJvbSBcIkAvbGliL3V0aWxzXCJcblxuY29uc3QgQ2FyZCA9IFJlYWN0LmZvcndhcmRSZWY8XG4gIEhUTUxEaXZFbGVtZW50LFxuICBSZWFjdC5IVE1MQXR0cmlidXRlczxIVE1MRGl2RWxlbWVudD5cbj4oKHsgY2xhc3NOYW1lLCAuLi5wcm9wcyB9LCByZWYpID0+IChcbiAgPGRpdlxuICAgIHJlZj17cmVmfVxuICAgIGNsYXNzTmFtZT17Y24oXG4gICAgICBcInJvdW5kZWQtbGcgYm9yZGVyIGJnLWNhcmQgdGV4dC1jYXJkLWZvcmVncm91bmQgc2hhZG93LXNtXCIsXG4gICAgICBjbGFzc05hbWVcbiAgICApfVxuICAgIHsuLi5wcm9wc31cbiAgLz5cbikpXG5DYXJkLmRpc3BsYXlOYW1lID0gXCJDYXJkXCJcblxuY29uc3QgQ2FyZEhlYWRlciA9IFJlYWN0LmZvcndhcmRSZWY8XG4gIEhUTUxEaXZFbGVtZW50LFxuICBSZWFjdC5IVE1MQXR0cmlidXRlczxIVE1MRGl2RWxlbWVudD5cbj4oKHsgY2xhc3NOYW1lLCAuLi5wcm9wcyB9LCByZWYpID0+IChcbiAgPGRpdlxuICAgIHJlZj17cmVmfVxuICAgIGNsYXNzTmFtZT17Y24oXCJmbGV4IGZsZXgtY29sIHNwYWNlLXktMS41IHAtNlwiLCBjbGFzc05hbWUpfVxuICAgIHsuLi5wcm9wc31cbiAgLz5cbikpXG5DYXJkSGVhZGVyLmRpc3BsYXlOYW1lID0gXCJDYXJkSGVhZGVyXCJcblxuY29uc3QgQ2FyZFRpdGxlID0gUmVhY3QuZm9yd2FyZFJlZjxcbiAgSFRNTERpdkVsZW1lbnQsXG4gIFJlYWN0LkhUTUxBdHRyaWJ1dGVzPEhUTUxEaXZFbGVtZW50PlxuPigoeyBjbGFzc05hbWUsIC4uLnByb3BzIH0sIHJlZikgPT4gKFxuICA8ZGl2XG4gICAgcmVmPXtyZWZ9XG4gICAgY2xhc3NOYW1lPXtjbihcbiAgICAgIFwidGV4dC0yeGwgZm9udC1zZW1pYm9sZCBsZWFkaW5nLW5vbmUgdHJhY2tpbmctdGlnaHRcIixcbiAgICAgIGNsYXNzTmFtZVxuICAgICl9XG4gICAgey4uLnByb3BzfVxuICAvPlxuKSlcbkNhcmRUaXRsZS5kaXNwbGF5TmFtZSA9IFwiQ2FyZFRpdGxlXCJcblxuY29uc3QgQ2FyZERlc2NyaXB0aW9uID0gUmVhY3QuZm9yd2FyZFJlZjxcbiAgSFRNTERpdkVsZW1lbnQsXG4gIFJlYWN0LkhUTUxBdHRyaWJ1dGVzPEhUTUxEaXZFbGVtZW50PlxuPigoeyBjbGFzc05hbWUsIC4uLnByb3BzIH0sIHJlZikgPT4gKFxuICA8ZGl2XG4gICAgcmVmPXtyZWZ9XG4gICAgY2xhc3NOYW1lPXtjbihcInRleHQtc20gdGV4dC1tdXRlZC1mb3JlZ3JvdW5kXCIsIGNsYXNzTmFtZSl9XG4gICAgey4uLnByb3BzfVxuICAvPlxuKSlcbkNhcmREZXNjcmlwdGlvbi5kaXNwbGF5TmFtZSA9IFwiQ2FyZERlc2NyaXB0aW9uXCJcblxuY29uc3QgQ2FyZENvbnRlbnQgPSBSZWFjdC5mb3J3YXJkUmVmPFxuICBIVE1MRGl2RWxlbWVudCxcbiAgUmVhY3QuSFRNTEF0dHJpYnV0ZXM8SFRNTERpdkVsZW1lbnQ+XG4+KCh7IGNsYXNzTmFtZSwgLi4ucHJvcHMgfSwgcmVmKSA9PiAoXG4gIDxkaXYgcmVmPXtyZWZ9IGNsYXNzTmFtZT17Y24oXCJwLTYgcHQtMFwiLCBjbGFzc05hbWUpfSB7Li4ucHJvcHN9IC8+XG4pKVxuQ2FyZENvbnRlbnQuZGlzcGxheU5hbWUgPSBcIkNhcmRDb250ZW50XCJcblxuY29uc3QgQ2FyZEZvb3RlciA9IFJlYWN0LmZvcndhcmRSZWY8XG4gIEhUTUxEaXZFbGVtZW50LFxuICBSZWFjdC5IVE1MQXR0cmlidXRlczxIVE1MRGl2RWxlbWVudD5cbj4oKHsgY2xhc3NOYW1lLCAuLi5wcm9wcyB9LCByZWYpID0+IChcbiAgPGRpdlxuICAgIHJlZj17cmVmfVxuICAgIGNsYXNzTmFtZT17Y24oXCJmbGV4IGl0ZW1zLWNlbnRlciBwLTYgcHQtMFwiLCBjbGFzc05hbWUpfVxuICAgIHsuLi5wcm9wc31cbiAgLz5cbikpXG5DYXJkRm9vdGVyLmRpc3BsYXlOYW1lID0gXCJDYXJkRm9vdGVyXCJcblxuZXhwb3J0IHsgQ2FyZCwgQ2FyZEhlYWRlciwgQ2FyZEZvb3RlciwgQ2FyZFRpdGxlLCBDYXJkRGVzY3JpcHRpb24sIENhcmRDb250ZW50IH1cbiJdLCJuYW1lcyI6WyJSZWFjdCIsImNuIiwiQ2FyZCIsImZvcndhcmRSZWYiLCJjbGFzc05hbWUiLCJwcm9wcyIsInJlZiIsImRpdiIsImRpc3BsYXlOYW1lIiwiQ2FyZEhlYWRlciIsIkNhcmRUaXRsZSIsIkNhcmREZXNjcmlwdGlvbiIsIkNhcmRDb250ZW50IiwiQ2FyZEZvb3RlciJdLCJpZ25vcmVMaXN0IjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./components/ui/card.tsx\n");
/***/ }),
/***/ "(ssr)/./components/ui/dialog.tsx":
/*!**********************************!*\
!*** ./components/ui/dialog.tsx ***!
\**********************************/
/***/ ((__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 */ Dialog: () => (/* binding */ Dialog),\n/* harmony export */ DialogClose: () => (/* binding */ DialogClose),\n/* harmony export */ DialogContent: () => (/* binding */ DialogContent),\n/* harmony export */ DialogDescription: () => (/* binding */ DialogDescription),\n/* harmony export */ DialogFooter: () => (/* binding */ DialogFooter),\n/* harmony export */ DialogHeader: () => (/* binding */ DialogHeader),\n/* harmony export */ DialogOverlay: () => (/* binding */ DialogOverlay),\n/* harmony export */ DialogPortal: () => (/* binding */ DialogPortal),\n/* harmony export */ DialogTitle: () => (/* binding */ DialogTitle),\n/* harmony export */ DialogTrigger: () => (/* binding */ DialogTrigger)\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/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/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 _radix_ui_react_dialog__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @radix-ui/react-dialog */ \"(ssr)/./node_modules/@radix-ui/react-dialog/dist/index.mjs\");\n/* harmony import */ var _barrel_optimize_names_X_lucide_react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! __barrel_optimize__?names=X!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/x.js\");\n/* harmony import */ var _lib_utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/lib/utils */ \"(ssr)/./lib/utils.ts\");\n/* __next_internal_client_entry_do_not_use__ Dialog,DialogPortal,DialogOverlay,DialogClose,DialogTrigger,DialogContent,DialogHeader,DialogFooter,DialogTitle,DialogDescription auto */ \n\n\n\n\nconst Dialog = _radix_ui_react_dialog__WEBPACK_IMPORTED_MODULE_3__.Root;\nconst DialogTrigger = _radix_ui_react_dialog__WEBPACK_IMPORTED_MODULE_3__.Trigger;\nconst DialogPortal = _radix_ui_react_dialog__WEBPACK_IMPORTED_MODULE_3__.Portal;\nconst DialogClose = _radix_ui_react_dialog__WEBPACK_IMPORTED_MODULE_3__.Close;\nconst DialogOverlay = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_1__.forwardRef(({ className, ...props }, ref)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_radix_ui_react_dialog__WEBPACK_IMPORTED_MODULE_3__.Overlay, {\n ref: ref,\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_2__.cn)(\"fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0\", className),\n ...props\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/dialog.tsx\",\n lineNumber: 21,\n columnNumber: 3\n }, undefined));\nDialogOverlay.displayName = _radix_ui_react_dialog__WEBPACK_IMPORTED_MODULE_3__.Overlay.displayName;\nconst DialogContent = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_1__.forwardRef(({ className, children, ...props }, ref)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(DialogPortal, {\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(DialogOverlay, {}, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/dialog.tsx\",\n lineNumber: 37,\n columnNumber: 5\n }, undefined),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_radix_ui_react_dialog__WEBPACK_IMPORTED_MODULE_3__.Content, {\n ref: ref,\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_2__.cn)(\"fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-white p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg\", className),\n ...props,\n children: [\n children,\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_radix_ui_react_dialog__WEBPACK_IMPORTED_MODULE_3__.Close, {\n className: \"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_X_lucide_react__WEBPACK_IMPORTED_MODULE_4__[\"default\"], {\n className: \"h-4 w-4\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/dialog.tsx\",\n lineNumber: 48,\n columnNumber: 9\n }, undefined),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"sr-only\",\n children: \"Close\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/dialog.tsx\",\n lineNumber: 49,\n columnNumber: 9\n }, undefined)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/dialog.tsx\",\n lineNumber: 47,\n columnNumber: 7\n }, undefined)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/dialog.tsx\",\n lineNumber: 38,\n columnNumber: 5\n }, undefined)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/dialog.tsx\",\n lineNumber: 36,\n columnNumber: 3\n }, undefined));\nDialogContent.displayName = _radix_ui_react_dialog__WEBPACK_IMPORTED_MODULE_3__.Content.displayName;\nconst DialogHeader = ({ className, ...props })=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_2__.cn)(\"flex flex-col space-y-1.5 text-center sm:text-left\", className),\n ...props\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/dialog.tsx\",\n lineNumber: 60,\n columnNumber: 3\n }, undefined);\nDialogHeader.displayName = \"DialogHeader\";\nconst DialogFooter = ({ className, ...props })=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_2__.cn)(\"flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2\", className),\n ...props\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/dialog.tsx\",\n lineNumber: 74,\n columnNumber: 3\n }, undefined);\nDialogFooter.displayName = \"DialogFooter\";\nconst DialogTitle = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_1__.forwardRef(({ className, ...props }, ref)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_radix_ui_react_dialog__WEBPACK_IMPORTED_MODULE_3__.Title, {\n ref: ref,\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_2__.cn)(\"text-lg font-semibold leading-none tracking-tight\", className),\n ...props\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/dialog.tsx\",\n lineNumber: 88,\n columnNumber: 3\n }, undefined));\nDialogTitle.displayName = _radix_ui_react_dialog__WEBPACK_IMPORTED_MODULE_3__.Title.displayName;\nconst DialogDescription = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_1__.forwardRef(({ className, ...props }, ref)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_radix_ui_react_dialog__WEBPACK_IMPORTED_MODULE_3__.Description, {\n ref: ref,\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_2__.cn)(\"text-sm text-muted-foreground\", className),\n ...props\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/dialog.tsx\",\n lineNumber: 103,\n columnNumber: 3\n }, undefined));\nDialogDescription.displayName = _radix_ui_react_dialog__WEBPACK_IMPORTED_MODULE_3__.Description.displayName;\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9jb21wb25lbnRzL3VpL2RpYWxvZy50c3giLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRThCO0FBQzJCO0FBQ3pCO0FBRUE7QUFFaEMsTUFBTUksU0FBU0gsd0RBQW9CO0FBRW5DLE1BQU1LLGdCQUFnQkwsMkRBQXVCO0FBRTdDLE1BQU1PLGVBQWVQLDBEQUFzQjtBQUUzQyxNQUFNUyxjQUFjVCx5REFBcUI7QUFFekMsTUFBTVcsOEJBQWdCWiw2Q0FBZ0IsQ0FHcEMsQ0FBQyxFQUFFYyxTQUFTLEVBQUUsR0FBR0MsT0FBTyxFQUFFQyxvQkFDMUIsOERBQUNmLDJEQUF1QjtRQUN0QmUsS0FBS0E7UUFDTEYsV0FBV1gsOENBQUVBLENBQ1gsMkpBQ0FXO1FBRUQsR0FBR0MsS0FBSzs7Ozs7O0FBR2JILGNBQWNNLFdBQVcsR0FBR2pCLDJEQUF1QixDQUFDaUIsV0FBVztBQUUvRCxNQUFNQyw4QkFBZ0JuQiw2Q0FBZ0IsQ0FHcEMsQ0FBQyxFQUFFYyxTQUFTLEVBQUVNLFFBQVEsRUFBRSxHQUFHTCxPQUFPLEVBQUVDLG9CQUNwQyw4REFBQ1I7OzBCQUNDLDhEQUFDSTs7Ozs7MEJBQ0QsOERBQUNYLDJEQUF1QjtnQkFDdEJlLEtBQUtBO2dCQUNMRixXQUFXWCw4Q0FBRUEsQ0FDWCwwZkFDQVc7Z0JBRUQsR0FBR0MsS0FBSzs7b0JBRVJLO2tDQUNELDhEQUFDbkIseURBQXFCO3dCQUFDYSxXQUFVOzswQ0FDL0IsOERBQUNaLDZFQUFDQTtnQ0FBQ1ksV0FBVTs7Ozs7OzBDQUNiLDhEQUFDUTtnQ0FBS1IsV0FBVTswQ0FBVTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBS2xDSyxjQUFjRCxXQUFXLEdBQUdqQiwyREFBdUIsQ0FBQ2lCLFdBQVc7QUFFL0QsTUFBTUssZUFBZSxDQUFDLEVBQ3BCVCxTQUFTLEVBQ1QsR0FBR0MsT0FDa0MsaUJBQ3JDLDhEQUFDUztRQUNDVixXQUFXWCw4Q0FBRUEsQ0FDWCxzREFDQVc7UUFFRCxHQUFHQyxLQUFLOzs7Ozs7QUFHYlEsYUFBYUwsV0FBVyxHQUFHO0FBRTNCLE1BQU1PLGVBQWUsQ0FBQyxFQUNwQlgsU0FBUyxFQUNULEdBQUdDLE9BQ2tDLGlCQUNyQyw4REFBQ1M7UUFDQ1YsV0FBV1gsOENBQUVBLENBQ1gsaUVBQ0FXO1FBRUQsR0FBR0MsS0FBSzs7Ozs7O0FBR2JVLGFBQWFQLFdBQVcsR0FBRztBQUUzQixNQUFNUSw0QkFBYzFCLDZDQUFnQixDQUdsQyxDQUFDLEVBQUVjLFNBQVMsRUFBRSxHQUFHQyxPQUFPLEVBQUVDLG9CQUMxQiw4REFBQ2YseURBQXFCO1FBQ3BCZSxLQUFLQTtRQUNMRixXQUFXWCw4Q0FBRUEsQ0FDWCxxREFDQVc7UUFFRCxHQUFHQyxLQUFLOzs7Ozs7QUFHYlcsWUFBWVIsV0FBVyxHQUFHakIseURBQXFCLENBQUNpQixXQUFXO0FBRTNELE1BQU1VLGtDQUFvQjVCLDZDQUFnQixDQUd4QyxDQUFDLEVBQUVjLFNBQVMsRUFBRSxHQUFHQyxPQUFPLEVBQUVDLG9CQUMxQiw4REFBQ2YsK0RBQTJCO1FBQzFCZSxLQUFLQTtRQUNMRixXQUFXWCw4Q0FBRUEsQ0FBQyxpQ0FBaUNXO1FBQzlDLEdBQUdDLEtBQUs7Ozs7OztBQUdiYSxrQkFBa0JWLFdBQVcsR0FBR2pCLCtEQUEyQixDQUFDaUIsV0FBVztBQWF0RSIsInNvdXJjZXMiOlsiL1VzZXJzL2FsbWEvRG9jdW1lbnRzL05lYWhOZXcvY29tcG9uZW50cy91aS9kaWFsb2cudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIGNsaWVudFwiXG5cbmltcG9ydCAqIGFzIFJlYWN0IGZyb20gXCJyZWFjdFwiXG5pbXBvcnQgKiBhcyBEaWFsb2dQcmltaXRpdmUgZnJvbSBcIkByYWRpeC11aS9yZWFjdC1kaWFsb2dcIlxuaW1wb3J0IHsgWCB9IGZyb20gXCJsdWNpZGUtcmVhY3RcIlxuXG5pbXBvcnQgeyBjbiB9IGZyb20gXCJAL2xpYi91dGlsc1wiXG5cbmNvbnN0IERpYWxvZyA9IERpYWxvZ1ByaW1pdGl2ZS5Sb290XG5cbmNvbnN0IERpYWxvZ1RyaWdnZXIgPSBEaWFsb2dQcmltaXRpdmUuVHJpZ2dlclxuXG5jb25zdCBEaWFsb2dQb3J0YWwgPSBEaWFsb2dQcmltaXRpdmUuUG9ydGFsXG5cbmNvbnN0IERpYWxvZ0Nsb3NlID0gRGlhbG9nUHJpbWl0aXZlLkNsb3NlXG5cbmNvbnN0IERpYWxvZ092ZXJsYXkgPSBSZWFjdC5mb3J3YXJkUmVmPFxuICBSZWFjdC5FbGVtZW50UmVmPHR5cGVvZiBEaWFsb2dQcmltaXRpdmUuT3ZlcmxheT4sXG4gIFJlYWN0LkNvbXBvbmVudFByb3BzV2l0aG91dFJlZjx0eXBlb2YgRGlhbG9nUHJpbWl0aXZlLk92ZXJsYXk+XG4+KCh7IGNsYXNzTmFtZSwgLi4ucHJvcHMgfSwgcmVmKSA9PiAoXG4gIDxEaWFsb2dQcmltaXRpdmUuT3ZlcmxheVxuICAgIHJlZj17cmVmfVxuICAgIGNsYXNzTmFtZT17Y24oXG4gICAgICBcImZpeGVkIGluc2V0LTAgei01MCBiZy1ibGFjay84MCAgZGF0YS1bc3RhdGU9b3Blbl06YW5pbWF0ZS1pbiBkYXRhLVtzdGF0ZT1jbG9zZWRdOmFuaW1hdGUtb3V0IGRhdGEtW3N0YXRlPWNsb3NlZF06ZmFkZS1vdXQtMCBkYXRhLVtzdGF0ZT1vcGVuXTpmYWRlLWluLTBcIixcbiAgICAgIGNsYXNzTmFtZVxuICAgICl9XG4gICAgey4uLnByb3BzfVxuICAvPlxuKSlcbkRpYWxvZ092ZXJsYXkuZGlzcGxheU5hbWUgPSBEaWFsb2dQcmltaXRpdmUuT3ZlcmxheS5kaXNwbGF5TmFtZVxuXG5jb25zdCBEaWFsb2dDb250ZW50ID0gUmVhY3QuZm9yd2FyZFJlZjxcbiAgUmVhY3QuRWxlbWVudFJlZjx0eXBlb2YgRGlhbG9nUHJpbWl0aXZlLkNvbnRlbnQ+LFxuICBSZWFjdC5Db21wb25lbnRQcm9wc1dpdGhvdXRSZWY8dHlwZW9mIERpYWxvZ1ByaW1pdGl2ZS5Db250ZW50PlxuPigoeyBjbGFzc05hbWUsIGNoaWxkcmVuLCAuLi5wcm9wcyB9LCByZWYpID0+IChcbiAgPERpYWxvZ1BvcnRhbD5cbiAgICA8RGlhbG9nT3ZlcmxheSAvPlxuICAgIDxEaWFsb2dQcmltaXRpdmUuQ29udGVudFxuICAgICAgcmVmPXtyZWZ9XG4gICAgICBjbGFzc05hbWU9e2NuKFxuICAgICAgICBcImZpeGVkIGxlZnQtWzUwJV0gdG9wLVs1MCVdIHotNTAgZ3JpZCB3LWZ1bGwgbWF4LXctbGcgdHJhbnNsYXRlLXgtWy01MCVdIHRyYW5zbGF0ZS15LVstNTAlXSBnYXAtNCBib3JkZXIgYmctd2hpdGUgcC02IHNoYWRvdy1sZyBkdXJhdGlvbi0yMDAgZGF0YS1bc3RhdGU9b3Blbl06YW5pbWF0ZS1pbiBkYXRhLVtzdGF0ZT1jbG9zZWRdOmFuaW1hdGUtb3V0IGRhdGEtW3N0YXRlPWNsb3NlZF06ZmFkZS1vdXQtMCBkYXRhLVtzdGF0ZT1vcGVuXTpmYWRlLWluLTAgZGF0YS1bc3RhdGU9Y2xvc2VkXTp6b29tLW91dC05NSBkYXRhLVtzdGF0ZT1vcGVuXTp6b29tLWluLTk1IGRhdGEtW3N0YXRlPWNsb3NlZF06c2xpZGUtb3V0LXRvLWxlZnQtMS8yIGRhdGEtW3N0YXRlPWNsb3NlZF06c2xpZGUtb3V0LXRvLXRvcC1bNDglXSBkYXRhLVtzdGF0ZT1vcGVuXTpzbGlkZS1pbi1mcm9tLWxlZnQtMS8yIGRhdGEtW3N0YXRlPW9wZW5dOnNsaWRlLWluLWZyb20tdG9wLVs0OCVdIHNtOnJvdW5kZWQtbGdcIixcbiAgICAgICAgY2xhc3NOYW1lXG4gICAgICApfVxuICAgICAgey4uLnByb3BzfVxuICAgID5cbiAgICAgIHtjaGlsZHJlbn1cbiAgICAgIDxEaWFsb2dQcmltaXRpdmUuQ2xvc2UgY2xhc3NOYW1lPVwiYWJzb2x1dGUgcmlnaHQtNCB0b3AtNCByb3VuZGVkLXNtIG9wYWNpdHktNzAgcmluZy1vZmZzZXQtYmFja2dyb3VuZCB0cmFuc2l0aW9uLW9wYWNpdHkgaG92ZXI6b3BhY2l0eS0xMDAgZm9jdXM6b3V0bGluZS1ub25lIGZvY3VzOnJpbmctMiBmb2N1czpyaW5nLXJpbmcgZm9jdXM6cmluZy1vZmZzZXQtMiBkaXNhYmxlZDpwb2ludGVyLWV2ZW50cy1ub25lIGRhdGEtW3N0YXRlPW9wZW5dOmJnLWFjY2VudCBkYXRhLVtzdGF0ZT1vcGVuXTp0ZXh0LW11dGVkLWZvcmVncm91bmRcIj5cbiAgICAgICAgPFggY2xhc3NOYW1lPVwiaC00IHctNFwiIC8+XG4gICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cInNyLW9ubHlcIj5DbG9zZTwvc3Bhbj5cbiAgICAgIDwvRGlhbG9nUHJpbWl0aXZlLkNsb3NlPlxuICAgIDwvRGlhbG9nUHJpbWl0aXZlLkNvbnRlbnQ+XG4gIDwvRGlhbG9nUG9ydGFsPlxuKSlcbkRpYWxvZ0NvbnRlbnQuZGlzcGxheU5hbWUgPSBEaWFsb2dQcmltaXRpdmUuQ29udGVudC5kaXNwbGF5TmFtZVxuXG5jb25zdCBEaWFsb2dIZWFkZXIgPSAoe1xuICBjbGFzc05hbWUsXG4gIC4uLnByb3BzXG59OiBSZWFjdC5IVE1MQXR0cmlidXRlczxIVE1MRGl2RWxlbWVudD4pID0+IChcbiAgPGRpdlxuICAgIGNsYXNzTmFtZT17Y24oXG4gICAgICBcImZsZXggZmxleC1jb2wgc3BhY2UteS0xLjUgdGV4dC1jZW50ZXIgc206dGV4dC1sZWZ0XCIsXG4gICAgICBjbGFzc05hbWVcbiAgICApfVxuICAgIHsuLi5wcm9wc31cbiAgLz5cbilcbkRpYWxvZ0hlYWRlci5kaXNwbGF5TmFtZSA9IFwiRGlhbG9nSGVhZGVyXCJcblxuY29uc3QgRGlhbG9nRm9vdGVyID0gKHtcbiAgY2xhc3NOYW1lLFxuICAuLi5wcm9wc1xufTogUmVhY3QuSFRNTEF0dHJpYnV0ZXM8SFRNTERpdkVsZW1lbnQ+KSA9PiAoXG4gIDxkaXZcbiAgICBjbGFzc05hbWU9e2NuKFxuICAgICAgXCJmbGV4IGZsZXgtY29sLXJldmVyc2Ugc206ZmxleC1yb3cgc206anVzdGlmeS1lbmQgc206c3BhY2UteC0yXCIsXG4gICAgICBjbGFzc05hbWVcbiAgICApfVxuICAgIHsuLi5wcm9wc31cbiAgLz5cbilcbkRpYWxvZ0Zvb3Rlci5kaXNwbGF5TmFtZSA9IFwiRGlhbG9nRm9vdGVyXCJcblxuY29uc3QgRGlhbG9nVGl0bGUgPSBSZWFjdC5mb3J3YXJkUmVmPFxuICBSZWFjdC5FbGVtZW50UmVmPHR5cGVvZiBEaWFsb2dQcmltaXRpdmUuVGl0bGU+LFxuICBSZWFjdC5Db21wb25lbnRQcm9wc1dpdGhvdXRSZWY8dHlwZW9mIERpYWxvZ1ByaW1pdGl2ZS5UaXRsZT5cbj4oKHsgY2xhc3NOYW1lLCAuLi5wcm9wcyB9LCByZWYpID0+IChcbiAgPERpYWxvZ1ByaW1pdGl2ZS5UaXRsZVxuICAgIHJlZj17cmVmfVxuICAgIGNsYXNzTmFtZT17Y24oXG4gICAgICBcInRleHQtbGcgZm9udC1zZW1pYm9sZCBsZWFkaW5nLW5vbmUgdHJhY2tpbmctdGlnaHRcIixcbiAgICAgIGNsYXNzTmFtZVxuICAgICl9XG4gICAgey4uLnByb3BzfVxuICAvPlxuKSlcbkRpYWxvZ1RpdGxlLmRpc3BsYXlOYW1lID0gRGlhbG9nUHJpbWl0aXZlLlRpdGxlLmRpc3BsYXlOYW1lXG5cbmNvbnN0IERpYWxvZ0Rlc2NyaXB0aW9uID0gUmVhY3QuZm9yd2FyZFJlZjxcbiAgUmVhY3QuRWxlbWVudFJlZjx0eXBlb2YgRGlhbG9nUHJpbWl0aXZlLkRlc2NyaXB0aW9uPixcbiAgUmVhY3QuQ29tcG9uZW50UHJvcHNXaXRob3V0UmVmPHR5cGVvZiBEaWFsb2dQcmltaXRpdmUuRGVzY3JpcHRpb24+XG4+KCh7IGNsYXNzTmFtZSwgLi4ucHJvcHMgfSwgcmVmKSA9PiAoXG4gIDxEaWFsb2dQcmltaXRpdmUuRGVzY3JpcHRpb25cbiAgICByZWY9e3JlZn1cbiAgICBjbGFzc05hbWU9e2NuKFwidGV4dC1zbSB0ZXh0LW11dGVkLWZvcmVncm91bmRcIiwgY2xhc3NOYW1lKX1cbiAgICB7Li4ucHJvcHN9XG4gIC8+XG4pKVxuRGlhbG9nRGVzY3JpcHRpb24uZGlzcGxheU5hbWUgPSBEaWFsb2dQcmltaXRpdmUuRGVzY3JpcHRpb24uZGlzcGxheU5hbWVcblxuZXhwb3J0IHtcbiAgRGlhbG9nLFxuICBEaWFsb2dQb3J0YWwsXG4gIERpYWxvZ092ZXJsYXksXG4gIERpYWxvZ0Nsb3NlLFxuICBEaWFsb2dUcmlnZ2VyLFxuICBEaWFsb2dDb250ZW50LFxuICBEaWFsb2dIZWFkZXIsXG4gIERpYWxvZ0Zvb3RlcixcbiAgRGlhbG9nVGl0bGUsXG4gIERpYWxvZ0Rlc2NyaXB0aW9uLFxufVxuIl0sIm5hbWVzIjpbIlJlYWN0IiwiRGlhbG9nUHJpbWl0aXZlIiwiWCIsImNuIiwiRGlhbG9nIiwiUm9vdCIsIkRpYWxvZ1RyaWdnZXIiLCJUcmlnZ2VyIiwiRGlhbG9nUG9ydGFsIiwiUG9ydGFsIiwiRGlhbG9nQ2xvc2UiLCJDbG9zZSIsIkRpYWxvZ092ZXJsYXkiLCJmb3J3YXJkUmVmIiwiY2xhc3NOYW1lIiwicHJvcHMiLCJyZWYiLCJPdmVybGF5IiwiZGlzcGxheU5hbWUiLCJEaWFsb2dDb250ZW50IiwiY2hpbGRyZW4iLCJDb250ZW50Iiwic3BhbiIsIkRpYWxvZ0hlYWRlciIsImRpdiIsIkRpYWxvZ0Zvb3RlciIsIkRpYWxvZ1RpdGxlIiwiVGl0bGUiLCJEaWFsb2dEZXNjcmlwdGlvbiIsIkRlc2NyaXB0aW9uIl0sImlnbm9yZUxpc3QiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./components/ui/dialog.tsx\n");
/***/ }),
/***/ "(ssr)/./components/ui/dropdown-menu.tsx":
/*!*****************************************!*\
!*** ./components/ui/dropdown-menu.tsx ***!
\*****************************************/
/***/ ((__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 */ DropdownMenu: () => (/* binding */ DropdownMenu),\n/* harmony export */ DropdownMenuCheckboxItem: () => (/* binding */ DropdownMenuCheckboxItem),\n/* harmony export */ DropdownMenuContent: () => (/* binding */ DropdownMenuContent),\n/* harmony export */ DropdownMenuGroup: () => (/* binding */ DropdownMenuGroup),\n/* harmony export */ DropdownMenuItem: () => (/* binding */ DropdownMenuItem),\n/* harmony export */ DropdownMenuLabel: () => (/* binding */ DropdownMenuLabel),\n/* harmony export */ DropdownMenuPortal: () => (/* binding */ DropdownMenuPortal),\n/* harmony export */ DropdownMenuRadioGroup: () => (/* binding */ DropdownMenuRadioGroup),\n/* harmony export */ DropdownMenuRadioItem: () => (/* binding */ DropdownMenuRadioItem),\n/* harmony export */ DropdownMenuSeparator: () => (/* binding */ DropdownMenuSeparator),\n/* harmony export */ DropdownMenuShortcut: () => (/* binding */ DropdownMenuShortcut),\n/* harmony export */ DropdownMenuSub: () => (/* binding */ DropdownMenuSub),\n/* harmony export */ DropdownMenuSubContent: () => (/* binding */ DropdownMenuSubContent),\n/* harmony export */ DropdownMenuSubTrigger: () => (/* binding */ DropdownMenuSubTrigger),\n/* harmony export */ DropdownMenuTrigger: () => (/* binding */ DropdownMenuTrigger)\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/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/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 _radix_ui_react_dropdown_menu__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @radix-ui/react-dropdown-menu */ \"(ssr)/./node_modules/@radix-ui/react-dropdown-menu/dist/index.mjs\");\n/* harmony import */ var _barrel_optimize_names_Check_ChevronRight_Circle_lucide_react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! __barrel_optimize__?names=Check,ChevronRight,Circle!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/chevron-right.js\");\n/* harmony import */ var _barrel_optimize_names_Check_ChevronRight_Circle_lucide_react__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! __barrel_optimize__?names=Check,ChevronRight,Circle!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/check.js\");\n/* harmony import */ var _barrel_optimize_names_Check_ChevronRight_Circle_lucide_react__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! __barrel_optimize__?names=Check,ChevronRight,Circle!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/circle.js\");\n/* harmony import */ var _lib_utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/lib/utils */ \"(ssr)/./lib/utils.ts\");\n/* __next_internal_client_entry_do_not_use__ DropdownMenu,DropdownMenuTrigger,DropdownMenuContent,DropdownMenuItem,DropdownMenuCheckboxItem,DropdownMenuRadioItem,DropdownMenuLabel,DropdownMenuSeparator,DropdownMenuShortcut,DropdownMenuGroup,DropdownMenuPortal,DropdownMenuSub,DropdownMenuSubContent,DropdownMenuSubTrigger,DropdownMenuRadioGroup auto */ \n\n\n\n\nconst DropdownMenu = _radix_ui_react_dropdown_menu__WEBPACK_IMPORTED_MODULE_3__.Root;\nconst DropdownMenuTrigger = _radix_ui_react_dropdown_menu__WEBPACK_IMPORTED_MODULE_3__.Trigger;\nconst DropdownMenuGroup = _radix_ui_react_dropdown_menu__WEBPACK_IMPORTED_MODULE_3__.Group;\nconst DropdownMenuPortal = _radix_ui_react_dropdown_menu__WEBPACK_IMPORTED_MODULE_3__.Portal;\nconst DropdownMenuSub = _radix_ui_react_dropdown_menu__WEBPACK_IMPORTED_MODULE_3__.Sub;\nconst DropdownMenuRadioGroup = _radix_ui_react_dropdown_menu__WEBPACK_IMPORTED_MODULE_3__.RadioGroup;\nconst DropdownMenuSubTrigger = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_1__.forwardRef(({ className, inset, children, ...props }, ref)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_radix_ui_react_dropdown_menu__WEBPACK_IMPORTED_MODULE_3__.SubTrigger, {\n ref: ref,\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_2__.cn)(\"flex cursor-default gap-2 select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent data-[state=open]:bg-accent [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0\", inset && \"pl-8\", className),\n ...props,\n children: [\n children,\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_Check_ChevronRight_Circle_lucide_react__WEBPACK_IMPORTED_MODULE_4__[\"default\"], {\n className: \"ml-auto\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/dropdown-menu.tsx\",\n lineNumber: 37,\n columnNumber: 5\n }, undefined)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/dropdown-menu.tsx\",\n lineNumber: 27,\n columnNumber: 3\n }, undefined));\nDropdownMenuSubTrigger.displayName = _radix_ui_react_dropdown_menu__WEBPACK_IMPORTED_MODULE_3__.SubTrigger.displayName;\nconst DropdownMenuSubContent = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_1__.forwardRef(({ className, ...props }, ref)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_radix_ui_react_dropdown_menu__WEBPACK_IMPORTED_MODULE_3__.SubContent, {\n ref: ref,\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_2__.cn)(\"z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2\", className),\n ...props\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/dropdown-menu.tsx\",\n lineNumber: 47,\n columnNumber: 3\n }, undefined));\nDropdownMenuSubContent.displayName = _radix_ui_react_dropdown_menu__WEBPACK_IMPORTED_MODULE_3__.SubContent.displayName;\nconst DropdownMenuContent = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_1__.forwardRef(({ className, sideOffset = 4, ...props }, ref)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_radix_ui_react_dropdown_menu__WEBPACK_IMPORTED_MODULE_3__.Portal, {\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_radix_ui_react_dropdown_menu__WEBPACK_IMPORTED_MODULE_3__.Content, {\n ref: ref,\n sideOffset: sideOffset,\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_2__.cn)(\"z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2\", className),\n ...props\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/dropdown-menu.tsx\",\n lineNumber: 64,\n columnNumber: 5\n }, undefined)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/dropdown-menu.tsx\",\n lineNumber: 63,\n columnNumber: 3\n }, undefined));\nDropdownMenuContent.displayName = _radix_ui_react_dropdown_menu__WEBPACK_IMPORTED_MODULE_3__.Content.displayName;\nconst DropdownMenuItem = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_1__.forwardRef(({ className, inset, ...props }, ref)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_radix_ui_react_dropdown_menu__WEBPACK_IMPORTED_MODULE_3__.Item, {\n ref: ref,\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_2__.cn)(\"relative flex cursor-default select-none items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0\", inset && \"pl-8\", className),\n ...props\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/dropdown-menu.tsx\",\n lineNumber: 83,\n columnNumber: 3\n }, undefined));\nDropdownMenuItem.displayName = _radix_ui_react_dropdown_menu__WEBPACK_IMPORTED_MODULE_3__.Item.displayName;\nconst DropdownMenuCheckboxItem = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_1__.forwardRef(({ className, children, checked, ...props }, ref)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_radix_ui_react_dropdown_menu__WEBPACK_IMPORTED_MODULE_3__.CheckboxItem, {\n ref: ref,\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_2__.cn)(\"relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50\", className),\n checked: checked,\n ...props,\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"absolute left-2 flex h-3.5 w-3.5 items-center justify-center\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_radix_ui_react_dropdown_menu__WEBPACK_IMPORTED_MODULE_3__.ItemIndicator, {\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_Check_ChevronRight_Circle_lucide_react__WEBPACK_IMPORTED_MODULE_5__[\"default\"], {\n className: \"h-4 w-4\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/dropdown-menu.tsx\",\n lineNumber: 110,\n columnNumber: 9\n }, undefined)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/dropdown-menu.tsx\",\n lineNumber: 109,\n columnNumber: 7\n }, undefined)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/dropdown-menu.tsx\",\n lineNumber: 108,\n columnNumber: 5\n }, undefined),\n children\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/dropdown-menu.tsx\",\n lineNumber: 99,\n columnNumber: 3\n }, undefined));\nDropdownMenuCheckboxItem.displayName = _radix_ui_react_dropdown_menu__WEBPACK_IMPORTED_MODULE_3__.CheckboxItem.displayName;\nconst DropdownMenuRadioItem = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_1__.forwardRef(({ className, children, ...props }, ref)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_radix_ui_react_dropdown_menu__WEBPACK_IMPORTED_MODULE_3__.RadioItem, {\n ref: ref,\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_2__.cn)(\"relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50\", className),\n ...props,\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"absolute left-2 flex h-3.5 w-3.5 items-center justify-center\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_radix_ui_react_dropdown_menu__WEBPACK_IMPORTED_MODULE_3__.ItemIndicator, {\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_Check_ChevronRight_Circle_lucide_react__WEBPACK_IMPORTED_MODULE_6__[\"default\"], {\n className: \"h-2 w-2 fill-current\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/dropdown-menu.tsx\",\n lineNumber: 133,\n columnNumber: 9\n }, undefined)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/dropdown-menu.tsx\",\n lineNumber: 132,\n columnNumber: 7\n }, undefined)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/dropdown-menu.tsx\",\n lineNumber: 131,\n columnNumber: 5\n }, undefined),\n children\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/dropdown-menu.tsx\",\n lineNumber: 123,\n columnNumber: 3\n }, undefined));\nDropdownMenuRadioItem.displayName = _radix_ui_react_dropdown_menu__WEBPACK_IMPORTED_MODULE_3__.RadioItem.displayName;\nconst DropdownMenuLabel = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_1__.forwardRef(({ className, inset, ...props }, ref)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_radix_ui_react_dropdown_menu__WEBPACK_IMPORTED_MODULE_3__.Label, {\n ref: ref,\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_2__.cn)(\"px-2 py-1.5 text-sm font-semibold\", inset && \"pl-8\", className),\n ...props\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/dropdown-menu.tsx\",\n lineNumber: 147,\n columnNumber: 3\n }, undefined));\nDropdownMenuLabel.displayName = _radix_ui_react_dropdown_menu__WEBPACK_IMPORTED_MODULE_3__.Label.displayName;\nconst DropdownMenuSeparator = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_1__.forwardRef(({ className, ...props }, ref)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_radix_ui_react_dropdown_menu__WEBPACK_IMPORTED_MODULE_3__.Separator, {\n ref: ref,\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_2__.cn)(\"-mx-1 my-1 h-px bg-muted\", className),\n ...props\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/dropdown-menu.tsx\",\n lineNumber: 163,\n columnNumber: 3\n }, undefined));\nDropdownMenuSeparator.displayName = _radix_ui_react_dropdown_menu__WEBPACK_IMPORTED_MODULE_3__.Separator.displayName;\nconst DropdownMenuShortcut = ({ className, ...props })=>{\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_2__.cn)(\"ml-auto text-xs tracking-widest opacity-60\", className),\n ...props\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/dropdown-menu.tsx\",\n lineNumber: 176,\n columnNumber: 5\n }, undefined);\n};\nDropdownMenuShortcut.displayName = \"DropdownMenuShortcut\";\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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QUFLakIsV0FBVTswQkFDZCw0RUFBQ25CLHdFQUFtQzs4QkFDbEMsNEVBQUNHLHFHQUFNQTt3QkFBQ2dCLFdBQVU7Ozs7Ozs7Ozs7Ozs7Ozs7WUFHckJFOzs7Ozs7O0FBR0xpQixzQkFBc0JiLFdBQVcsR0FBR3pCLG9FQUErQixDQUFDeUIsV0FBVztBQUUvRSxNQUFNZSxrQ0FBb0J6Qyw2Q0FBZ0IsQ0FLeEMsQ0FBQyxFQUFFb0IsU0FBUyxFQUFFQyxLQUFLLEVBQUUsR0FBR0UsT0FBTyxFQUFFQyxvQkFDakMsOERBQUN2QixnRUFBMkI7UUFDMUJ1QixLQUFLQTtRQUNMSixXQUFXZiw4Q0FBRUEsQ0FDWCxxQ0FDQWdCLFNBQVMsUUFDVEQ7UUFFRCxHQUFHRyxLQUFLOzs7Ozs7QUFHYmtCLGtCQUFrQmYsV0FBVyxHQUFHekIsZ0VBQTJCLENBQUN5QixXQUFXO0FBRXZFLE1BQU1pQixzQ0FBd0IzQyw2Q0FBZ0IsQ0FHNUMsQ0FBQyxFQUFFb0IsU0FBUyxFQUFFLEdBQUdHLE9BQU8sRUFBRUMsb0JBQzFCLDhEQUFDdkIsb0VBQStCO1FBQzlCdUIsS0FBS0E7UUFDTEosV0FBV2YsOENBQUVBLENBQUMsNEJBQTRCZTtRQUN6QyxHQUFHRyxLQUFLOzs7Ozs7QUFHYm9CLHNCQUFzQmpCLFdBQVcsR0FBR3pCLG9FQUErQixDQUFDeUIsV0FBVztBQUUvRSxNQUFNbUIsdUJBQXVCLENBQUMsRUFDNUJ6QixTQUFTLEVBQ1QsR0FBR0csT0FDbUM7SUFDdEMscUJBQ0UsOERBQUNjO1FBQ0NqQixXQUFXZiw4Q0FBRUEsQ0FBQyw4Q0FBOENlO1FBQzNELEdBQUdHLEtBQUs7Ozs7OztBQUdmO0FBQ0FzQixxQkFBcUJuQixXQUFXLEdBQUc7QUFrQmpDIiwic291cmNlcyI6WyIvVXNlcnMvYWxtYS9Eb2N1bWVudHMvTmVhaE5ldy9jb21wb25lbnRzL3VpL2Ryb3Bkb3duLW1lbnUudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIGNsaWVudFwiO1xuXG5pbXBvcnQgKiBhcyBSZWFjdCBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCAqIGFzIERyb3Bkb3duTWVudVByaW1pdGl2ZSBmcm9tIFwiQHJhZGl4LXVpL3JlYWN0LWRyb3Bkb3duLW1lbnVcIjtcbmltcG9ydCB7IENoZWNrLCBDaGV2cm9uUmlnaHQsIENpcmNsZSB9IGZyb20gXCJsdWNpZGUtcmVhY3RcIjtcblxuaW1wb3J0IHsgY24gfSBmcm9tIFwiQC9saWIvdXRpbHNcIjtcblxuY29uc3QgRHJvcGRvd25NZW51ID0gRHJvcGRvd25NZW51UHJpbWl0aXZlLlJvb3Q7XG5cbmNvbnN0IERyb3Bkb3duTWVudVRyaWdnZXIgPSBEcm9wZG93bk1lbnVQcmltaXRpdmUuVHJpZ2dlcjtcblxuY29uc3QgRHJvcGRvd25NZW51R3JvdXAgPSBEcm9wZG93bk1lbnVQcmltaXRpdmUuR3JvdXA7XG5cbmNvbnN0IERyb3Bkb3duTWVudVBvcnRhbCA9IERyb3Bkb3duTWVudVByaW1pdGl2ZS5Qb3J0YWw7XG5cbmNvbnN0IERyb3Bkb3duTWVudVN1YiA9IERyb3Bkb3duTWVudVByaW1pdGl2ZS5TdWI7XG5cbmNvbnN0IERyb3Bkb3duTWVudVJhZGlvR3JvdXAgPSBEcm9wZG93bk1lbnVQcmltaXRpdmUuUmFkaW9Hcm91cDtcblxuY29uc3QgRHJvcGRvd25NZW51U3ViVHJpZ2dlciA9IFJlYWN0LmZvcndhcmRSZWY8XG4gIFJlYWN0LkVsZW1lbnRSZWY8dHlwZW9mIERyb3Bkb3duTWVudVByaW1pdGl2ZS5TdWJUcmlnZ2VyPixcbiAgUmVhY3QuQ29tcG9uZW50UHJvcHNXaXRob3V0UmVmPHR5cGVvZiBEcm9wZG93bk1lbnVQcmltaXRpdmUuU3ViVHJpZ2dlcj4gJiB7XG4gICAgaW5zZXQ/OiBib29sZWFuO1xuICB9XG4+KCh7IGNsYXNzTmFtZSwgaW5zZXQsIGNoaWxkcmVuLCAuLi5wcm9wcyB9LCByZWYpID0+IChcbiAgPERyb3Bkb3duTWVudVByaW1pdGl2ZS5TdWJUcmlnZ2VyXG4gICAgcmVmPXtyZWZ9XG4gICAgY2xhc3NOYW1lPXtjbihcbiAgICAgIFwiZmxleCBjdXJzb3ItZGVmYXVsdCBnYXAtMiBzZWxlY3Qtbm9uZSBpdGVtcy1jZW50ZXIgcm91bmRlZC1zbSBweC0yIHB5LTEuNSB0ZXh0LXNtIG91dGxpbmUtbm9uZSBmb2N1czpiZy1hY2NlbnQgZGF0YS1bc3RhdGU9b3Blbl06YmctYWNjZW50IFsmX3N2Z106cG9pbnRlci1ldmVudHMtbm9uZSBbJl9zdmddOnNpemUtNCBbJl9zdmddOnNocmluay0wXCIsXG4gICAgICBpbnNldCAmJiBcInBsLThcIixcbiAgICAgIGNsYXNzTmFtZVxuICAgICl9XG4gICAgey4uLnByb3BzfVxuICA+XG4gICAge2NoaWxkcmVufVxuICAgIDxDaGV2cm9uUmlnaHQgY2xhc3NOYW1lPSdtbC1hdXRvJyAvPlxuICA8L0Ryb3Bkb3duTWVudVByaW1pdGl2ZS5TdWJUcmlnZ2VyPlxuKSk7XG5Ecm9wZG93bk1lbnVTdWJUcmlnZ2VyLmRpc3BsYXlOYW1lID1cbiAgRHJvcGRvd25NZW51UHJpbWl0aXZlLlN1YlRyaWdnZXIuZGlzcGxheU5hbWU7XG5cbmNvbnN0IERyb3Bkb3duTWVudVN1YkNvbnRlbnQgPSBSZWFjdC5mb3J3YXJkUmVmPFxuICBSZWFjdC5FbGVtZW50UmVmPHR5cGVvZiBEcm9wZG93bk1lbnVQcmltaXRpdmUuU3ViQ29udGVudD4sXG4gIFJlYWN0LkNvbXBvbmVudFByb3BzV2l0aG91dFJlZjx0eXBlb2YgRHJvcGRvd25NZW51UHJpbWl0aXZlLlN1YkNvbnRlbnQ+XG4+KCh7IGNsYXNzTmFtZSwgLi4ucHJvcHMgfSwgcmVmKSA9PiAoXG4gIDxEcm9wZG93bk1lbnVQcmltaXRpdmUuU3ViQ29udGVudFxuICAgIHJlZj17cmVmfVxuICAgIGNsYXNzTmFtZT17Y24oXG4gICAgICBcInotNTAgbWluLXctWzhyZW1dIG92ZXJmbG93LWhpZGRlbiByb3VuZGVkLW1kIGJvcmRlciBiZy1wb3BvdmVyIHAtMSB0ZXh0LXBvcG92ZXItZm9yZWdyb3VuZCBzaGFkb3ctbGcgZGF0YS1bc3RhdGU9b3Blbl06YW5pbWF0ZS1pbiBkYXRhLVtzdGF0ZT1jbG9zZWRdOmFuaW1hdGUtb3V0IGRhdGEtW3N0YXRlPWNsb3NlZF06ZmFkZS1vdXQtMCBkYXRhLVtzdGF0ZT1vcGVuXTpmYWRlLWluLTAgZGF0YS1bc3RhdGU9Y2xvc2VkXTp6b29tLW91dC05NSBkYXRhLVtzdGF0ZT1vcGVuXTp6b29tLWluLTk1IGRhdGEtW3NpZGU9Ym90dG9tXTpzbGlkZS1pbi1mcm9tLXRvcC0yIGRhdGEtW3NpZGU9bGVmdF06c2xpZGUtaW4tZnJvbS1yaWdodC0yIGRhdGEtW3NpZGU9cmlnaHRdOnNsaWRlLWluLWZyb20tbGVmdC0yIGRhdGEtW3NpZGU9dG9wXTpzbGlkZS1pbi1mcm9tLWJvdHRvbS0yXCIsXG4gICAgICBjbGFzc05hbWVcbiAgICApfVxuICAgIHsuLi5wcm9wc31cbiAgLz5cbikpO1xuRHJvcGRvd25NZW51U3ViQ29udGVudC5kaXNwbGF5TmFtZSA9XG4gIERyb3Bkb3duTWVudVByaW1pdGl2ZS5TdWJDb250ZW50LmRpc3BsYXlOYW1lO1xuXG5jb25zdCBEcm9wZG93bk1lbnVDb250ZW50ID0gUmVhY3QuZm9yd2FyZFJlZjxcbiAgUmVhY3QuRWxlbWVudFJlZjx0eXBlb2YgRHJvcGRvd25NZW51UHJpbWl0aXZlLkNvbnRlbnQ+LFxuICBSZWFjdC5Db21wb25lbnRQcm9wc1dpdGhvdXRSZWY8dHlwZW9mIERyb3Bkb3duTWVudVByaW1pdGl2ZS5Db250ZW50PlxuPigoeyBjbGFzc05hbWUsIHNpZGVPZmZzZXQgPSA0LCAuLi5wcm9wcyB9LCByZWYpID0+IChcbiAgPERyb3Bkb3duTWVudVByaW1pdGl2ZS5Qb3J0YWw+XG4gICAgPERyb3Bkb3duTWVudVByaW1pdGl2ZS5Db250ZW50XG4gICAgICByZWY9e3JlZn1cbiAgICAgIHNpZGVPZmZzZXQ9e3NpZGVPZmZzZXR9XG4gICAgICBjbGFzc05hbWU9e2NuKFxuICAgICAgICBcInotNTAgbWluLXctWzhyZW1dIG92ZXJmbG93LWhpZGRlbiByb3VuZGVkLW1kIGJvcmRlciBiZy1wb3BvdmVyIHAtMSB0ZXh0LXBvcG92ZXItZm9yZWdyb3VuZCBzaGFkb3ctbWQgZGF0YS1bc3RhdGU9b3Blbl06YW5pbWF0ZS1pbiBkYXRhLVtzdGF0ZT1jbG9zZWRdOmFuaW1hdGUtb3V0IGRhdGEtW3N0YXRlPWNsb3NlZF06ZmFkZS1vdXQtMCBkYXRhLVtzdGF0ZT1vcGVuXTpmYWRlLWluLTAgZGF0YS1bc3RhdGU9Y2xvc2VkXTp6b29tLW91dC05NSBkYXRhLVtzdGF0ZT1vcGVuXTp6b29tLWluLTk1IGRhdGEtW3NpZGU9Ym90dG9tXTpzbGlkZS1pbi1mcm9tLXRvcC0yIGRhdGEtW3NpZGU9bGVmdF06c2xpZGUtaW4tZnJvbS1yaWdodC0yIGRhdGEtW3NpZGU9cmlnaHRdOnNsaWRlLWluLWZyb20tbGVmdC0yIGRhdGEtW3NpZGU9dG9wXTpzbGlkZS1pbi1mcm9tLWJvdHRvbS0yXCIsXG4gICAgICAgIGNsYXNzTmFtZVxuICAgICAgKX1cbiAgICAgIHsuLi5wcm9wc31cbiAgICAvPlxuICA8L0Ryb3Bkb3duTWVudVByaW1pdGl2ZS5Qb3J0YWw+XG4pKTtcbkRyb3Bkb3duTWVudUNvbnRlbnQuZGlzcGxheU5hbWUgPSBEcm9wZG93bk1lbnVQcmltaXRpdmUuQ29udGVudC5kaXNwbGF5TmFtZTtcblxuY29uc3QgRHJvcGRvd25NZW51SXRlbSA9IFJlYWN0LmZvcndhcmRSZWY8XG4gIFJlYWN0LkVsZW1lbnRSZWY8dHlwZW9mIERyb3Bkb3duTWVudVByaW1pdGl2ZS5JdGVtPixcbiAgUmVhY3QuQ29tcG9uZW50UHJvcHNXaXRob3V0UmVmPHR5cGVvZiBEcm9wZG93bk1lbnVQcmltaXRpdmUuSXRlbT4gJiB7XG4gICAgaW5zZXQ/OiBib29sZWFuO1xuICB9XG4+KCh7IGNsYXNzTmFtZSwgaW5zZXQsIC4uLnByb3BzIH0sIHJlZikgPT4gKFxuICA8RHJvcGRvd25NZW51UHJpbWl0aXZlLkl0ZW1cbiAgICByZWY9e3JlZn1cbiAgICBjbGFzc05hbWU9e2NuKFxuICAgICAgXCJyZWxhdGl2ZSBmbGV4IGN1cnNvci1kZWZhdWx0IHNlbGVjdC1ub25lIGl0ZW1zLWNlbnRlciBnYXAtMiByb3VuZGVkLXNtIHB4LTIgcHktMS41IHRleHQtc20gb3V0bGluZS1ub25lIHRyYW5zaXRpb24tY29sb3JzIGZvY3VzOmJnLWFjY2VudCBmb2N1czp0ZXh0LWFjY2VudC1mb3JlZ3JvdW5kIGRhdGEtW2Rpc2FibGVkXTpwb2ludGVyLWV2ZW50cy1ub25lIGRhdGEtW2Rpc2FibGVkXTpvcGFjaXR5LTUwIFsmX3N2Z106cG9pbnRlci1ldmVudHMtbm9uZSBbJl9zdmddOnNpemUtNCBbJl9zdmddOnNocmluay0wXCIsXG4gICAgICBpbnNldCAmJiBcInBsLThcIixcbiAgICAgIGNsYXNzTmFtZVxuICAgICl9XG4gICAgey4uLnByb3BzfVxuICAvPlxuKSk7XG5Ecm9wZG93bk1lbnVJdGVtLmRpc3BsYXlOYW1lID0gRHJvcGRvd25NZW51UHJpbWl0aXZlLkl0ZW0uZGlzcGxheU5hbWU7XG5cbmNvbnN0IERyb3Bkb3duTWVudUNoZWNrYm94SXRlbSA9IFJlYWN0LmZvcndhcmRSZWY8XG4gIFJlYWN0LkVsZW1lbnRSZWY8dHlwZW9mIERyb3Bkb3duTWVudVByaW1pdGl2ZS5DaGVja2JveEl0ZW0+LFxuICBSZWFjdC5Db21wb25lbnRQcm9wc1dpdGhvdXRSZWY8dHlwZW9mIERyb3Bkb3duTWVudVByaW1pdGl2ZS5DaGVja2JveEl0ZW0+XG4+KCh7IGNsYXNzTmFtZSwgY2hpbGRyZW4sIGNoZWNrZWQsIC4uLnByb3BzIH0sIHJlZikgPT4gKFxuICA8RHJvcGRvd25NZW51UHJpbWl0aXZlLkNoZWNrYm94SXRlbVxuICAgIHJlZj17cmVmfVxuICAgIGNsYXNzTmFtZT17Y24oXG4gICAgICBcInJlbGF0aXZlIGZsZXggY3Vyc29yLWRlZmF1bHQgc2VsZWN0LW5vbmUgaXRlbXMtY2VudGVyIHJvdW5kZWQtc20gcHktMS41IHBsLTggcHItMiB0ZXh0LXNtIG91dGxpbmUtbm9uZSB0cmFuc2l0aW9uLWNvbG9ycyBmb2N1czpiZy1hY2NlbnQgZm9jdXM6dGV4dC1hY2NlbnQtZm9yZWdyb3VuZCBkYXRhLVtkaXNhYmxlZF06cG9pbnRlci1ldmVudHMtbm9uZSBkYXRhLVtkaXNhYmxlZF06b3BhY2l0eS01MFwiLFxuICAgICAgY2xhc3NOYW1lXG4gICAgKX1cbiAgICBjaGVja2VkPXtjaGVja2VkfVxuICAgIHsuLi5wcm9wc31cbiAgPlxuICAgIDxzcGFuIGNsYXNzTmFtZT0nYWJzb2x1dGUgbGVmdC0yIGZsZXggaC0zLjUgdy0zLjUgaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyJz5cbiAgICAgIDxEcm9wZG93bk1lbnVQcmltaXRpdmUuSXRlbUluZGljYXRvcj5cbiAgICAgICAgPENoZWNrIGNsYXNzTmFtZT0naC00IHctNCcgLz5cbiAgICAgIDwvRHJvcGRvd25NZW51UHJpbWl0aXZlLkl0ZW1JbmRpY2F0b3I+XG4gICAgPC9zcGFuPlxuICAgIHtjaGlsZHJlbn1cbiAgPC9Ecm9wZG93bk1lbnVQcmltaXRpdmUuQ2hlY2tib3hJdGVtPlxuKSk7XG5Ecm9wZG93bk1lbnVDaGVja2JveEl0ZW0uZGlzcGxheU5hbWUgPVxuICBEcm9wZG93bk1lbnVQcmltaXRpdmUuQ2hlY2tib3hJdGVtLmRpc3BsYXlOYW1lO1xuXG5jb25zdCBEcm9wZG93bk1lbnVSYWRpb0l0ZW0gPSBSZWFjdC5mb3J3YXJkUmVmPFxuICBSZWFjdC5FbGVtZW50UmVmPHR5cGVvZiBEcm9wZG93bk1lbnVQcmltaXRpdmUuUmFkaW9JdGVtPixcbiAgUmVhY3QuQ29tcG9uZW50UHJvcHNXaXRob3V0UmVmPHR5cGVvZiBEcm9wZG93bk1lbnVQcmltaXRpdmUuUmFkaW9JdGVtPlxuPigoeyBjbGFzc05hbWUsIGNoaWxkcmVuLCAuLi5wcm9wcyB9LCByZWYpID0+IChcbiAgPERyb3Bkb3duTWVudVByaW1pdGl2ZS5SYWRpb0l0ZW1cbiAgICByZWY9e3JlZn1cbiAgICBjbGFzc05hbWU9e2NuKFxuICAgICAgXCJyZWxhdGl2ZSBmbGV4IGN1cnNvci1kZWZhdWx0IHNlbGVjdC1ub25lIGl0ZW1zLWNlbnRlciByb3VuZGVkLXNtIHB5LTEuNSBwbC04IHByLTIgdGV4dC1zbSBvdXRsaW5lLW5vbmUgdHJhbnNpdGlvbi1jb2xvcnMgZm9jdXM6YmctYWNjZW50IGZvY3VzOnRleHQtYWNjZW50LWZvcmVncm91bmQgZGF0YS1bZGlzYWJsZWRdOnBvaW50ZXItZXZlbnRzLW5vbmUgZGF0YS1bZGlzYWJsZWRdOm9wYWNpdHktNTBcIixcbiAgICAgIGNsYXNzTmFtZVxuICAgICl9XG4gICAgey4uLnByb3BzfVxuICA+XG4gICAgPHNwYW4gY2xhc3NOYW1lPSdhYnNvbHV0ZSBsZWZ0LTIgZmxleCBoLTMuNSB3LTMuNSBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXInPlxuICAgICAgPERyb3Bkb3duTWVudVByaW1pdGl2ZS5JdGVtSW5kaWNhdG9yPlxuICAgICAgICA8Q2lyY2xlIGNsYXNzTmFtZT0naC0yIHctMiBmaWxsLWN1cnJlbnQnIC8+XG4gICAgICA8L0Ryb3Bkb3duTWVudVByaW1pdGl2ZS5JdGVtSW5kaWNhdG9yPlxuICAgIDwvc3Bhbj5cbiAgICB7Y2hpbGRyZW59XG4gIDwvRHJvcGRvd25NZW51UHJpbWl0aXZlLlJhZGlvSXRlbT5cbikpO1xuRHJvcGRvd25NZW51UmFkaW9JdGVtLmRpc3BsYXlOYW1lID0gRHJvcGRvd25NZW51UHJpbWl0aXZlLlJhZGlvSXRlbS5kaXNwbGF5TmFtZTtcblxuY29uc3QgRHJvcGRvd25NZW51TGFiZWwgPSBSZWFjdC5mb3J3YXJkUmVmPFxuICBSZWFjdC5FbGVtZW50UmVmPHR5cGVvZiBEcm9wZG93bk1lbnVQcmltaXRpdmUuTGFiZWw+LFxuICBSZWFjdC5Db21wb25lbnRQcm9wc1dpdGhvdXRSZWY8dHlwZW9mIERyb3Bkb3duTWVudVByaW1pdGl2ZS5MYWJlbD4gJiB7XG4gICAgaW5zZXQ/OiBib29sZWFuO1xuICB9XG4+KCh7IGNsYXNzTmFtZSwgaW5zZXQsIC4uLnByb3BzIH0sIHJlZikgPT4gKFxuICA8RHJvcGRvd25NZW51UHJpbWl0aXZlLkxhYmVsXG4gICAgcmVmPXtyZWZ9XG4gICAgY2xhc3NOYW1lPXtjbihcbiAgICAgIFwicHgtMiBweS0xLjUgdGV4dC1zbSBmb250LXNlbWlib2xkXCIsXG4gICAgICBpbnNldCAmJiBcInBsLThcIixcbiAgICAgIGNsYXNzTmFtZVxuICAgICl9XG4gICAgey4uLnByb3BzfVxuICAvPlxuKSk7XG5Ecm9wZG93bk1lbnVMYWJlbC5kaXNwbGF5TmFtZSA9IERyb3Bkb3duTWVudVByaW1pdGl2ZS5MYWJlbC5kaXNwbGF5TmFtZTtcblxuY29uc3QgRHJvcGRvd25NZW51U2VwYXJhdG9yID0gUmVhY3QuZm9yd2FyZFJlZjxcbiAgUmVhY3QuRWxlbWVudFJlZjx0eXBlb2YgRHJvcGRvd25NZW51UHJpbWl0aXZlLlNlcGFyYXRvcj4sXG4gIFJlYWN0LkNvbXBvbmVudFByb3BzV2l0aG91dFJlZjx0eXBlb2YgRHJvcGRvd25NZW51UHJpbWl0aXZlLlNlcGFyYXRvcj5cbj4oKHsgY2xhc3NOYW1lLCAuLi5wcm9wcyB9LCByZWYpID0+IChcbiAgPERyb3Bkb3duTWVudVByaW1pdGl2ZS5TZXBhcmF0b3JcbiAgICByZWY9e3JlZn1cbiAgICBjbGFzc05hbWU9e2NuKFwiLW14LTEgbXktMSBoLXB4IGJnLW11dGVkXCIsIGNsYXNzTmFtZSl9XG4gICAgey4uLnByb3BzfVxuICAvPlxuKSk7XG5Ecm9wZG93bk1lbnVTZXBhcmF0b3IuZGlzcGxheU5hbWUgPSBEcm9wZG93bk1lbnVQcmltaXRpdmUuU2VwYXJhdG9yLmRpc3BsYXlOYW1lO1xuXG5jb25zdCBEcm9wZG93bk1lbnVTaG9ydGN1dCA9ICh7XG4gIGNsYXNzTmFtZSxcbiAgLi4ucHJvcHNcbn06IFJlYWN0LkhUTUxBdHRyaWJ1dGVzPEhUTUxTcGFuRWxlbWVudD4pID0+IHtcbiAgcmV0dXJuIChcbiAgICA8c3BhblxuICAgICAgY2xhc3NOYW1lPXtjbihcIm1sLWF1dG8gdGV4dC14cyB0cmFja2luZy13aWRlc3Qgb3BhY2l0eS02MFwiLCBjbGFzc05hbWUpfVxuICAgICAgey4uLnByb3BzfVxuICAgIC8+XG4gICk7XG59O1xuRHJvcGRvd25NZW51U2hvcnRjdXQuZGlzcGxheU5hbWUgPSBcIkRyb3Bkb3duTWVudVNob3J0Y3V0XCI7XG5cbmV4cG9ydCB7XG4gIERyb3Bkb3duTWVudSxcbiAgRHJvcGRvd25NZW51VHJpZ2dlcixcbiAgRHJvcGRvd25NZW51Q29udGVudCxcbiAgRHJvcGRvd25NZW51SXRlbSxcbiAgRHJvcGRvd25NZW51Q2hlY2tib3hJdGVtLFxuICBEcm9wZG93bk1lbnVSYWRpb0l0ZW0sXG4gIERyb3Bkb3duTWVudUxhYmVsLFxuICBEcm9wZG93bk1lbnVTZXBhcmF0b3IsXG4gIERyb3Bkb3duTWVudVNob3J0Y3V0LFxuICBEcm9wZG93bk1lbnVHcm91cCxcbiAgRHJvcGRvd25NZW51UG9ydGFsLFxuICBEcm9wZG93bk1lbnVTdWIsXG4gIERyb3Bkb3duTWVudVN1YkNvbnRlbnQsXG4gIERyb3Bkb3duTWVudVN1YlRyaWdnZXIsXG4gIERyb3Bkb3duTWVudVJhZGlvR3JvdXAsXG59O1xuIl0sIm5hbWVzIjpbIlJlYWN0IiwiRHJvcGRvd25NZW51UHJpbWl0aXZlIiwiQ2hlY2siLCJDaGV2cm9uUmlnaHQiLCJDaXJjbGUiLCJjbiIsIkRyb3Bkb3duTWVudSIsIlJvb3QiLCJEcm9wZG93bk1lbnVUcmlnZ2VyIiwiVHJpZ2dlciIsIkRyb3Bkb3duTWVudUdyb3VwIiwiR3JvdXAiLCJEcm9wZG93bk1lbnVQb3J0YWwiLCJQb3J0YWwiLCJEcm9wZG93bk1lbnVTdWIiLCJTdWIiLCJEcm9wZG93bk1lbnVSYWRpb0dyb3VwIiwiUmFkaW9Hcm91cCIsIkRyb3Bkb3duTWVudVN1YlRyaWdnZXIiLCJmb3J3YXJkUmVmIiwiY2xhc3NOYW1lIiwiaW5zZXQiLCJjaGlsZHJlbiIsInByb3BzIiwicmVmIiwiU3ViVHJpZ2dlciIsImRpc3BsYXlOYW1lIiwiRHJvcGRvd25NZW51U3ViQ29udGVudCIsIlN1YkNvbnRlbnQiLCJEcm9wZG93bk1lbnVDb250ZW50Iiwic2lkZU9mZnNldCIsIkNvbnRlbnQiLCJEcm9wZG93bk1lbnVJdGVtIiwiSXRlbSIsIkRyb3Bkb3duTWVudUNoZWNrYm94SXRlbSIsImNoZWNrZWQiLCJDaGVja2JveEl0ZW0iLCJzcGFuIiwiSXRlbUluZGljYXRvciIsIkRyb3Bkb3duTWVudVJhZGlvSXRlbSIsIlJhZGlvSXRlbSIsIkRyb3Bkb3duTWVudUxhYmVsIiwiTGFiZWwiLCJEcm9wZG93bk1lbnVTZXBhcmF0b3IiLCJTZXBhcmF0b3IiLCJEcm9wZG93bk1lbnVTaG9ydGN1dCJdLCJpZ25vcmVMaXN0IjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./components/ui/dropdown-menu.tsx\n");
/***/ }),
/***/ "(ssr)/./components/ui/input.tsx":
/*!*********************************!*\
!*** ./components/ui/input.tsx ***!
\*********************************/
/***/ ((__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 */ Input: () => (/* binding */ Input)\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/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/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 _lib_utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/lib/utils */ \"(ssr)/./lib/utils.ts\");\n\n\n\nconst Input = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_1__.forwardRef(({ className, type, ...props }, ref)=>{\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"input\", {\n type: type,\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_2__.cn)(\"flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-base ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 md:text-sm\", className),\n ref: ref,\n ...props\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/input.tsx\",\n lineNumber: 8,\n columnNumber: 7\n }, undefined);\n});\nInput.displayName = \"Input\";\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9jb21wb25lbnRzL3VpL2lucHV0LnRzeCIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQThCO0FBRUU7QUFFaEMsTUFBTUUsc0JBQVFGLDZDQUFnQixDQUM1QixDQUFDLEVBQUVJLFNBQVMsRUFBRUMsSUFBSSxFQUFFLEdBQUdDLE9BQU8sRUFBRUM7SUFDOUIscUJBQ0UsOERBQUNDO1FBQ0NILE1BQU1BO1FBQ05ELFdBQVdILDhDQUFFQSxDQUNYLGtZQUNBRztRQUVGRyxLQUFLQTtRQUNKLEdBQUdELEtBQUs7Ozs7OztBQUdmO0FBRUZKLE1BQU1PLFdBQVcsR0FBRztBQUVKIiwic291cmNlcyI6WyIvVXNlcnMvYWxtYS9Eb2N1bWVudHMvTmVhaE5ldy9jb21wb25lbnRzL3VpL2lucHV0LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBSZWFjdCBmcm9tIFwicmVhY3RcIlxuXG5pbXBvcnQgeyBjbiB9IGZyb20gXCJAL2xpYi91dGlsc1wiXG5cbmNvbnN0IElucHV0ID0gUmVhY3QuZm9yd2FyZFJlZjxIVE1MSW5wdXRFbGVtZW50LCBSZWFjdC5Db21wb25lbnRQcm9wczxcImlucHV0XCI+PihcbiAgKHsgY2xhc3NOYW1lLCB0eXBlLCAuLi5wcm9wcyB9LCByZWYpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgPGlucHV0XG4gICAgICAgIHR5cGU9e3R5cGV9XG4gICAgICAgIGNsYXNzTmFtZT17Y24oXG4gICAgICAgICAgXCJmbGV4IGgtMTAgdy1mdWxsIHJvdW5kZWQtbWQgYm9yZGVyIGJvcmRlci1pbnB1dCBiZy1iYWNrZ3JvdW5kIHB4LTMgcHktMiB0ZXh0LWJhc2UgcmluZy1vZmZzZXQtYmFja2dyb3VuZCBmaWxlOmJvcmRlci0wIGZpbGU6YmctdHJhbnNwYXJlbnQgZmlsZTp0ZXh0LXNtIGZpbGU6Zm9udC1tZWRpdW0gZmlsZTp0ZXh0LWZvcmVncm91bmQgcGxhY2Vob2xkZXI6dGV4dC1tdXRlZC1mb3JlZ3JvdW5kIGZvY3VzLXZpc2libGU6b3V0bGluZS1ub25lIGZvY3VzLXZpc2libGU6cmluZy0yIGZvY3VzLXZpc2libGU6cmluZy1yaW5nIGZvY3VzLXZpc2libGU6cmluZy1vZmZzZXQtMiBkaXNhYmxlZDpjdXJzb3Itbm90LWFsbG93ZWQgZGlzYWJsZWQ6b3BhY2l0eS01MCBtZDp0ZXh0LXNtXCIsXG4gICAgICAgICAgY2xhc3NOYW1lXG4gICAgICAgICl9XG4gICAgICAgIHJlZj17cmVmfVxuICAgICAgICB7Li4ucHJvcHN9XG4gICAgICAvPlxuICAgIClcbiAgfVxuKVxuSW5wdXQuZGlzcGxheU5hbWUgPSBcIklucHV0XCJcblxuZXhwb3J0IHsgSW5wdXQgfVxuIl0sIm5hbWVzIjpbIlJlYWN0IiwiY24iLCJJbnB1dCIsImZvcndhcmRSZWYiLCJjbGFzc05hbWUiLCJ0eXBlIiwicHJvcHMiLCJyZWYiLCJpbnB1dCIsImRpc3BsYXlOYW1lIl0sImlnbm9yZUxpc3QiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./components/ui/input.tsx\n");
/***/ }),
/***/ "(ssr)/./components/ui/scroll-area.tsx":
/*!***************************************!*\
!*** ./components/ui/scroll-area.tsx ***!
\***************************************/
/***/ ((__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 */ ScrollArea: () => (/* binding */ ScrollArea),\n/* harmony export */ ScrollBar: () => (/* binding */ ScrollBar)\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/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/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 _radix_ui_react_scroll_area__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @radix-ui/react-scroll-area */ \"(ssr)/./node_modules/@radix-ui/react-scroll-area/dist/index.mjs\");\n/* harmony import */ var _lib_utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/lib/utils */ \"(ssr)/./lib/utils.ts\");\n/* __next_internal_client_entry_do_not_use__ ScrollArea,ScrollBar auto */ \n\n\n\nconst ScrollArea = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_1__.forwardRef(({ className, children, ...props }, ref)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_radix_ui_react_scroll_area__WEBPACK_IMPORTED_MODULE_3__.Root, {\n ref: ref,\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_2__.cn)(\"relative overflow-hidden\", className),\n ...props,\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_radix_ui_react_scroll_area__WEBPACK_IMPORTED_MODULE_3__.Viewport, {\n className: \"h-full w-full rounded-[inherit]\",\n children: children\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/scroll-area.tsx\",\n lineNumber: 17,\n columnNumber: 5\n }, undefined),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(ScrollBar, {}, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/scroll-area.tsx\",\n lineNumber: 20,\n columnNumber: 5\n }, undefined),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_radix_ui_react_scroll_area__WEBPACK_IMPORTED_MODULE_3__.Corner, {}, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/scroll-area.tsx\",\n lineNumber: 21,\n columnNumber: 5\n }, undefined)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/scroll-area.tsx\",\n lineNumber: 12,\n columnNumber: 3\n }, undefined));\nScrollArea.displayName = _radix_ui_react_scroll_area__WEBPACK_IMPORTED_MODULE_3__.Root.displayName;\nconst ScrollBar = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_1__.forwardRef(({ className, orientation = \"vertical\", ...props }, ref)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_radix_ui_react_scroll_area__WEBPACK_IMPORTED_MODULE_3__.ScrollAreaScrollbar, {\n ref: ref,\n orientation: orientation,\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_2__.cn)(\"flex touch-none select-none transition-colors\", orientation === \"vertical\" && \"h-full w-2.5 border-l border-l-transparent p-[1px]\", orientation === \"horizontal\" && \"h-2.5 flex-col border-t border-t-transparent p-[1px]\", className),\n ...props,\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_radix_ui_react_scroll_area__WEBPACK_IMPORTED_MODULE_3__.ScrollAreaThumb, {\n className: \"relative flex-1 rounded-full bg-border\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/scroll-area.tsx\",\n lineNumber: 43,\n columnNumber: 5\n }, undefined)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/scroll-area.tsx\",\n lineNumber: 30,\n columnNumber: 3\n }, undefined));\nScrollBar.displayName = _radix_ui_react_scroll_area__WEBPACK_IMPORTED_MODULE_3__.ScrollAreaScrollbar.displayName;\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9jb21wb25lbnRzL3VpL3Njcm9sbC1hcmVhLnRzeCIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFFOEI7QUFDb0M7QUFFbEM7QUFFaEMsTUFBTUcsMkJBQWFILDZDQUFnQixDQUdqQyxDQUFDLEVBQUVLLFNBQVMsRUFBRUMsUUFBUSxFQUFFLEdBQUdDLE9BQU8sRUFBRUMsb0JBQ3BDLDhEQUFDUCw2REFBd0I7UUFDdkJPLEtBQUtBO1FBQ0xILFdBQVdILDhDQUFFQSxDQUFDLDRCQUE0Qkc7UUFDekMsR0FBR0UsS0FBSzs7MEJBRVQsOERBQUNOLGlFQUE0QjtnQkFBQ0ksV0FBVTswQkFDckNDOzs7Ozs7MEJBRUgsOERBQUNLOzs7OzswQkFDRCw4REFBQ1YsK0RBQTBCOzs7Ozs7Ozs7OztBQUcvQkUsV0FBV1UsV0FBVyxHQUFHWiw2REFBd0IsQ0FBQ1ksV0FBVztBQUU3RCxNQUFNRiwwQkFBWVgsNkNBQWdCLENBR2hDLENBQUMsRUFBRUssU0FBUyxFQUFFUyxjQUFjLFVBQVUsRUFBRSxHQUFHUCxPQUFPLEVBQUVDLG9CQUNwRCw4REFBQ1AsNEVBQXVDO1FBQ3RDTyxLQUFLQTtRQUNMTSxhQUFhQTtRQUNiVCxXQUFXSCw4Q0FBRUEsQ0FDWCxpREFDQVksZ0JBQWdCLGNBQ2Qsc0RBQ0ZBLGdCQUFnQixnQkFDZCx3REFDRlQ7UUFFRCxHQUFHRSxLQUFLO2tCQUVULDRFQUFDTix3RUFBbUM7WUFBQ0ksV0FBVTs7Ozs7Ozs7Ozs7QUFHbkRNLFVBQVVFLFdBQVcsR0FBR1osNEVBQXVDLENBQUNZLFdBQVc7QUFFM0MiLCJzb3VyY2VzIjpbIi9Vc2Vycy9hbG1hL0RvY3VtZW50cy9OZWFoTmV3L2NvbXBvbmVudHMvdWkvc2Nyb2xsLWFyZWEudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIGNsaWVudFwiXG5cbmltcG9ydCAqIGFzIFJlYWN0IGZyb20gXCJyZWFjdFwiXG5pbXBvcnQgKiBhcyBTY3JvbGxBcmVhUHJpbWl0aXZlIGZyb20gXCJAcmFkaXgtdWkvcmVhY3Qtc2Nyb2xsLWFyZWFcIlxuXG5pbXBvcnQgeyBjbiB9IGZyb20gXCJAL2xpYi91dGlsc1wiXG5cbmNvbnN0IFNjcm9sbEFyZWEgPSBSZWFjdC5mb3J3YXJkUmVmPFxuICBSZWFjdC5FbGVtZW50UmVmPHR5cGVvZiBTY3JvbGxBcmVhUHJpbWl0aXZlLlJvb3Q+LFxuICBSZWFjdC5Db21wb25lbnRQcm9wc1dpdGhvdXRSZWY8dHlwZW9mIFNjcm9sbEFyZWFQcmltaXRpdmUuUm9vdD5cbj4oKHsgY2xhc3NOYW1lLCBjaGlsZHJlbiwgLi4ucHJvcHMgfSwgcmVmKSA9PiAoXG4gIDxTY3JvbGxBcmVhUHJpbWl0aXZlLlJvb3RcbiAgICByZWY9e3JlZn1cbiAgICBjbGFzc05hbWU9e2NuKFwicmVsYXRpdmUgb3ZlcmZsb3ctaGlkZGVuXCIsIGNsYXNzTmFtZSl9XG4gICAgey4uLnByb3BzfVxuICA+XG4gICAgPFNjcm9sbEFyZWFQcmltaXRpdmUuVmlld3BvcnQgY2xhc3NOYW1lPVwiaC1mdWxsIHctZnVsbCByb3VuZGVkLVtpbmhlcml0XVwiPlxuICAgICAge2NoaWxkcmVufVxuICAgIDwvU2Nyb2xsQXJlYVByaW1pdGl2ZS5WaWV3cG9ydD5cbiAgICA8U2Nyb2xsQmFyIC8+XG4gICAgPFNjcm9sbEFyZWFQcmltaXRpdmUuQ29ybmVyIC8+XG4gIDwvU2Nyb2xsQXJlYVByaW1pdGl2ZS5Sb290PlxuKSlcblNjcm9sbEFyZWEuZGlzcGxheU5hbWUgPSBTY3JvbGxBcmVhUHJpbWl0aXZlLlJvb3QuZGlzcGxheU5hbWVcblxuY29uc3QgU2Nyb2xsQmFyID0gUmVhY3QuZm9yd2FyZFJlZjxcbiAgUmVhY3QuRWxlbWVudFJlZjx0eXBlb2YgU2Nyb2xsQXJlYVByaW1pdGl2ZS5TY3JvbGxBcmVhU2Nyb2xsYmFyPixcbiAgUmVhY3QuQ29tcG9uZW50UHJvcHNXaXRob3V0UmVmPHR5cGVvZiBTY3JvbGxBcmVhUHJpbWl0aXZlLlNjcm9sbEFyZWFTY3JvbGxiYXI+XG4+KCh7IGNsYXNzTmFtZSwgb3JpZW50YXRpb24gPSBcInZlcnRpY2FsXCIsIC4uLnByb3BzIH0sIHJlZikgPT4gKFxuICA8U2Nyb2xsQXJlYVByaW1pdGl2ZS5TY3JvbGxBcmVhU2Nyb2xsYmFyXG4gICAgcmVmPXtyZWZ9XG4gICAgb3JpZW50YXRpb249e29yaWVudGF0aW9ufVxuICAgIGNsYXNzTmFtZT17Y24oXG4gICAgICBcImZsZXggdG91Y2gtbm9uZSBzZWxlY3Qtbm9uZSB0cmFuc2l0aW9uLWNvbG9yc1wiLFxuICAgICAgb3JpZW50YXRpb24gPT09IFwidmVydGljYWxcIiAmJlxuICAgICAgICBcImgtZnVsbCB3LTIuNSBib3JkZXItbCBib3JkZXItbC10cmFuc3BhcmVudCBwLVsxcHhdXCIsXG4gICAgICBvcmllbnRhdGlvbiA9PT0gXCJob3Jpem9udGFsXCIgJiZcbiAgICAgICAgXCJoLTIuNSBmbGV4LWNvbCBib3JkZXItdCBib3JkZXItdC10cmFuc3BhcmVudCBwLVsxcHhdXCIsXG4gICAgICBjbGFzc05hbWVcbiAgICApfVxuICAgIHsuLi5wcm9wc31cbiAgPlxuICAgIDxTY3JvbGxBcmVhUHJpbWl0aXZlLlNjcm9sbEFyZWFUaHVtYiBjbGFzc05hbWU9XCJyZWxhdGl2ZSBmbGV4LTEgcm91bmRlZC1mdWxsIGJnLWJvcmRlclwiIC8+XG4gIDwvU2Nyb2xsQXJlYVByaW1pdGl2ZS5TY3JvbGxBcmVhU2Nyb2xsYmFyPlxuKSlcblNjcm9sbEJhci5kaXNwbGF5TmFtZSA9IFNjcm9sbEFyZWFQcmltaXRpdmUuU2Nyb2xsQXJlYVNjcm9sbGJhci5kaXNwbGF5TmFtZVxuXG5leHBvcnQgeyBTY3JvbGxBcmVhLCBTY3JvbGxCYXIgfVxuIl0sIm5hbWVzIjpbIlJlYWN0IiwiU2Nyb2xsQXJlYVByaW1pdGl2ZSIsImNuIiwiU2Nyb2xsQXJlYSIsImZvcndhcmRSZWYiLCJjbGFzc05hbWUiLCJjaGlsZHJlbiIsInByb3BzIiwicmVmIiwiUm9vdCIsIlZpZXdwb3J0IiwiU2Nyb2xsQmFyIiwiQ29ybmVyIiwiZGlzcGxheU5hbWUiLCJvcmllbnRhdGlvbiIsIlNjcm9sbEFyZWFTY3JvbGxiYXIiLCJTY3JvbGxBcmVhVGh1bWIiXSwiaWdub3JlTGlzdCI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./components/ui/scroll-area.tsx\n");
/***/ }),
/***/ "(ssr)/./components/ui/textarea.tsx":
/*!************************************!*\
!*** ./components/ui/textarea.tsx ***!
\************************************/
/***/ ((__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 */ Textarea: () => (/* binding */ Textarea)\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/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/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 _lib_utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/lib/utils */ \"(ssr)/./lib/utils.ts\");\n\n\n\nconst Textarea = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_1__.forwardRef(({ className, ...props }, ref)=>{\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"textarea\", {\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_2__.cn)(\"flex min-h-[80px] w-full rounded-md border border-input bg-background px-3 py-2 text-base ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 md:text-sm\", className),\n ref: ref,\n ...props\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/textarea.tsx\",\n lineNumber: 10,\n columnNumber: 5\n }, undefined);\n});\nTextarea.displayName = \"Textarea\";\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9jb21wb25lbnRzL3VpL3RleHRhcmVhLnRzeCIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQThCO0FBRUU7QUFFaEMsTUFBTUUseUJBQVdGLDZDQUFnQixDQUcvQixDQUFDLEVBQUVJLFNBQVMsRUFBRSxHQUFHQyxPQUFPLEVBQUVDO0lBQzFCLHFCQUNFLDhEQUFDQztRQUNDSCxXQUFXSCw4Q0FBRUEsQ0FDWCxxVEFDQUc7UUFFRkUsS0FBS0E7UUFDSixHQUFHRCxLQUFLOzs7Ozs7QUFHZjtBQUNBSCxTQUFTTSxXQUFXLEdBQUc7QUFFSiIsInNvdXJjZXMiOlsiL1VzZXJzL2FsbWEvRG9jdW1lbnRzL05lYWhOZXcvY29tcG9uZW50cy91aS90ZXh0YXJlYS50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgUmVhY3QgZnJvbSBcInJlYWN0XCJcblxuaW1wb3J0IHsgY24gfSBmcm9tIFwiQC9saWIvdXRpbHNcIlxuXG5jb25zdCBUZXh0YXJlYSA9IFJlYWN0LmZvcndhcmRSZWY8XG4gIEhUTUxUZXh0QXJlYUVsZW1lbnQsXG4gIFJlYWN0LkNvbXBvbmVudFByb3BzPFwidGV4dGFyZWFcIj5cbj4oKHsgY2xhc3NOYW1lLCAuLi5wcm9wcyB9LCByZWYpID0+IHtcbiAgcmV0dXJuIChcbiAgICA8dGV4dGFyZWFcbiAgICAgIGNsYXNzTmFtZT17Y24oXG4gICAgICAgIFwiZmxleCBtaW4taC1bODBweF0gdy1mdWxsIHJvdW5kZWQtbWQgYm9yZGVyIGJvcmRlci1pbnB1dCBiZy1iYWNrZ3JvdW5kIHB4LTMgcHktMiB0ZXh0LWJhc2UgcmluZy1vZmZzZXQtYmFja2dyb3VuZCBwbGFjZWhvbGRlcjp0ZXh0LW11dGVkLWZvcmVncm91bmQgZm9jdXMtdmlzaWJsZTpvdXRsaW5lLW5vbmUgZm9jdXMtdmlzaWJsZTpyaW5nLTIgZm9jdXMtdmlzaWJsZTpyaW5nLXJpbmcgZm9jdXMtdmlzaWJsZTpyaW5nLW9mZnNldC0yIGRpc2FibGVkOmN1cnNvci1ub3QtYWxsb3dlZCBkaXNhYmxlZDpvcGFjaXR5LTUwIG1kOnRleHQtc21cIixcbiAgICAgICAgY2xhc3NOYW1lXG4gICAgICApfVxuICAgICAgcmVmPXtyZWZ9XG4gICAgICB7Li4ucHJvcHN9XG4gICAgLz5cbiAgKVxufSlcblRleHRhcmVhLmRpc3BsYXlOYW1lID0gXCJUZXh0YXJlYVwiXG5cbmV4cG9ydCB7IFRleHRhcmVhIH1cbiJdLCJuYW1lcyI6WyJSZWFjdCIsImNuIiwiVGV4dGFyZWEiLCJmb3J3YXJkUmVmIiwiY2xhc3NOYW1lIiwicHJvcHMiLCJyZWYiLCJ0ZXh0YXJlYSIsImRpc3BsYXlOYW1lIl0sImlnbm9yZUxpc3QiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./components/ui/textarea.tsx\n");
/***/ }),
/***/ "(ssr)/./components/ui/toast.tsx":
/*!*********************************!*\
!*** ./components/ui/toast.tsx ***!
\*********************************/
/***/ ((__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 */ Toast: () => (/* binding */ Toast),\n/* harmony export */ ToastAction: () => (/* binding */ ToastAction),\n/* harmony export */ ToastClose: () => (/* binding */ ToastClose),\n/* harmony export */ ToastDescription: () => (/* binding */ ToastDescription),\n/* harmony export */ ToastProvider: () => (/* binding */ ToastProvider),\n/* harmony export */ ToastTitle: () => (/* binding */ ToastTitle),\n/* harmony export */ ToastViewport: () => (/* binding */ ToastViewport)\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/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/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 _radix_ui_react_toast__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @radix-ui/react-toast */ \"(ssr)/./node_modules/@radix-ui/react-toast/dist/index.mjs\");\n/* harmony import */ var class_variance_authority__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! class-variance-authority */ \"(ssr)/./node_modules/class-variance-authority/dist/index.mjs\");\n/* harmony import */ var _barrel_optimize_names_X_lucide_react__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! __barrel_optimize__?names=X!=!lucide-react */ \"(ssr)/./node_modules/lucide-react/dist/esm/icons/x.js\");\n/* harmony import */ var _lib_utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/lib/utils */ \"(ssr)/./lib/utils.ts\");\n/* __next_internal_client_entry_do_not_use__ ToastProvider,ToastViewport,Toast,ToastTitle,ToastDescription,ToastClose,ToastAction auto */ \n\n\n\n\n\nconst ToastProvider = _radix_ui_react_toast__WEBPACK_IMPORTED_MODULE_4__.Provider;\nconst ToastViewport = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_1__.forwardRef(({ className, ...props }, ref)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_radix_ui_react_toast__WEBPACK_IMPORTED_MODULE_4__.Viewport, {\n ref: ref,\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_3__.cn)(\"fixed top-0 z-[100] flex max-h-screen w-full flex-col-reverse p-4 sm:bottom-0 sm:right-0 sm:top-auto sm:flex-col md:max-w-[420px]\", className),\n ...props\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/toast.tsx\",\n lineNumber: 16,\n columnNumber: 3\n }, undefined));\nToastViewport.displayName = _radix_ui_react_toast__WEBPACK_IMPORTED_MODULE_4__.Viewport.displayName;\nconst toastVariants = (0,class_variance_authority__WEBPACK_IMPORTED_MODULE_2__.cva)(\"group pointer-events-auto relative flex w-full items-center justify-between space-x-4 overflow-hidden rounded-md border p-6 pr-8 shadow-lg transition-all data-[swipe=cancel]:translate-x-0 data-[swipe=end]:translate-x-[var(--radix-toast-swipe-end-x)] data-[swipe=move]:translate-x-[var(--radix-toast-swipe-move-x)] data-[swipe=move]:transition-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[swipe=end]:animate-out data-[state=closed]:fade-out-80 data-[state=closed]:slide-out-to-right-full data-[state=open]:slide-in-from-top-full data-[state=open]:sm:slide-in-from-bottom-full\", {\n variants: {\n variant: {\n default: \"border bg-background text-foreground\",\n destructive: \"destructive group border-destructive bg-destructive text-destructive-foreground\",\n \"new-email\": \"border-blue-500 bg-blue-600 text-white\"\n }\n },\n defaultVariants: {\n variant: \"default\"\n }\n});\nconst Toast = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_1__.forwardRef(({ className, variant, ...props }, ref)=>{\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_radix_ui_react_toast__WEBPACK_IMPORTED_MODULE_4__.Root, {\n ref: ref,\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_3__.cn)(toastVariants({\n variant\n }), className),\n ...props\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/toast.tsx\",\n lineNumber: 51,\n columnNumber: 5\n }, undefined);\n});\nToast.displayName = _radix_ui_react_toast__WEBPACK_IMPORTED_MODULE_4__.Root.displayName;\nconst ToastAction = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_1__.forwardRef(({ className, ...props }, ref)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_radix_ui_react_toast__WEBPACK_IMPORTED_MODULE_4__.Action, {\n ref: ref,\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_3__.cn)(\"inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 text-sm font-medium ring-offset-background transition-colors hover:bg-secondary focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 group-[.destructive]:border-muted/40 group-[.destructive]:hover:border-destructive/30 group-[.destructive]:hover:bg-destructive group-[.destructive]:hover:text-destructive-foreground group-[.destructive]:focus:ring-destructive\", className),\n ...props\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/toast.tsx\",\n lineNumber: 64,\n columnNumber: 3\n }, undefined));\nToastAction.displayName = _radix_ui_react_toast__WEBPACK_IMPORTED_MODULE_4__.Action.displayName;\nconst ToastClose = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_1__.forwardRef(({ className, ...props }, ref)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_radix_ui_react_toast__WEBPACK_IMPORTED_MODULE_4__.Close, {\n ref: ref,\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_3__.cn)(\"absolute right-2 top-2 rounded-md p-1 text-foreground/50 opacity-0 transition-opacity hover:text-foreground focus:opacity-100 focus:outline-none focus:ring-2 group-hover:opacity-100 group-[.destructive]:text-red-300 group-[.destructive]:hover:text-red-50 group-[.destructive]:focus:ring-red-400 group-[.destructive]:focus:ring-offset-red-600\", className),\n \"toast-close\": \"\",\n ...props,\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_X_lucide_react__WEBPACK_IMPORTED_MODULE_5__[\"default\"], {\n className: \"h-4 w-4\"\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/toast.tsx\",\n lineNumber: 88,\n columnNumber: 5\n }, undefined)\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/toast.tsx\",\n lineNumber: 79,\n columnNumber: 3\n }, undefined));\nToastClose.displayName = _radix_ui_react_toast__WEBPACK_IMPORTED_MODULE_4__.Close.displayName;\nconst ToastTitle = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_1__.forwardRef(({ className, ...props }, ref)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_radix_ui_react_toast__WEBPACK_IMPORTED_MODULE_4__.Title, {\n ref: ref,\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_3__.cn)(\"text-sm font-semibold\", className),\n ...props\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/toast.tsx\",\n lineNumber: 97,\n columnNumber: 3\n }, undefined));\nToastTitle.displayName = _radix_ui_react_toast__WEBPACK_IMPORTED_MODULE_4__.Title.displayName;\nconst ToastDescription = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_1__.forwardRef(({ className, ...props }, ref)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_radix_ui_react_toast__WEBPACK_IMPORTED_MODULE_4__.Description, {\n ref: ref,\n className: (0,_lib_utils__WEBPACK_IMPORTED_MODULE_3__.cn)(\"text-sm opacity-90\", className),\n ...props\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/toast.tsx\",\n lineNumber: 109,\n columnNumber: 3\n }, undefined));\nToastDescription.displayName = _radix_ui_react_toast__WEBPACK_IMPORTED_MODULE_4__.Description.displayName;\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9jb21wb25lbnRzL3VpL3RvYXN0LnRzeCIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRThCO0FBQzBCO0FBQ1M7QUFDakM7QUFFQTtBQUVoQyxNQUFNSyxnQkFBZ0JKLDJEQUF3QjtBQUU5QyxNQUFNTSw4QkFBZ0JQLDZDQUFnQixDQUdwQyxDQUFDLEVBQUVTLFNBQVMsRUFBRSxHQUFHQyxPQUFPLEVBQUVDLG9CQUMxQiw4REFBQ1YsMkRBQXdCO1FBQ3ZCVSxLQUFLQTtRQUNMRixXQUFXTCw4Q0FBRUEsQ0FDWCxxSUFDQUs7UUFFRCxHQUFHQyxLQUFLOzs7Ozs7QUFHYkgsY0FBY00sV0FBVyxHQUFHWiwyREFBd0IsQ0FBQ1ksV0FBVztBQUVoRSxNQUFNQyxnQkFBZ0JaLDZEQUFHQSxDQUN2Qiw2bEJBQ0E7SUFDRWEsVUFBVTtRQUNSQyxTQUFTO1lBQ1BDLFNBQVM7WUFDVEMsYUFDRTtZQUNGLGFBQ0U7UUFDSjtJQUNGO0lBQ0FDLGlCQUFpQjtRQUNmSCxTQUFTO0lBQ1g7QUFDRjtBQUdGLE1BQU1JLHNCQUFRcEIsNkNBQWdCLENBSTVCLENBQUMsRUFBRVMsU0FBUyxFQUFFTyxPQUFPLEVBQUUsR0FBR04sT0FBTyxFQUFFQztJQUNuQyxxQkFDRSw4REFBQ1YsdURBQW9CO1FBQ25CVSxLQUFLQTtRQUNMRixXQUFXTCw4Q0FBRUEsQ0FBQ1UsY0FBYztZQUFFRTtRQUFRLElBQUlQO1FBQ3pDLEdBQUdDLEtBQUs7Ozs7OztBQUdmO0FBQ0FVLE1BQU1QLFdBQVcsR0FBR1osdURBQW9CLENBQUNZLFdBQVc7QUFFcEQsTUFBTVMsNEJBQWN0Qiw2Q0FBZ0IsQ0FHbEMsQ0FBQyxFQUFFUyxTQUFTLEVBQUUsR0FBR0MsT0FBTyxFQUFFQyxvQkFDMUIsOERBQUNWLHlEQUFzQjtRQUNyQlUsS0FBS0E7UUFDTEYsV0FBV0wsOENBQUVBLENBQ1gsc2dCQUNBSztRQUVELEdBQUdDLEtBQUs7Ozs7OztBQUdiWSxZQUFZVCxXQUFXLEdBQUdaLHlEQUFzQixDQUFDWSxXQUFXO0FBRTVELE1BQU1XLDJCQUFheEIsNkNBQWdCLENBR2pDLENBQUMsRUFBRVMsU0FBUyxFQUFFLEdBQUdDLE9BQU8sRUFBRUMsb0JBQzFCLDhEQUFDVix3REFBcUI7UUFDcEJVLEtBQUtBO1FBQ0xGLFdBQVdMLDhDQUFFQSxDQUNYLHlWQUNBSztRQUVGaUIsZUFBWTtRQUNYLEdBQUdoQixLQUFLO2tCQUVULDRFQUFDUCw2RUFBQ0E7WUFBQ00sV0FBVTs7Ozs7Ozs7Ozs7QUFHakJlLFdBQVdYLFdBQVcsR0FBR1osd0RBQXFCLENBQUNZLFdBQVc7QUFFMUQsTUFBTWMsMkJBQWEzQiw2Q0FBZ0IsQ0FHakMsQ0FBQyxFQUFFUyxTQUFTLEVBQUUsR0FBR0MsT0FBTyxFQUFFQyxvQkFDMUIsOERBQUNWLHdEQUFxQjtRQUNwQlUsS0FBS0E7UUFDTEYsV0FBV0wsOENBQUVBLENBQUMseUJBQXlCSztRQUN0QyxHQUFHQyxLQUFLOzs7Ozs7QUFHYmlCLFdBQVdkLFdBQVcsR0FBR1osd0RBQXFCLENBQUNZLFdBQVc7QUFFMUQsTUFBTWdCLGlDQUFtQjdCLDZDQUFnQixDQUd2QyxDQUFDLEVBQUVTLFNBQVMsRUFBRSxHQUFHQyxPQUFPLEVBQUVDLG9CQUMxQiw4REFBQ1YsOERBQTJCO1FBQzFCVSxLQUFLQTtRQUNMRixXQUFXTCw4Q0FBRUEsQ0FBQyxzQkFBc0JLO1FBQ25DLEdBQUdDLEtBQUs7Ozs7OztBQUdibUIsaUJBQWlCaEIsV0FBVyxHQUFHWiw4REFBMkIsQ0FBQ1ksV0FBVztBQWdCckUiLCJzb3VyY2VzIjpbIi9Vc2Vycy9hbG1hL0RvY3VtZW50cy9OZWFoTmV3L2NvbXBvbmVudHMvdWkvdG9hc3QudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIGNsaWVudFwiXG5cbmltcG9ydCAqIGFzIFJlYWN0IGZyb20gXCJyZWFjdFwiXG5pbXBvcnQgKiBhcyBUb2FzdFByaW1pdGl2ZXMgZnJvbSBcIkByYWRpeC11aS9yZWFjdC10b2FzdFwiXG5pbXBvcnQgeyBjdmEsIHR5cGUgVmFyaWFudFByb3BzIH0gZnJvbSBcImNsYXNzLXZhcmlhbmNlLWF1dGhvcml0eVwiXG5pbXBvcnQgeyBYIH0gZnJvbSBcImx1Y2lkZS1yZWFjdFwiXG5cbmltcG9ydCB7IGNuIH0gZnJvbSBcIkAvbGliL3V0aWxzXCJcblxuY29uc3QgVG9hc3RQcm92aWRlciA9IFRvYXN0UHJpbWl0aXZlcy5Qcm92aWRlclxuXG5jb25zdCBUb2FzdFZpZXdwb3J0ID0gUmVhY3QuZm9yd2FyZFJlZjxcbiAgUmVhY3QuRWxlbWVudFJlZjx0eXBlb2YgVG9hc3RQcmltaXRpdmVzLlZpZXdwb3J0PixcbiAgUmVhY3QuQ29tcG9uZW50UHJvcHNXaXRob3V0UmVmPHR5cGVvZiBUb2FzdFByaW1pdGl2ZXMuVmlld3BvcnQ+XG4+KCh7IGNsYXNzTmFtZSwgLi4ucHJvcHMgfSwgcmVmKSA9PiAoXG4gIDxUb2FzdFByaW1pdGl2ZXMuVmlld3BvcnRcbiAgICByZWY9e3JlZn1cbiAgICBjbGFzc05hbWU9e2NuKFxuICAgICAgXCJmaXhlZCB0b3AtMCB6LVsxMDBdIGZsZXggbWF4LWgtc2NyZWVuIHctZnVsbCBmbGV4LWNvbC1yZXZlcnNlIHAtNCBzbTpib3R0b20tMCBzbTpyaWdodC0wIHNtOnRvcC1hdXRvIHNtOmZsZXgtY29sIG1kOm1heC13LVs0MjBweF1cIixcbiAgICAgIGNsYXNzTmFtZVxuICAgICl9XG4gICAgey4uLnByb3BzfVxuICAvPlxuKSlcblRvYXN0Vmlld3BvcnQuZGlzcGxheU5hbWUgPSBUb2FzdFByaW1pdGl2ZXMuVmlld3BvcnQuZGlzcGxheU5hbWVcblxuY29uc3QgdG9hc3RWYXJpYW50cyA9IGN2YShcbiAgXCJncm91cCBwb2ludGVyLWV2ZW50cy1hdXRvIHJlbGF0aXZlIGZsZXggdy1mdWxsIGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW4gc3BhY2UteC00IG92ZXJmbG93LWhpZGRlbiByb3VuZGVkLW1kIGJvcmRlciBwLTYgcHItOCBzaGFkb3ctbGcgdHJhbnNpdGlvbi1hbGwgZGF0YS1bc3dpcGU9Y2FuY2VsXTp0cmFuc2xhdGUteC0wIGRhdGEtW3N3aXBlPWVuZF06dHJhbnNsYXRlLXgtW3ZhcigtLXJhZGl4LXRvYXN0LXN3aXBlLWVuZC14KV0gZGF0YS1bc3dpcGU9bW92ZV06dHJhbnNsYXRlLXgtW3ZhcigtLXJhZGl4LXRvYXN0LXN3aXBlLW1vdmUteCldIGRhdGEtW3N3aXBlPW1vdmVdOnRyYW5zaXRpb24tbm9uZSBkYXRhLVtzdGF0ZT1vcGVuXTphbmltYXRlLWluIGRhdGEtW3N0YXRlPWNsb3NlZF06YW5pbWF0ZS1vdXQgZGF0YS1bc3dpcGU9ZW5kXTphbmltYXRlLW91dCBkYXRhLVtzdGF0ZT1jbG9zZWRdOmZhZGUtb3V0LTgwIGRhdGEtW3N0YXRlPWNsb3NlZF06c2xpZGUtb3V0LXRvLXJpZ2h0LWZ1bGwgZGF0YS1bc3RhdGU9b3Blbl06c2xpZGUtaW4tZnJvbS10b3AtZnVsbCBkYXRhLVtzdGF0ZT1vcGVuXTpzbTpzbGlkZS1pbi1mcm9tLWJvdHRvbS1mdWxsXCIsXG4gIHtcbiAgICB2YXJpYW50czoge1xuICAgICAgdmFyaWFudDoge1xuICAgICAgICBkZWZhdWx0OiBcImJvcmRlciBiZy1iYWNrZ3JvdW5kIHRleHQtZm9yZWdyb3VuZFwiLFxuICAgICAgICBkZXN0cnVjdGl2ZTpcbiAgICAgICAgICBcImRlc3RydWN0aXZlIGdyb3VwIGJvcmRlci1kZXN0cnVjdGl2ZSBiZy1kZXN0cnVjdGl2ZSB0ZXh0LWRlc3RydWN0aXZlLWZvcmVncm91bmRcIixcbiAgICAgICAgXCJuZXctZW1haWxcIjpcbiAgICAgICAgICBcImJvcmRlci1ibHVlLTUwMCBiZy1ibHVlLTYwMCB0ZXh0LXdoaXRlXCIsXG4gICAgICB9LFxuICAgIH0sXG4gICAgZGVmYXVsdFZhcmlhbnRzOiB7XG4gICAgICB2YXJpYW50OiBcImRlZmF1bHRcIixcbiAgICB9LFxuICB9XG4pXG5cbmNvbnN0IFRvYXN0ID0gUmVhY3QuZm9yd2FyZFJlZjxcbiAgUmVhY3QuRWxlbWVudFJlZjx0eXBlb2YgVG9hc3RQcmltaXRpdmVzLlJvb3Q+LFxuICBSZWFjdC5Db21wb25lbnRQcm9wc1dpdGhvdXRSZWY8dHlwZW9mIFRvYXN0UHJpbWl0aXZlcy5Sb290PiAmXG4gICAgVmFyaWFudFByb3BzPHR5cGVvZiB0b2FzdFZhcmlhbnRzPlxuPigoeyBjbGFzc05hbWUsIHZhcmlhbnQsIC4uLnByb3BzIH0sIHJlZikgPT4ge1xuICByZXR1cm4gKFxuICAgIDxUb2FzdFByaW1pdGl2ZXMuUm9vdFxuICAgICAgcmVmPXtyZWZ9XG4gICAgICBjbGFzc05hbWU9e2NuKHRvYXN0VmFyaWFudHMoeyB2YXJpYW50IH0pLCBjbGFzc05hbWUpfVxuICAgICAgey4uLnByb3BzfVxuICAgIC8+XG4gIClcbn0pXG5Ub2FzdC5kaXNwbGF5TmFtZSA9IFRvYXN0UHJpbWl0aXZlcy5Sb290LmRpc3BsYXlOYW1lXG5cbmNvbnN0IFRvYXN0QWN0aW9uID0gUmVhY3QuZm9yd2FyZFJlZjxcbiAgUmVhY3QuRWxlbWVudFJlZjx0eXBlb2YgVG9hc3RQcmltaXRpdmVzLkFjdGlvbj4sXG4gIFJlYWN0LkNvbXBvbmVudFByb3BzV2l0aG91dFJlZjx0eXBlb2YgVG9hc3RQcmltaXRpdmVzLkFjdGlvbj5cbj4oKHsgY2xhc3NOYW1lLCAuLi5wcm9wcyB9LCByZWYpID0+IChcbiAgPFRvYXN0UHJpbWl0aXZlcy5BY3Rpb25cbiAgICByZWY9e3JlZn1cbiAgICBjbGFzc05hbWU9e2NuKFxuICAgICAgXCJpbmxpbmUtZmxleCBoLTggc2hyaW5rLTAgaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIHJvdW5kZWQtbWQgYm9yZGVyIGJnLXRyYW5zcGFyZW50IHB4LTMgdGV4dC1zbSBmb250LW1lZGl1bSByaW5nLW9mZnNldC1iYWNrZ3JvdW5kIHRyYW5zaXRpb24tY29sb3JzIGhvdmVyOmJnLXNlY29uZGFyeSBmb2N1czpvdXRsaW5lLW5vbmUgZm9jdXM6cmluZy0yIGZvY3VzOnJpbmctcmluZyBmb2N1czpyaW5nLW9mZnNldC0yIGRpc2FibGVkOnBvaW50ZXItZXZlbnRzLW5vbmUgZGlzYWJsZWQ6b3BhY2l0eS01MCBncm91cC1bLmRlc3RydWN0aXZlXTpib3JkZXItbXV0ZWQvNDAgZ3JvdXAtWy5kZXN0cnVjdGl2ZV06aG92ZXI6Ym9yZGVyLWRlc3RydWN0aXZlLzMwIGdyb3VwLVsuZGVzdHJ1Y3RpdmVdOmhvdmVyOmJnLWRlc3RydWN0aXZlIGdyb3VwLVsuZGVzdHJ1Y3RpdmVdOmhvdmVyOnRleHQtZGVzdHJ1Y3RpdmUtZm9yZWdyb3VuZCBncm91cC1bLmRlc3RydWN0aXZlXTpmb2N1czpyaW5nLWRlc3RydWN0aXZlXCIsXG4gICAgICBjbGFzc05hbWVcbiAgICApfVxuICAgIHsuLi5wcm9wc31cbiAgLz5cbikpXG5Ub2FzdEFjdGlvbi5kaXNwbGF5TmFtZSA9IFRvYXN0UHJpbWl0aXZlcy5BY3Rpb24uZGlzcGxheU5hbWVcblxuY29uc3QgVG9hc3RDbG9zZSA9IFJlYWN0LmZvcndhcmRSZWY8XG4gIFJlYWN0LkVsZW1lbnRSZWY8dHlwZW9mIFRvYXN0UHJpbWl0aXZlcy5DbG9zZT4sXG4gIFJlYWN0LkNvbXBvbmVudFByb3BzV2l0aG91dFJlZjx0eXBlb2YgVG9hc3RQcmltaXRpdmVzLkNsb3NlPlxuPigoeyBjbGFzc05hbWUsIC4uLnByb3BzIH0sIHJlZikgPT4gKFxuICA8VG9hc3RQcmltaXRpdmVzLkNsb3NlXG4gICAgcmVmPXtyZWZ9XG4gICAgY2xhc3NOYW1lPXtjbihcbiAgICAgIFwiYWJzb2x1dGUgcmlnaHQtMiB0b3AtMiByb3VuZGVkLW1kIHAtMSB0ZXh0LWZvcmVncm91bmQvNTAgb3BhY2l0eS0wIHRyYW5zaXRpb24tb3BhY2l0eSBob3Zlcjp0ZXh0LWZvcmVncm91bmQgZm9jdXM6b3BhY2l0eS0xMDAgZm9jdXM6b3V0bGluZS1ub25lIGZvY3VzOnJpbmctMiBncm91cC1ob3ZlcjpvcGFjaXR5LTEwMCBncm91cC1bLmRlc3RydWN0aXZlXTp0ZXh0LXJlZC0zMDAgZ3JvdXAtWy5kZXN0cnVjdGl2ZV06aG92ZXI6dGV4dC1yZWQtNTAgZ3JvdXAtWy5kZXN0cnVjdGl2ZV06Zm9jdXM6cmluZy1yZWQtNDAwIGdyb3VwLVsuZGVzdHJ1Y3RpdmVdOmZvY3VzOnJpbmctb2Zmc2V0LXJlZC02MDBcIixcbiAgICAgIGNsYXNzTmFtZVxuICAgICl9XG4gICAgdG9hc3QtY2xvc2U9XCJcIlxuICAgIHsuLi5wcm9wc31cbiAgPlxuICAgIDxYIGNsYXNzTmFtZT1cImgtNCB3LTRcIiAvPlxuICA8L1RvYXN0UHJpbWl0aXZlcy5DbG9zZT5cbikpXG5Ub2FzdENsb3NlLmRpc3BsYXlOYW1lID0gVG9hc3RQcmltaXRpdmVzLkNsb3NlLmRpc3BsYXlOYW1lXG5cbmNvbnN0IFRvYXN0VGl0bGUgPSBSZWFjdC5mb3J3YXJkUmVmPFxuICBSZWFjdC5FbGVtZW50UmVmPHR5cGVvZiBUb2FzdFByaW1pdGl2ZXMuVGl0bGU+LFxuICBSZWFjdC5Db21wb25lbnRQcm9wc1dpdGhvdXRSZWY8dHlwZW9mIFRvYXN0UHJpbWl0aXZlcy5UaXRsZT5cbj4oKHsgY2xhc3NOYW1lLCAuLi5wcm9wcyB9LCByZWYpID0+IChcbiAgPFRvYXN0UHJpbWl0aXZlcy5UaXRsZVxuICAgIHJlZj17cmVmfVxuICAgIGNsYXNzTmFtZT17Y24oXCJ0ZXh0LXNtIGZvbnQtc2VtaWJvbGRcIiwgY2xhc3NOYW1lKX1cbiAgICB7Li4ucHJvcHN9XG4gIC8+XG4pKVxuVG9hc3RUaXRsZS5kaXNwbGF5TmFtZSA9IFRvYXN0UHJpbWl0aXZlcy5UaXRsZS5kaXNwbGF5TmFtZVxuXG5jb25zdCBUb2FzdERlc2NyaXB0aW9uID0gUmVhY3QuZm9yd2FyZFJlZjxcbiAgUmVhY3QuRWxlbWVudFJlZjx0eXBlb2YgVG9hc3RQcmltaXRpdmVzLkRlc2NyaXB0aW9uPixcbiAgUmVhY3QuQ29tcG9uZW50UHJvcHNXaXRob3V0UmVmPHR5cGVvZiBUb2FzdFByaW1pdGl2ZXMuRGVzY3JpcHRpb24+XG4+KCh7IGNsYXNzTmFtZSwgLi4ucHJvcHMgfSwgcmVmKSA9PiAoXG4gIDxUb2FzdFByaW1pdGl2ZXMuRGVzY3JpcHRpb25cbiAgICByZWY9e3JlZn1cbiAgICBjbGFzc05hbWU9e2NuKFwidGV4dC1zbSBvcGFjaXR5LTkwXCIsIGNsYXNzTmFtZSl9XG4gICAgey4uLnByb3BzfVxuICAvPlxuKSlcblRvYXN0RGVzY3JpcHRpb24uZGlzcGxheU5hbWUgPSBUb2FzdFByaW1pdGl2ZXMuRGVzY3JpcHRpb24uZGlzcGxheU5hbWVcblxudHlwZSBUb2FzdFByb3BzID0gUmVhY3QuQ29tcG9uZW50UHJvcHNXaXRob3V0UmVmPHR5cGVvZiBUb2FzdD5cblxudHlwZSBUb2FzdEFjdGlvbkVsZW1lbnQgPSBSZWFjdC5SZWFjdEVsZW1lbnQ8dHlwZW9mIFRvYXN0QWN0aW9uPlxuXG5leHBvcnQge1xuICB0eXBlIFRvYXN0UHJvcHMsXG4gIHR5cGUgVG9hc3RBY3Rpb25FbGVtZW50LFxuICBUb2FzdFByb3ZpZGVyLFxuICBUb2FzdFZpZXdwb3J0LFxuICBUb2FzdCxcbiAgVG9hc3RUaXRsZSxcbiAgVG9hc3REZXNjcmlwdGlvbixcbiAgVG9hc3RDbG9zZSxcbiAgVG9hc3RBY3Rpb24sXG59XG4iXSwibmFtZXMiOlsiUmVhY3QiLCJUb2FzdFByaW1pdGl2ZXMiLCJjdmEiLCJYIiwiY24iLCJUb2FzdFByb3ZpZGVyIiwiUHJvdmlkZXIiLCJUb2FzdFZpZXdwb3J0IiwiZm9yd2FyZFJlZiIsImNsYXNzTmFtZSIsInByb3BzIiwicmVmIiwiVmlld3BvcnQiLCJkaXNwbGF5TmFtZSIsInRvYXN0VmFyaWFudHMiLCJ2YXJpYW50cyIsInZhcmlhbnQiLCJkZWZhdWx0IiwiZGVzdHJ1Y3RpdmUiLCJkZWZhdWx0VmFyaWFudHMiLCJUb2FzdCIsIlJvb3QiLCJUb2FzdEFjdGlvbiIsIkFjdGlvbiIsIlRvYXN0Q2xvc2UiLCJDbG9zZSIsInRvYXN0LWNsb3NlIiwiVG9hc3RUaXRsZSIsIlRpdGxlIiwiVG9hc3REZXNjcmlwdGlvbiIsIkRlc2NyaXB0aW9uIl0sImlnbm9yZUxpc3QiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./components/ui/toast.tsx\n");
/***/ }),
/***/ "(ssr)/./components/ui/toaster.tsx":
/*!***********************************!*\
!*** ./components/ui/toaster.tsx ***!
\***********************************/
/***/ ((__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 */ Toaster: () => (/* binding */ Toaster)\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/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 _hooks_use_toast__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @/hooks/use-toast */ \"(ssr)/./hooks/use-toast.ts\");\n/* harmony import */ var _components_ui_toast__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/components/ui/toast */ \"(ssr)/./components/ui/toast.tsx\");\n/* __next_internal_client_entry_do_not_use__ Toaster auto */ \n\n\nfunction Toaster() {\n const { toasts } = (0,_hooks_use_toast__WEBPACK_IMPORTED_MODULE_1__.useToast)();\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_toast__WEBPACK_IMPORTED_MODULE_2__.ToastProvider, {\n children: [\n toasts.map(function({ id, title, description, action, ...props }) {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_toast__WEBPACK_IMPORTED_MODULE_2__.Toast, {\n ...props,\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"grid gap-1\",\n children: [\n title && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_toast__WEBPACK_IMPORTED_MODULE_2__.ToastTitle, {\n children: title\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/toaster.tsx\",\n lineNumber: 22,\n columnNumber: 25\n }, this),\n description && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_toast__WEBPACK_IMPORTED_MODULE_2__.ToastDescription, {\n children: description\n }, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/toaster.tsx\",\n lineNumber: 24,\n columnNumber: 17\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/toaster.tsx\",\n lineNumber: 21,\n columnNumber: 13\n }, this),\n action,\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_toast__WEBPACK_IMPORTED_MODULE_2__.ToastClose, {}, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/toaster.tsx\",\n lineNumber: 28,\n columnNumber: 13\n }, this)\n ]\n }, id, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/toaster.tsx\",\n lineNumber: 20,\n columnNumber: 11\n }, this);\n }),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_ui_toast__WEBPACK_IMPORTED_MODULE_2__.ToastViewport, {}, void 0, false, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/toaster.tsx\",\n lineNumber: 32,\n columnNumber: 7\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/alma/Documents/NeahNew/components/ui/toaster.tsx\",\n lineNumber: 17,\n columnNumber: 5\n }, this);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9jb21wb25lbnRzL3VpL3RvYXN0ZXIudHN4IiwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUU0QztBQVFkO0FBRXZCLFNBQVNPO0lBQ2QsTUFBTSxFQUFFQyxNQUFNLEVBQUUsR0FBR1IsMERBQVFBO0lBRTNCLHFCQUNFLDhEQUFDSSwrREFBYUE7O1lBQ1hJLE9BQU9DLEdBQUcsQ0FBQyxTQUFVLEVBQUVDLEVBQUUsRUFBRUMsS0FBSyxFQUFFQyxXQUFXLEVBQUVDLE1BQU0sRUFBRSxHQUFHQyxPQUFPO2dCQUNoRSxxQkFDRSw4REFBQ2IsdURBQUtBO29CQUFXLEdBQUdhLEtBQUs7O3NDQUN2Qiw4REFBQ0M7NEJBQUlDLFdBQVU7O2dDQUNaTCx1QkFBUyw4REFBQ04sNERBQVVBOzhDQUFFTTs7Ozs7O2dDQUN0QkMsNkJBQ0MsOERBQUNULGtFQUFnQkE7OENBQUVTOzs7Ozs7Ozs7Ozs7d0JBR3RCQztzQ0FDRCw4REFBQ1gsNERBQVVBOzs7Ozs7bUJBUkRROzs7OztZQVdoQjswQkFDQSw4REFBQ0osK0RBQWFBOzs7Ozs7Ozs7OztBQUdwQiIsInNvdXJjZXMiOlsiL1VzZXJzL2FsbWEvRG9jdW1lbnRzL05lYWhOZXcvY29tcG9uZW50cy91aS90b2FzdGVyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBjbGllbnRcIlxuXG5pbXBvcnQgeyB1c2VUb2FzdCB9IGZyb20gXCJAL2hvb2tzL3VzZS10b2FzdFwiXG5pbXBvcnQge1xuICBUb2FzdCxcbiAgVG9hc3RDbG9zZSxcbiAgVG9hc3REZXNjcmlwdGlvbixcbiAgVG9hc3RQcm92aWRlcixcbiAgVG9hc3RUaXRsZSxcbiAgVG9hc3RWaWV3cG9ydCxcbn0gZnJvbSBcIkAvY29tcG9uZW50cy91aS90b2FzdFwiXG5cbmV4cG9ydCBmdW5jdGlvbiBUb2FzdGVyKCkge1xuICBjb25zdCB7IHRvYXN0cyB9ID0gdXNlVG9hc3QoKVxuXG4gIHJldHVybiAoXG4gICAgPFRvYXN0UHJvdmlkZXI+XG4gICAgICB7dG9hc3RzLm1hcChmdW5jdGlvbiAoeyBpZCwgdGl0bGUsIGRlc2NyaXB0aW9uLCBhY3Rpb24sIC4uLnByb3BzIH0pIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICA8VG9hc3Qga2V5PXtpZH0gey4uLnByb3BzfT5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZ3JpZCBnYXAtMVwiPlxuICAgICAgICAgICAgICB7dGl0bGUgJiYgPFRvYXN0VGl0bGU+e3RpdGxlfTwvVG9hc3RUaXRsZT59XG4gICAgICAgICAgICAgIHtkZXNjcmlwdGlvbiAmJiAoXG4gICAgICAgICAgICAgICAgPFRvYXN0RGVzY3JpcHRpb24+e2Rlc2NyaXB0aW9ufTwvVG9hc3REZXNjcmlwdGlvbj5cbiAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAge2FjdGlvbn1cbiAgICAgICAgICAgIDxUb2FzdENsb3NlIC8+XG4gICAgICAgICAgPC9Ub2FzdD5cbiAgICAgICAgKVxuICAgICAgfSl9XG4gICAgICA8VG9hc3RWaWV3cG9ydCAvPlxuICAgIDwvVG9hc3RQcm92aWRlcj5cbiAgKVxufVxuIl0sIm5hbWVzIjpbInVzZVRvYXN0IiwiVG9hc3QiLCJUb2FzdENsb3NlIiwiVG9hc3REZXNjcmlwdGlvbiIsIlRvYXN0UHJvdmlkZXIiLCJUb2FzdFRpdGxlIiwiVG9hc3RWaWV3cG9ydCIsIlRvYXN0ZXIiLCJ0b2FzdHMiLCJtYXAiLCJpZCIsInRpdGxlIiwiZGVzY3JpcHRpb24iLCJhY3Rpb24iLCJwcm9wcyIsImRpdiIsImNsYXNzTmFtZSJdLCJpZ25vcmVMaXN0IjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./components/ui/toaster.tsx\n");
/***/ }),
/***/ "(ssr)/./hooks/use-notifications.ts":
/*!************************************!*\
!*** ./hooks/use-notifications.ts ***!
\************************************/
/***/ ((__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 */ useNotifications: () => (/* binding */ useNotifications)\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/route-modules/app-page/vendored/ssr/react.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var next_auth_react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! next-auth/react */ \"(ssr)/./node_modules/next-auth/react/index.js\");\n/* harmony import */ var next_auth_react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(next_auth_react__WEBPACK_IMPORTED_MODULE_1__);\n\n\n// Default empty notification count\nconst defaultNotificationCount = {\n total: 0,\n unread: 0,\n sources: {}\n};\n// Debounce function to limit API calls\nfunction debounce(func, wait) {\n let timeout = null;\n return function(...args) {\n if (timeout) clearTimeout(timeout);\n timeout = setTimeout(()=>func(...args), wait);\n };\n}\nfunction useNotifications() {\n const { data: session, status } = (0,next_auth_react__WEBPACK_IMPORTED_MODULE_1__.useSession)();\n const [notifications, setNotifications] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)([]);\n const [notificationCount, setNotificationCount] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(defaultNotificationCount);\n const [loading, setLoading] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false);\n const [error, setError] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(null);\n const pollingIntervalRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);\n const lastFetchTimeRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(0);\n const isMountedRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(false);\n const isPollingRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(false);\n // Minimum time between fetches (in milliseconds)\n const MIN_FETCH_INTERVAL = 5000; // 5 seconds\n const POLLING_INTERVAL = 60000; // 1 minute\n // Fetch notification count with rate limiting\n const fetchNotificationCount = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)({\n \"useNotifications.useCallback[fetchNotificationCount]\": async (force = false)=>{\n if (!session?.user || !isMountedRef.current) return;\n const now = Date.now();\n if (!force && now - lastFetchTimeRef.current < MIN_FETCH_INTERVAL) {\n console.log('Skipping notification count fetch - too soon');\n return;\n }\n try {\n setError(null);\n lastFetchTimeRef.current = now;\n console.log('[useNotifications] Fetching notification count');\n const response = await fetch('/api/notifications/count', {\n credentials: 'include' // Ensure cookies are sent with the request\n });\n if (!response.ok) {\n const errorText = await response.text();\n console.error('Failed to fetch notification count:', {\n status: response.status,\n body: errorText\n });\n setError(errorText || 'Failed to fetch notification count');\n return;\n }\n const data = await response.json();\n if (isMountedRef.current) {\n setNotificationCount(data);\n }\n } catch (err) {\n console.error('Error fetching notification count:', err);\n setError('Failed to fetch notification count');\n }\n }\n }[\"useNotifications.useCallback[fetchNotificationCount]\"], [\n session?.user\n ]);\n // Debounced version to prevent rapid successive calls\n const debouncedFetchCount = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(debounce(fetchNotificationCount, 300), [\n fetchNotificationCount\n ]);\n // Fetch notifications\n const fetchNotifications = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)({\n \"useNotifications.useCallback[fetchNotifications]\": async (page = 1, limit = 20)=>{\n if (!session?.user || !isMountedRef.current) return;\n const now = Date.now();\n if (now - lastFetchTimeRef.current < MIN_FETCH_INTERVAL) {\n console.log('Skipping notifications fetch - too soon');\n return;\n }\n setLoading(true);\n setError(null);\n lastFetchTimeRef.current = now;\n try {\n console.log('[useNotifications] Fetching notifications', {\n page,\n limit\n });\n const response = await fetch(`/api/notifications?page=${page}&limit=${limit}`, {\n credentials: 'include' // Ensure cookies are sent with the request\n });\n if (!response.ok) {\n const errorText = await response.text();\n console.error('Failed to fetch notifications:', {\n status: response.status,\n body: errorText\n });\n setError(errorText || 'Failed to fetch notifications');\n return;\n }\n const data = await response.json();\n if (isMountedRef.current) {\n setNotifications(data.notifications);\n }\n } catch (err) {\n console.error('Error fetching notifications:', err);\n setError('Failed to fetch notifications');\n } finally{\n if (isMountedRef.current) {\n setLoading(false);\n }\n }\n }\n }[\"useNotifications.useCallback[fetchNotifications]\"], [\n session?.user\n ]);\n // Mark notification as read\n const markAsRead = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)({\n \"useNotifications.useCallback[markAsRead]\": async (notificationId)=>{\n if (!session?.user) return false;\n try {\n console.log('[useNotifications] Marking notification as read:', notificationId);\n const response = await fetch(`/api/notifications/${notificationId}/read`, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json'\n },\n credentials: 'include' // Ensure cookies are sent with the request\n });\n if (!response.ok) {\n const errorText = await response.text();\n console.error('Failed to mark notification as read:', {\n status: response.status,\n body: errorText\n });\n return false;\n }\n // Update local state\n setNotifications({\n \"useNotifications.useCallback[markAsRead]\": (prev)=>prev.map({\n \"useNotifications.useCallback[markAsRead]\": (notification)=>notification.id === notificationId ? {\n ...notification,\n isRead: true\n } : notification\n }[\"useNotifications.useCallback[markAsRead]\"])\n }[\"useNotifications.useCallback[markAsRead]\"]);\n // Refresh notification count\n debouncedFetchCount(true);\n return true;\n } catch (err) {\n console.error('Error marking notification as read:', err);\n return false;\n }\n }\n }[\"useNotifications.useCallback[markAsRead]\"], [\n session?.user,\n debouncedFetchCount\n ]);\n // Mark all notifications as read\n const markAllAsRead = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)({\n \"useNotifications.useCallback[markAllAsRead]\": async ()=>{\n if (!session?.user) return false;\n try {\n console.log('[useNotifications] Marking all notifications as read');\n const response = await fetch('/api/notifications/read-all', {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json'\n },\n credentials: 'include' // Ensure cookies are sent with the request\n });\n if (!response.ok) {\n const errorText = await response.text();\n console.error('Failed to mark all notifications as read:', {\n status: response.status,\n body: errorText\n });\n return false;\n }\n // Update local state\n setNotifications({\n \"useNotifications.useCallback[markAllAsRead]\": (prev)=>prev.map({\n \"useNotifications.useCallback[markAllAsRead]\": (notification)=>({\n ...notification,\n isRead: true\n })\n }[\"useNotifications.useCallback[markAllAsRead]\"])\n }[\"useNotifications.useCallback[markAllAsRead]\"]);\n // Refresh notification count\n debouncedFetchCount(true);\n return true;\n } catch (err) {\n console.error('Error marking all notifications as read:', err);\n return false;\n }\n }\n }[\"useNotifications.useCallback[markAllAsRead]\"], [\n session?.user,\n debouncedFetchCount\n ]);\n // Start polling for notification count\n const startPolling = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)({\n \"useNotifications.useCallback[startPolling]\": ()=>{\n if (isPollingRef.current) return;\n isPollingRef.current = true;\n if (pollingIntervalRef.current) {\n clearInterval(pollingIntervalRef.current);\n }\n // Ensure we don't create multiple intervals\n pollingIntervalRef.current = setInterval({\n \"useNotifications.useCallback[startPolling]\": ()=>{\n if (isMountedRef.current) {\n debouncedFetchCount();\n }\n }\n }[\"useNotifications.useCallback[startPolling]\"], POLLING_INTERVAL);\n return ({\n \"useNotifications.useCallback[startPolling]\": ()=>stopPolling()\n })[\"useNotifications.useCallback[startPolling]\"];\n }\n }[\"useNotifications.useCallback[startPolling]\"], [\n debouncedFetchCount\n ]);\n // Stop polling\n const stopPolling = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)({\n \"useNotifications.useCallback[stopPolling]\": ()=>{\n if (pollingIntervalRef.current) {\n clearInterval(pollingIntervalRef.current);\n pollingIntervalRef.current = null;\n }\n isPollingRef.current = false;\n }\n }[\"useNotifications.useCallback[stopPolling]\"], []);\n // Initialize fetching on component mount and cleanup on unmount\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)({\n \"useNotifications.useEffect\": ()=>{\n isMountedRef.current = true;\n if (status === 'authenticated' && session?.user) {\n // Initial fetches\n fetchNotificationCount(true);\n fetchNotifications();\n // Start polling\n startPolling();\n }\n return ({\n \"useNotifications.useEffect\": ()=>{\n isMountedRef.current = false;\n stopPolling();\n }\n })[\"useNotifications.useEffect\"];\n }\n }[\"useNotifications.useEffect\"], [\n status,\n session?.user,\n fetchNotificationCount,\n fetchNotifications,\n startPolling,\n stopPolling\n ]);\n return {\n notifications,\n notificationCount,\n loading,\n error,\n fetchNotifications,\n fetchNotificationCount: ()=>debouncedFetchCount(true),\n markAsRead,\n markAllAsRead\n };\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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QUF1QjtnQkFDdkJrQjtnQkFFQSxnQkFBZ0I7Z0JBQ2hCYTtZQUNGO1lBRUE7OENBQU87b0JBQ0xuQyxhQUFhTyxPQUFPLEdBQUc7b0JBQ3ZCK0I7Z0JBQ0Y7O1FBQ0Y7cUNBQUc7UUFBQ2pEO1FBQVFELFNBQVNrQjtRQUFNRjtRQUF3QmtCO1FBQW9CYTtRQUFjRztLQUFZO0lBRWpHLE9BQU87UUFDTGhEO1FBQ0FFO1FBQ0FFO1FBQ0FFO1FBQ0EwQjtRQUNBbEIsd0JBQXdCLElBQU1pQixvQkFBb0I7UUFDbERJO1FBQ0FTO0lBQ0Y7QUFDRiIsInNvdXJjZXMiOlsiL1VzZXJzL2FsbWEvRG9jdW1lbnRzL05lYWhOZXcvaG9va3MvdXNlLW5vdGlmaWNhdGlvbnMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlU3RhdGUsIHVzZUVmZmVjdCwgdXNlQ2FsbGJhY2ssIHVzZVJlZiB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHVzZVNlc3Npb24gfSBmcm9tICduZXh0LWF1dGgvcmVhY3QnO1xuaW1wb3J0IHsgTm90aWZpY2F0aW9uLCBOb3RpZmljYXRpb25Db3VudCB9IGZyb20gJ0AvbGliL3R5cGVzL25vdGlmaWNhdGlvbic7XG5cbi8vIERlZmF1bHQgZW1wdHkgbm90aWZpY2F0aW9uIGNvdW50XG5jb25zdCBkZWZhdWx0Tm90aWZpY2F0aW9uQ291bnQ6IE5vdGlmaWNhdGlvbkNvdW50ID0ge1xuICB0b3RhbDogMCxcbiAgdW5yZWFkOiAwLFxuICBzb3VyY2VzOiB7fVxufTtcblxuLy8gRGVib3VuY2UgZnVuY3Rpb24gdG8gbGltaXQgQVBJIGNhbGxzXG5mdW5jdGlvbiBkZWJvdW5jZTxUIGV4dGVuZHMgKC4uLmFyZ3M6IGFueVtdKSA9PiBhbnk+KFxuICBmdW5jOiBULFxuICB3YWl0OiBudW1iZXJcbik6ICguLi5hcmdzOiBQYXJhbWV0ZXJzPFQ+KSA9PiB2b2lkIHtcbiAgbGV0IHRpbWVvdXQ6IE5vZGVKUy5UaW1lb3V0IHwgbnVsbCA9IG51bGw7XG4gIFxuICByZXR1cm4gZnVuY3Rpb24oLi4uYXJnczogUGFyYW1ldGVyczxUPikge1xuICAgIGlmICh0aW1lb3V0KSBjbGVhclRpbWVvdXQodGltZW91dCk7XG4gICAgdGltZW91dCA9IHNldFRpbWVvdXQoKCkgPT4gZnVuYyguLi5hcmdzKSwgd2FpdCk7XG4gIH07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB1c2VOb3RpZmljYXRpb25zKCkge1xuICBjb25zdCB7IGRhdGE6IHNlc3Npb24sIHN0YXR1cyB9ID0gdXNlU2Vzc2lvbigpO1xuICBjb25zdCBbbm90aWZpY2F0aW9ucywgc2V0Tm90aWZpY2F0aW9uc10gPSB1c2VTdGF0ZTxOb3RpZmljYXRpb25bXT4oW10pO1xuICBjb25zdCBbbm90aWZpY2F0aW9uQ291bnQsIHNldE5vdGlmaWNhdGlvbkNvdW50XSA9IHVzZVN0YXRlPE5vdGlmaWNhdGlvbkNvdW50PihkZWZhdWx0Tm90aWZpY2F0aW9uQ291bnQpO1xuICBjb25zdCBbbG9hZGluZywgc2V0TG9hZGluZ10gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IFtlcnJvciwgc2V0RXJyb3JdID0gdXNlU3RhdGU8c3RyaW5nIHwgbnVsbD4obnVsbCk7XG4gIGNvbnN0IHBvbGxpbmdJbnRlcnZhbFJlZiA9IHVzZVJlZjxOb2RlSlMuVGltZW91dCB8IG51bGw+KG51bGwpO1xuICBjb25zdCBsYXN0RmV0Y2hUaW1lUmVmID0gdXNlUmVmPG51bWJlcj4oMCk7XG4gIGNvbnN0IGlzTW91bnRlZFJlZiA9IHVzZVJlZjxib29sZWFuPihmYWxzZSk7XG4gIGNvbnN0IGlzUG9sbGluZ1JlZiA9IHVzZVJlZjxib29sZWFuPihmYWxzZSk7XG4gIFxuICAvLyBNaW5pbXVtIHRpbWUgYmV0d2VlbiBmZXRjaGVzIChpbiBtaWxsaXNlY29uZHMpXG4gIGNvbnN0IE1JTl9GRVRDSF9JTlRFUlZBTCA9IDUwMDA7IC8vIDUgc2Vjb25kc1xuICBjb25zdCBQT0xMSU5HX0lOVEVSVkFMID0gNjAwMDA7ICAvLyAxIG1pbnV0ZVxuXG4gIC8vIEZldGNoIG5vdGlmaWNhdGlvbiBjb3VudCB3aXRoIHJhdGUgbGltaXRpbmdcbiAgY29uc3QgZmV0Y2hOb3RpZmljYXRpb25Db3VudCA9IHVzZUNhbGxiYWNrKGFzeW5jIChmb3JjZSA9IGZhbHNlKSA9PiB7XG4gICAgaWYgKCFzZXNzaW9uPy51c2VyIHx8ICFpc01vdW50ZWRSZWYuY3VycmVudCkgcmV0dXJuO1xuICAgIFxuICAgIGNvbnN0IG5vdyA9IERhdGUubm93KCk7XG4gICAgaWYgKCFmb3JjZSAmJiBub3cgLSBsYXN0RmV0Y2hUaW1lUmVmLmN1cnJlbnQgPCBNSU5fRkVUQ0hfSU5URVJWQUwpIHtcbiAgICAgIGNvbnNvbGUubG9nKCdTa2lwcGluZyBub3RpZmljYXRpb24gY291bnQgZmV0Y2ggLSB0b28gc29vbicpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBcbiAgICB0cnkge1xuICAgICAgc2V0RXJyb3IobnVsbCk7XG4gICAgICBsYXN0RmV0Y2hUaW1lUmVmLmN1cnJlbnQgPSBub3c7XG4gICAgICBcbiAgICAgIGNvbnNvbGUubG9nKCdbdXNlTm90aWZpY2F0aW9uc10gRmV0Y2hpbmcgbm90aWZpY2F0aW9uIGNvdW50Jyk7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoKCcvYXBpL25vdGlmaWNhdGlvbnMvY291bnQnLCB7XG4gICAgICAgIGNyZWRlbnRpYWxzOiAnaW5jbHVkZScgLy8gRW5zdXJlIGNvb2tpZXMgYXJlIHNlbnQgd2l0aCB0aGUgcmVxdWVzdFxuICAgICAgfSk7XG4gICAgICBcbiAgICAgIGlmICghcmVzcG9uc2Uub2spIHtcbiAgICAgICAgY29uc3QgZXJyb3JUZXh0ID0gYXdhaXQgcmVzcG9uc2UudGV4dCgpO1xuICAgICAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gZmV0Y2ggbm90aWZpY2F0aW9uIGNvdW50OicsIHtcbiAgICAgICAgICBzdGF0dXM6IHJlc3BvbnNlLnN0YXR1cyxcbiAgICAgICAgICBib2R5OiBlcnJvclRleHRcbiAgICAgICAgfSk7XG4gICAgICAgIHNldEVycm9yKGVycm9yVGV4dCB8fCAnRmFpbGVkIHRvIGZldGNoIG5vdGlmaWNhdGlvbiBjb3VudCcpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBcbiAgICAgIGNvbnN0IGRhdGEgPSBhd2FpdCByZXNwb25zZS5qc29uKCk7XG4gICAgICBpZiAoaXNNb3VudGVkUmVmLmN1cnJlbnQpIHtcbiAgICAgICAgc2V0Tm90aWZpY2F0aW9uQ291bnQoZGF0YSk7XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBmZXRjaGluZyBub3RpZmljYXRpb24gY291bnQ6JywgZXJyKTtcbiAgICAgIHNldEVycm9yKCdGYWlsZWQgdG8gZmV0Y2ggbm90aWZpY2F0aW9uIGNvdW50Jyk7XG4gICAgfVxuICB9LCBbc2Vzc2lvbj8udXNlcl0pO1xuXG4gIC8vIERlYm91bmNlZCB2ZXJzaW9uIHRvIHByZXZlbnQgcmFwaWQgc3VjY2Vzc2l2ZSBjYWxsc1xuICBjb25zdCBkZWJvdW5jZWRGZXRjaENvdW50ID0gdXNlQ2FsbGJhY2soXG4gICAgZGVib3VuY2UoZmV0Y2hOb3RpZmljYXRpb25Db3VudCwgMzAwKSxcbiAgICBbZmV0Y2hOb3RpZmljYXRpb25Db3VudF1cbiAgKTtcblxuICAvLyBGZXRjaCBub3RpZmljYXRpb25zXG4gIGNvbnN0IGZldGNoTm90aWZpY2F0aW9ucyA9IHVzZUNhbGxiYWNrKGFzeW5jIChwYWdlID0gMSwgbGltaXQgPSAyMCkgPT4ge1xuICAgIGlmICghc2Vzc2lvbj8udXNlciB8fCAhaXNNb3VudGVkUmVmLmN1cnJlbnQpIHJldHVybjtcbiAgICBcbiAgICBjb25zdCBub3cgPSBEYXRlLm5vdygpO1xuICAgIGlmIChub3cgLSBsYXN0RmV0Y2hUaW1lUmVmLmN1cnJlbnQgPCBNSU5fRkVUQ0hfSU5URVJWQUwpIHtcbiAgICAgIGNvbnNvbGUubG9nKCdTa2lwcGluZyBub3RpZmljYXRpb25zIGZldGNoIC0gdG9vIHNvb24nKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgXG4gICAgc2V0TG9hZGluZyh0cnVlKTtcbiAgICBzZXRFcnJvcihudWxsKTtcbiAgICBsYXN0RmV0Y2hUaW1lUmVmLmN1cnJlbnQgPSBub3c7XG4gICAgXG4gICAgdHJ5IHtcbiAgICAgIGNvbnNvbGUubG9nKCdbdXNlTm90aWZpY2F0aW9uc10gRmV0Y2hpbmcgbm90aWZpY2F0aW9ucycsIHsgcGFnZSwgbGltaXQgfSk7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoKGAvYXBpL25vdGlmaWNhdGlvbnM/cGFnZT0ke3BhZ2V9JmxpbWl0PSR7bGltaXR9YCwge1xuICAgICAgICBjcmVkZW50aWFsczogJ2luY2x1ZGUnIC8vIEVuc3VyZSBjb29raWVzIGFyZSBzZW50IHdpdGggdGhlIHJlcXVlc3RcbiAgICAgIH0pO1xuICAgICAgXG4gICAgICBpZiAoIXJlc3BvbnNlLm9rKSB7XG4gICAgICAgIGNvbnN0IGVycm9yVGV4dCA9IGF3YWl0IHJlc3BvbnNlLnRleHQoKTtcbiAgICAgICAgY29uc29sZS5lcnJvcignRmFpbGVkIHRvIGZldGNoIG5vdGlmaWNhdGlvbnM6Jywge1xuICAgICAgICAgIHN0YXR1czogcmVzcG9uc2Uuc3RhdHVzLFxuICAgICAgICAgIGJvZHk6IGVycm9yVGV4dFxuICAgICAgICB9KTtcbiAgICAgICAgc2V0RXJyb3IoZXJyb3JUZXh0IHx8ICdGYWlsZWQgdG8gZmV0Y2ggbm90aWZpY2F0aW9ucycpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBcbiAgICAgIGNvbnN0IGRhdGEgPSBhd2FpdCByZXNwb25zZS5qc29uKCk7XG4gICAgICBpZiAoaXNNb3VudGVkUmVmLmN1cnJlbnQpIHtcbiAgICAgICAgc2V0Tm90aWZpY2F0aW9ucyhkYXRhLm5vdGlmaWNhdGlvbnMpO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgZmV0Y2hpbmcgbm90aWZpY2F0aW9uczonLCBlcnIpO1xuICAgICAgc2V0RXJyb3IoJ0ZhaWxlZCB0byBmZXRjaCBub3RpZmljYXRpb25zJyk7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIGlmIChpc01vdW50ZWRSZWYuY3VycmVudCkge1xuICAgICAgICBzZXRMb2FkaW5nKGZhbHNlKTtcbiAgICAgIH1cbiAgICB9XG4gIH0sIFtzZXNzaW9uPy51c2VyXSk7XG5cbiAgLy8gTWFyayBub3RpZmljYXRpb24gYXMgcmVhZFxuICBjb25zdCBtYXJrQXNSZWFkID0gdXNlQ2FsbGJhY2soYXN5bmMgKG5vdGlmaWNhdGlvbklkOiBzdHJpbmcpID0+IHtcbiAgICBpZiAoIXNlc3Npb24/LnVzZXIpIHJldHVybiBmYWxzZTtcbiAgICBcbiAgICB0cnkge1xuICAgICAgY29uc29sZS5sb2coJ1t1c2VOb3RpZmljYXRpb25zXSBNYXJraW5nIG5vdGlmaWNhdGlvbiBhcyByZWFkOicsIG5vdGlmaWNhdGlvbklkKTtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2goYC9hcGkvbm90aWZpY2F0aW9ucy8ke25vdGlmaWNhdGlvbklkfS9yZWFkYCwge1xuICAgICAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICAgICAgaGVhZGVyczoge1xuICAgICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbidcbiAgICAgICAgfSxcbiAgICAgICAgY3JlZGVudGlhbHM6ICdpbmNsdWRlJyAvLyBFbnN1cmUgY29va2llcyBhcmUgc2VudCB3aXRoIHRoZSByZXF1ZXN0XG4gICAgICB9KTtcbiAgICAgIFxuICAgICAgaWYgKCFyZXNwb25zZS5vaykge1xuICAgICAgICBjb25zdCBlcnJvclRleHQgPSBhd2FpdCByZXNwb25zZS50ZXh0KCk7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ0ZhaWxlZCB0byBtYXJrIG5vdGlmaWNhdGlvbiBhcyByZWFkOicsIHtcbiAgICAgICAgICBzdGF0dXM6IHJlc3BvbnNlLnN0YXR1cyxcbiAgICAgICAgICBib2R5OiBlcnJvclRleHRcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgLy8gVXBkYXRlIGxvY2FsIHN0YXRlXG4gICAgICBzZXROb3RpZmljYXRpb25zKHByZXYgPT4gXG4gICAgICAgIHByZXYubWFwKG5vdGlmaWNhdGlvbiA9PiBcbiAgICAgICAgICBub3RpZmljYXRpb24uaWQgPT09IG5vdGlmaWNhdGlvbklkXG4gICAgICAgICAgICA/IHsgLi4ubm90aWZpY2F0aW9uLCBpc1JlYWQ6IHRydWUgfVxuICAgICAgICAgICAgOiBub3RpZmljYXRpb25cbiAgICAgICAgKVxuICAgICAgKTtcbiAgICAgIFxuICAgICAgLy8gUmVmcmVzaCBub3RpZmljYXRpb24gY291bnRcbiAgICAgIGRlYm91bmNlZEZldGNoQ291bnQodHJ1ZSk7XG4gICAgICBcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgbWFya2luZyBub3RpZmljYXRpb24gYXMgcmVhZDonLCBlcnIpO1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfSwgW3Nlc3Npb24/LnVzZXIsIGRlYm91bmNlZEZldGNoQ291bnRdKTtcblxuICAvLyBNYXJrIGFsbCBub3RpZmljYXRpb25zIGFzIHJlYWRcbiAgY29uc3QgbWFya0FsbEFzUmVhZCA9IHVzZUNhbGxiYWNrKGFzeW5jICgpID0+IHtcbiAgICBpZiAoIXNlc3Npb24/LnVzZXIpIHJldHVybiBmYWxzZTtcbiAgICBcbiAgICB0cnkge1xuICAgICAgY29uc29sZS5sb2coJ1t1c2VOb3RpZmljYXRpb25zXSBNYXJraW5nIGFsbCBub3RpZmljYXRpb25zIGFzIHJlYWQnKTtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2goJy9hcGkvbm90aWZpY2F0aW9ucy9yZWFkLWFsbCcsIHtcbiAgICAgICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nXG4gICAgICAgIH0sXG4gICAgICAgIGNyZWRlbnRpYWxzOiAnaW5jbHVkZScgLy8gRW5zdXJlIGNvb2tpZXMgYXJlIHNlbnQgd2l0aCB0aGUgcmVxdWVzdFxuICAgICAgfSk7XG4gICAgICBcbiAgICAgIGlmICghcmVzcG9uc2Uub2spIHtcbiAgICAgICAgY29uc3QgZXJyb3JUZXh0ID0gYXdhaXQgcmVzcG9uc2UudGV4dCgpO1xuICAgICAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gbWFyayBhbGwgbm90aWZpY2F0aW9ucyBhcyByZWFkOicsIHtcbiAgICAgICAgICBzdGF0dXM6IHJlc3BvbnNlLnN0YXR1cyxcbiAgICAgICAgICBib2R5OiBlcnJvclRleHRcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgLy8gVXBkYXRlIGxvY2FsIHN0YXRlXG4gICAgICBzZXROb3RpZmljYXRpb25zKHByZXYgPT4gXG4gICAgICAgIHByZXYubWFwKG5vdGlmaWNhdGlvbiA9PiAoeyAuLi5ub3RpZmljYXRpb24sIGlzUmVhZDogdHJ1ZSB9KSlcbiAgICAgICk7XG4gICAgICBcbiAgICAgIC8vIFJlZnJlc2ggbm90aWZpY2F0aW9uIGNvdW50XG4gICAgICBkZWJvdW5jZWRGZXRjaENvdW50KHRydWUpO1xuICAgICAgXG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIG1hcmtpbmcgYWxsIG5vdGlmaWNhdGlvbnMgYXMgcmVhZDonLCBlcnIpO1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfSwgW3Nlc3Npb24/LnVzZXIsIGRlYm91bmNlZEZldGNoQ291bnRdKTtcblxuICAvLyBTdGFydCBwb2xsaW5nIGZvciBub3RpZmljYXRpb24gY291bnRcbiAgY29uc3Qgc3RhcnRQb2xsaW5nID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIGlmIChpc1BvbGxpbmdSZWYuY3VycmVudCkgcmV0dXJuO1xuICAgIFxuICAgIGlzUG9sbGluZ1JlZi5jdXJyZW50ID0gdHJ1ZTtcbiAgICBcbiAgICBpZiAocG9sbGluZ0ludGVydmFsUmVmLmN1cnJlbnQpIHtcbiAgICAgIGNsZWFySW50ZXJ2YWwocG9sbGluZ0ludGVydmFsUmVmLmN1cnJlbnQpO1xuICAgIH1cbiAgICBcbiAgICAvLyBFbnN1cmUgd2UgZG9uJ3QgY3JlYXRlIG11bHRpcGxlIGludGVydmFsc1xuICAgIHBvbGxpbmdJbnRlcnZhbFJlZi5jdXJyZW50ID0gc2V0SW50ZXJ2YWwoKCkgPT4ge1xuICAgICAgaWYgKGlzTW91bnRlZFJlZi5jdXJyZW50KSB7XG4gICAgICAgIGRlYm91bmNlZEZldGNoQ291bnQoKTtcbiAgICAgIH1cbiAgICB9LCBQT0xMSU5HX0lOVEVSVkFMKTtcbiAgICBcbiAgICByZXR1cm4gKCkgPT4gc3RvcFBvbGxpbmcoKTtcbiAgfSwgW2RlYm91bmNlZEZldGNoQ291bnRdKTtcblxuICAvLyBTdG9wIHBvbGxpbmdcbiAgY29uc3Qgc3RvcFBvbGxpbmcgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgaWYgKHBvbGxpbmdJbnRlcnZhbFJlZi5jdXJyZW50KSB7XG4gICAgICBjbGVhckludGVydmFsKHBvbGxpbmdJbnRlcnZhbFJlZi5jdXJyZW50KTtcbiAgICAgIHBvbGxpbmdJbnRlcnZhbFJlZi5jdXJyZW50ID0gbnVsbDtcbiAgICB9XG4gICAgaXNQb2xsaW5nUmVmLmN1cnJlbnQgPSBmYWxzZTtcbiAgfSwgW10pO1xuXG4gIC8vIEluaXRpYWxpemUgZmV0Y2hpbmcgb24gY29tcG9uZW50IG1vdW50IGFuZCBjbGVhbnVwIG9uIHVubW91bnRcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpc01vdW50ZWRSZWYuY3VycmVudCA9IHRydWU7XG4gICAgXG4gICAgaWYgKHN0YXR1cyA9PT0gJ2F1dGhlbnRpY2F0ZWQnICYmIHNlc3Npb24/LnVzZXIpIHtcbiAgICAgIC8vIEluaXRpYWwgZmV0Y2hlc1xuICAgICAgZmV0Y2hOb3RpZmljYXRpb25Db3VudCh0cnVlKTtcbiAgICAgIGZldGNoTm90aWZpY2F0aW9ucygpO1xuICAgICAgXG4gICAgICAvLyBTdGFydCBwb2xsaW5nXG4gICAgICBzdGFydFBvbGxpbmcoKTtcbiAgICB9XG4gICAgXG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIGlzTW91bnRlZFJlZi5jdXJyZW50ID0gZmFsc2U7XG4gICAgICBzdG9wUG9sbGluZygpO1xuICAgIH07XG4gIH0sIFtzdGF0dXMsIHNlc3Npb24/LnVzZXIsIGZldGNoTm90aWZpY2F0aW9uQ291bnQsIGZldGNoTm90aWZpY2F0aW9ucywgc3RhcnRQb2xsaW5nLCBzdG9wUG9sbGluZ10pO1xuXG4gIHJldHVybiB7XG4gICAgbm90aWZpY2F0aW9ucyxcbiAgICBub3RpZmljYXRpb25Db3VudCxcbiAgICBsb2FkaW5nLFxuICAgIGVycm9yLFxuICAgIGZldGNoTm90aWZpY2F0aW9ucyxcbiAgICBmZXRjaE5vdGlmaWNhdGlvbkNvdW50OiAoKSA9PiBkZWJvdW5jZWRGZXRjaENvdW50KHRydWUpLFxuICAgIG1hcmtBc1JlYWQsXG4gICAgbWFya0FsbEFzUmVhZFxuICB9O1xufSAiXSwibmFtZXMiOlsidXNlU3RhdGUiLCJ1c2VFZmZlY3QiLCJ1c2VDYWxsYmFjayIsInVzZVJlZiIsInVzZVNlc3Npb24iLCJkZWZhdWx0Tm90aWZpY2F0aW9uQ291bnQiLCJ0b3RhbCIsInVucmVhZCIsInNvdXJjZXMiLCJkZWJvdW5jZSIsImZ1bmMiLCJ3YWl0IiwidGltZW91dCIsImFyZ3MiLCJjbGVhclRpbWVvdXQiLCJzZXRUaW1lb3V0IiwidXNlTm90aWZpY2F0aW9ucyIsImRhdGEiLCJzZXNzaW9uIiwic3RhdHVzIiwibm90aWZpY2F0aW9ucyIsInNldE5vdGlmaWNhdGlvbnMiLCJub3RpZmljYXRpb25Db3VudCIsInNldE5vdGlmaWNhdGlvbkNvdW50IiwibG9hZGluZyIsInNldExvYWRpbmciLCJlcnJvciIsInNldEVycm9yIiwicG9sbGluZ0ludGVydmFsUmVmIiwibGFzdEZldGNoVGltZVJlZiIsImlzTW91bnRlZFJlZiIsImlzUG9sbGluZ1JlZiIsIk1JTl9GRVRDSF9JTlRFUlZBTCIsIlBPTExJTkdfSU5URVJWQUwiLCJmZXRjaE5vdGlmaWNhdGlvbkNvdW50IiwiZm9yY2UiLCJ1c2VyIiwiY3VycmVudCIsIm5vdyIsIkRhdGUiLCJjb25zb2xlIiwibG9nIiwicmVzcG9uc2UiLCJmZXRjaCIsImNyZWRlbnRpYWxzIiwib2siLCJlcnJvclRleHQiLCJ0ZXh0IiwiYm9keSIsImpzb24iLCJlcnIiLCJkZWJvdW5jZWRGZXRjaENvdW50IiwiZmV0Y2hOb3RpZmljYXRpb25zIiwicGFnZSIsImxpbWl0IiwibWFya0FzUmVhZCIsIm5vdGlmaWNhdGlvbklkIiwibWV0aG9kIiwiaGVhZGVycyIsInByZXYiLCJtYXAiLCJub3RpZmljYXRpb24iLCJpZCIsImlzUmVhZCIsIm1hcmtBbGxBc1JlYWQiLCJzdGFydFBvbGxpbmciLCJjbGVhckludGVydmFsIiwic2V0SW50ZXJ2YWwiLCJzdG9wUG9sbGluZyJdLCJpZ25vcmVMaXN0IjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./hooks/use-notifications.ts\n");
/***/ }),
/***/ "(ssr)/./hooks/use-toast.ts":
/*!****************************!*\
!*** ./hooks/use-toast.ts ***!
\****************************/
/***/ ((__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 */ reducer: () => (/* binding */ reducer),\n/* harmony export */ toast: () => (/* binding */ toast),\n/* harmony export */ useToast: () => (/* binding */ useToast)\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/route-modules/app-page/vendored/ssr/react.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);\n/* __next_internal_client_entry_do_not_use__ reducer,useToast,toast auto */ // Inspired by react-hot-toast library\n\nconst TOAST_LIMIT = 1;\nconst TOAST_REMOVE_DELAY = 1000000;\nconst actionTypes = {\n ADD_TOAST: \"ADD_TOAST\",\n UPDATE_TOAST: \"UPDATE_TOAST\",\n DISMISS_TOAST: \"DISMISS_TOAST\",\n REMOVE_TOAST: \"REMOVE_TOAST\"\n};\nlet count = 0;\nfunction genId() {\n count = (count + 1) % Number.MAX_SAFE_INTEGER;\n return count.toString();\n}\nconst toastTimeouts = new Map();\nconst addToRemoveQueue = (toastId)=>{\n if (toastTimeouts.has(toastId)) {\n return;\n }\n const timeout = setTimeout(()=>{\n toastTimeouts.delete(toastId);\n dispatch({\n type: \"REMOVE_TOAST\",\n toastId: toastId\n });\n }, TOAST_REMOVE_DELAY);\n toastTimeouts.set(toastId, timeout);\n};\nconst reducer = (state, action)=>{\n switch(action.type){\n case \"ADD_TOAST\":\n return {\n ...state,\n toasts: [\n action.toast,\n ...state.toasts\n ].slice(0, TOAST_LIMIT)\n };\n case \"UPDATE_TOAST\":\n return {\n ...state,\n toasts: state.toasts.map((t)=>t.id === action.toast.id ? {\n ...t,\n ...action.toast\n } : t)\n };\n case \"DISMISS_TOAST\":\n {\n const { toastId } = action;\n // ! Side effects ! - This could be extracted into a dismissToast() action,\n // but I'll keep it here for simplicity\n if (toastId) {\n addToRemoveQueue(toastId);\n } else {\n state.toasts.forEach((toast)=>{\n addToRemoveQueue(toast.id);\n });\n }\n return {\n ...state,\n toasts: state.toasts.map((t)=>t.id === toastId || toastId === undefined ? {\n ...t,\n open: false\n } : t)\n };\n }\n case \"REMOVE_TOAST\":\n if (action.toastId === undefined) {\n return {\n ...state,\n toasts: []\n };\n }\n return {\n ...state,\n toasts: state.toasts.filter((t)=>t.id !== action.toastId)\n };\n }\n};\nconst listeners = [];\nlet memoryState = {\n toasts: []\n};\nfunction dispatch(action) {\n memoryState = reducer(memoryState, action);\n listeners.forEach((listener)=>{\n listener(memoryState);\n });\n}\nfunction toast({ ...props }) {\n const id = genId();\n const update = (props)=>dispatch({\n type: \"UPDATE_TOAST\",\n toast: {\n ...props,\n id\n }\n });\n const dismiss = ()=>dispatch({\n type: \"DISMISS_TOAST\",\n toastId: id\n });\n dispatch({\n type: \"ADD_TOAST\",\n toast: {\n ...props,\n id,\n open: true,\n onOpenChange: (open)=>{\n if (!open) dismiss();\n }\n }\n });\n return {\n id: id,\n dismiss,\n update\n };\n}\nfunction useToast() {\n const [state, setState] = react__WEBPACK_IMPORTED_MODULE_0__.useState(memoryState);\n react__WEBPACK_IMPORTED_MODULE_0__.useEffect({\n \"useToast.useEffect\": ()=>{\n listeners.push(setState);\n return ({\n \"useToast.useEffect\": ()=>{\n const index = listeners.indexOf(setState);\n if (index > -1) {\n listeners.splice(index, 1);\n }\n }\n })[\"useToast.useEffect\"];\n }\n }[\"useToast.useEffect\"], [\n state\n ]);\n return {\n ...state,\n toast,\n dismiss: (toastId)=>dispatch({\n type: \"DISMISS_TOAST\",\n toastId\n })\n };\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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QVUsSUFBTXJCLFNBQVM7WUFBRUMsTUFBTTtZQUFpQk4sU0FBU2dCO1FBQUc7SUFFcEVYLFNBQVM7UUFDUEMsTUFBTTtRQUNOTSxPQUFPO1lBQ0wsR0FBR1ksS0FBSztZQUNSUjtZQUNBRyxNQUFNO1lBQ05RLGNBQWMsQ0FBQ1I7Z0JBQ2IsSUFBSSxDQUFDQSxNQUFNTztZQUNiO1FBQ0Y7SUFDRjtJQUVBLE9BQU87UUFDTFYsSUFBSUE7UUFDSlU7UUFDQUQ7SUFDRjtBQUNGO0FBRUEsU0FBU0c7SUFDUCxNQUFNLENBQUNuQixPQUFPb0IsU0FBUyxHQUFHN0MsMkNBQWMsQ0FBUXNDO0lBRWhEdEMsNENBQWU7OEJBQUM7WUFDZHFDLFVBQVVXLElBQUksQ0FBQ0g7WUFDZjtzQ0FBTztvQkFDTCxNQUFNSSxRQUFRWixVQUFVYSxPQUFPLENBQUNMO29CQUNoQyxJQUFJSSxRQUFRLENBQUMsR0FBRzt3QkFDZFosVUFBVWMsTUFBTSxDQUFDRixPQUFPO29CQUMxQjtnQkFDRjs7UUFDRjs2QkFBRztRQUFDeEI7S0FBTTtJQUVWLE9BQU87UUFDTCxHQUFHQSxLQUFLO1FBQ1JHO1FBQ0FjLFNBQVMsQ0FBQzFCLFVBQXFCSyxTQUFTO2dCQUFFQyxNQUFNO2dCQUFpQk47WUFBUTtJQUMzRTtBQUNGO0FBRTBCIiwic291cmNlcyI6WyIvVXNlcnMvYWxtYS9Eb2N1bWVudHMvTmVhaE5ldy9ob29rcy91c2UtdG9hc3QudHMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2UgY2xpZW50XCJcblxuLy8gSW5zcGlyZWQgYnkgcmVhY3QtaG90LXRvYXN0IGxpYnJhcnlcbmltcG9ydCAqIGFzIFJlYWN0IGZyb20gXCJyZWFjdFwiXG5cbmltcG9ydCB0eXBlIHtcbiAgVG9hc3RBY3Rpb25FbGVtZW50LFxuICBUb2FzdFByb3BzLFxufSBmcm9tIFwiQC9jb21wb25lbnRzL3VpL3RvYXN0XCJcblxuY29uc3QgVE9BU1RfTElNSVQgPSAxXG5jb25zdCBUT0FTVF9SRU1PVkVfREVMQVkgPSAxMDAwMDAwXG5cbnR5cGUgVG9hc3RlclRvYXN0ID0gVG9hc3RQcm9wcyAmIHtcbiAgaWQ6IHN0cmluZ1xuICB0aXRsZT86IFJlYWN0LlJlYWN0Tm9kZVxuICBkZXNjcmlwdGlvbj86IFJlYWN0LlJlYWN0Tm9kZVxuICBhY3Rpb24/OiBUb2FzdEFjdGlvbkVsZW1lbnRcbn1cblxuY29uc3QgYWN0aW9uVHlwZXMgPSB7XG4gIEFERF9UT0FTVDogXCJBRERfVE9BU1RcIixcbiAgVVBEQVRFX1RPQVNUOiBcIlVQREFURV9UT0FTVFwiLFxuICBESVNNSVNTX1RPQVNUOiBcIkRJU01JU1NfVE9BU1RcIixcbiAgUkVNT1ZFX1RPQVNUOiBcIlJFTU9WRV9UT0FTVFwiLFxufSBhcyBjb25zdFxuXG5sZXQgY291bnQgPSAwXG5cbmZ1bmN0aW9uIGdlbklkKCkge1xuICBjb3VudCA9IChjb3VudCArIDEpICUgTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVJcbiAgcmV0dXJuIGNvdW50LnRvU3RyaW5nKClcbn1cblxudHlwZSBBY3Rpb25UeXBlID0gdHlwZW9mIGFjdGlvblR5cGVzXG5cbnR5cGUgQWN0aW9uID1cbiAgfCB7XG4gICAgICB0eXBlOiBBY3Rpb25UeXBlW1wiQUREX1RPQVNUXCJdXG4gICAgICB0b2FzdDogVG9hc3RlclRvYXN0XG4gICAgfVxuICB8IHtcbiAgICAgIHR5cGU6IEFjdGlvblR5cGVbXCJVUERBVEVfVE9BU1RcIl1cbiAgICAgIHRvYXN0OiBQYXJ0aWFsPFRvYXN0ZXJUb2FzdD5cbiAgICB9XG4gIHwge1xuICAgICAgdHlwZTogQWN0aW9uVHlwZVtcIkRJU01JU1NfVE9BU1RcIl1cbiAgICAgIHRvYXN0SWQ/OiBUb2FzdGVyVG9hc3RbXCJpZFwiXVxuICAgIH1cbiAgfCB7XG4gICAgICB0eXBlOiBBY3Rpb25UeXBlW1wiUkVNT1ZFX1RPQVNUXCJdXG4gICAgICB0b2FzdElkPzogVG9hc3RlclRvYXN0W1wiaWRcIl1cbiAgICB9XG5cbmludGVyZmFjZSBTdGF0ZSB7XG4gIHRvYXN0czogVG9hc3RlclRvYXN0W11cbn1cblxuY29uc3QgdG9hc3RUaW1lb3V0cyA9IG5ldyBNYXA8c3RyaW5nLCBSZXR1cm5UeXBlPHR5cGVvZiBzZXRUaW1lb3V0Pj4oKVxuXG5jb25zdCBhZGRUb1JlbW92ZVF1ZXVlID0gKHRvYXN0SWQ6IHN0cmluZykgPT4ge1xuICBpZiAodG9hc3RUaW1lb3V0cy5oYXModG9hc3RJZCkpIHtcbiAgICByZXR1cm5cbiAgfVxuXG4gIGNvbnN0IHRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICB0b2FzdFRpbWVvdXRzLmRlbGV0ZSh0b2FzdElkKVxuICAgIGRpc3BhdGNoKHtcbiAgICAgIHR5cGU6IFwiUkVNT1ZFX1RPQVNUXCIsXG4gICAgICB0b2FzdElkOiB0b2FzdElkLFxuICAgIH0pXG4gIH0sIFRPQVNUX1JFTU9WRV9ERUxBWSlcblxuICB0b2FzdFRpbWVvdXRzLnNldCh0b2FzdElkLCB0aW1lb3V0KVxufVxuXG5leHBvcnQgY29uc3QgcmVkdWNlciA9IChzdGF0ZTogU3RhdGUsIGFjdGlvbjogQWN0aW9uKTogU3RhdGUgPT4ge1xuICBzd2l0Y2ggKGFjdGlvbi50eXBlKSB7XG4gICAgY2FzZSBcIkFERF9UT0FTVFwiOlxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4uc3RhdGUsXG4gICAgICAgIHRvYXN0czogW2FjdGlvbi50b2FzdCwgLi4uc3RhdGUudG9hc3RzXS5zbGljZSgwLCBUT0FTVF9MSU1JVCksXG4gICAgICB9XG5cbiAgICBjYXNlIFwiVVBEQVRFX1RPQVNUXCI6XG4gICAgICByZXR1cm4ge1xuICAgICAgICAuLi5zdGF0ZSxcbiAgICAgICAgdG9hc3RzOiBzdGF0ZS50b2FzdHMubWFwKCh0KSA9PlxuICAgICAgICAgIHQuaWQgPT09IGFjdGlvbi50b2FzdC5pZCA/IHsgLi4udCwgLi4uYWN0aW9uLnRvYXN0IH0gOiB0XG4gICAgICAgICksXG4gICAgICB9XG5cbiAgICBjYXNlIFwiRElTTUlTU19UT0FTVFwiOiB7XG4gICAgICBjb25zdCB7IHRvYXN0SWQgfSA9IGFjdGlvblxuXG4gICAgICAvLyAhIFNpZGUgZWZmZWN0cyAhIC0gVGhpcyBjb3VsZCBiZSBleHRyYWN0ZWQgaW50byBhIGRpc21pc3NUb2FzdCgpIGFjdGlvbixcbiAgICAgIC8vIGJ1dCBJJ2xsIGtlZXAgaXQgaGVyZSBmb3Igc2ltcGxpY2l0eVxuICAgICAgaWYgKHRvYXN0SWQpIHtcbiAgICAgICAgYWRkVG9SZW1vdmVRdWV1ZSh0b2FzdElkKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgc3RhdGUudG9hc3RzLmZvckVhY2goKHRvYXN0KSA9PiB7XG4gICAgICAgICAgYWRkVG9SZW1vdmVRdWV1ZSh0b2FzdC5pZClcbiAgICAgICAgfSlcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4uc3RhdGUsXG4gICAgICAgIHRvYXN0czogc3RhdGUudG9hc3RzLm1hcCgodCkgPT5cbiAgICAgICAgICB0LmlkID09PSB0b2FzdElkIHx8IHRvYXN0SWQgPT09IHVuZGVmaW5lZFxuICAgICAgICAgICAgPyB7XG4gICAgICAgICAgICAgICAgLi4udCxcbiAgICAgICAgICAgICAgICBvcGVuOiBmYWxzZSxcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgOiB0XG4gICAgICAgICksXG4gICAgICB9XG4gICAgfVxuICAgIGNhc2UgXCJSRU1PVkVfVE9BU1RcIjpcbiAgICAgIGlmIChhY3Rpb24udG9hc3RJZCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgLi4uc3RhdGUsXG4gICAgICAgICAgdG9hc3RzOiBbXSxcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4uc3RhdGUsXG4gICAgICAgIHRvYXN0czogc3RhdGUudG9hc3RzLmZpbHRlcigodCkgPT4gdC5pZCAhPT0gYWN0aW9uLnRvYXN0SWQpLFxuICAgICAgfVxuICB9XG59XG5cbmNvbnN0IGxpc3RlbmVyczogQXJyYXk8KHN0YXRlOiBTdGF0ZSkgPT4gdm9pZD4gPSBbXVxuXG5sZXQgbWVtb3J5U3RhdGU6IFN0YXRlID0geyB0b2FzdHM6IFtdIH1cblxuZnVuY3Rpb24gZGlzcGF0Y2goYWN0aW9uOiBBY3Rpb24pIHtcbiAgbWVtb3J5U3RhdGUgPSByZWR1Y2VyKG1lbW9yeVN0YXRlLCBhY3Rpb24pXG4gIGxpc3RlbmVycy5mb3JFYWNoKChsaXN0ZW5lcikgPT4ge1xuICAgIGxpc3RlbmVyKG1lbW9yeVN0YXRlKVxuICB9KVxufVxuXG50eXBlIFRvYXN0ID0gT21pdDxUb2FzdGVyVG9hc3QsIFwiaWRcIj5cblxuZnVuY3Rpb24gdG9hc3QoeyAuLi5wcm9wcyB9OiBUb2FzdCkge1xuICBjb25zdCBpZCA9IGdlbklkKClcblxuICBjb25zdCB1cGRhdGUgPSAocHJvcHM6IFRvYXN0ZXJUb2FzdCkgPT5cbiAgICBkaXNwYXRjaCh7XG4gICAgICB0eXBlOiBcIlVQREFURV9UT0FTVFwiLFxuICAgICAgdG9hc3Q6IHsgLi4ucHJvcHMsIGlkIH0sXG4gICAgfSlcbiAgY29uc3QgZGlzbWlzcyA9ICgpID0+IGRpc3BhdGNoKHsgdHlwZTogXCJESVNNSVNTX1RPQVNUXCIsIHRvYXN0SWQ6IGlkIH0pXG5cbiAgZGlzcGF0Y2goe1xuICAgIHR5cGU6IFwiQUREX1RPQVNUXCIsXG4gICAgdG9hc3Q6IHtcbiAgICAgIC4uLnByb3BzLFxuICAgICAgaWQsXG4gICAgICBvcGVuOiB0cnVlLFxuICAgICAgb25PcGVuQ2hhbmdlOiAob3BlbikgPT4ge1xuICAgICAgICBpZiAoIW9wZW4pIGRpc21pc3MoKVxuICAgICAgfSxcbiAgICB9LFxuICB9KVxuXG4gIHJldHVybiB7XG4gICAgaWQ6IGlkLFxuICAgIGRpc21pc3MsXG4gICAgdXBkYXRlLFxuICB9XG59XG5cbmZ1bmN0aW9uIHVzZVRvYXN0KCkge1xuICBjb25zdCBbc3RhdGUsIHNldFN0YXRlXSA9IFJlYWN0LnVzZVN0YXRlPFN0YXRlPihtZW1vcnlTdGF0ZSlcblxuICBSZWFjdC51c2VFZmZlY3QoKCkgPT4ge1xuICAgIGxpc3RlbmVycy5wdXNoKHNldFN0YXRlKVxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBjb25zdCBpbmRleCA9IGxpc3RlbmVycy5pbmRleE9mKHNldFN0YXRlKVxuICAgICAgaWYgKGluZGV4ID4gLTEpIHtcbiAgICAgICAgbGlzdGVuZXJzLnNwbGljZShpbmRleCwgMSlcbiAgICAgIH1cbiAgICB9XG4gIH0sIFtzdGF0ZV0pXG5cbiAgcmV0dXJuIHtcbiAgICAuLi5zdGF0ZSxcbiAgICB0b2FzdCxcbiAgICBkaXNtaXNzOiAodG9hc3RJZD86IHN0cmluZykgPT4gZGlzcGF0Y2goeyB0eXBlOiBcIkRJU01JU1NfVE9BU1RcIiwgdG9hc3RJZCB9KSxcbiAgfVxufVxuXG5leHBvcnQgeyB1c2VUb2FzdCwgdG9hc3QgfVxuIl0sIm5hbWVzIjpbIlJlYWN0IiwiVE9BU1RfTElNSVQiLCJUT0FTVF9SRU1PVkVfREVMQVkiLCJhY3Rpb25UeXBlcyIsIkFERF9UT0FTVCIsIlVQREFURV9UT0FTVCIsIkRJU01JU1NfVE9BU1QiLCJSRU1PVkVfVE9BU1QiLCJjb3VudCIsImdlbklkIiwiTnVtYmVyIiwiTUFYX1NBRkVfSU5URUdFUiIsInRvU3RyaW5nIiwidG9hc3RUaW1lb3V0cyIsIk1hcCIsImFkZFRvUmVtb3ZlUXVldWUiLCJ0b2FzdElkIiwiaGFzIiwidGltZW91dCIsInNldFRpbWVvdXQiLCJkZWxldGUiLCJkaXNwYXRjaCIsInR5cGUiLCJzZXQiLCJyZWR1Y2VyIiwic3RhdGUiLCJhY3Rpb24iLCJ0b2FzdHMiLCJ0b2FzdCIsInNsaWNlIiwibWFwIiwidCIsImlkIiwiZm9yRWFjaCIsInVuZGVmaW5lZCIsIm9wZW4iLCJmaWx0ZXIiLCJsaXN0ZW5lcnMiLCJtZW1vcnlTdGF0ZSIsImxpc3RlbmVyIiwicHJvcHMiLCJ1cGRhdGUiLCJkaXNtaXNzIiwib25PcGVuQ2hhbmdlIiwidXNlVG9hc3QiLCJzZXRTdGF0ZSIsInVzZVN0YXRlIiwidXNlRWZmZWN0IiwicHVzaCIsImluZGV4IiwiaW5kZXhPZiIsInNwbGljZSJdLCJpZ25vcmVMaXN0IjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./hooks/use-toast.ts\n");
/***/ }),
/***/ "(ssr)/./lib/utils.ts":
/*!**********************!*\
!*** ./lib/utils.ts ***!
\**********************/
/***/ ((__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 */ cn: () => (/* binding */ cn),\n/* harmony export */ formatDate: () => (/* binding */ formatDate)\n/* harmony export */ });\n/* harmony import */ var clsx__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! clsx */ \"(ssr)/./node_modules/clsx/dist/clsx.mjs\");\n/* harmony import */ var tailwind_merge__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! tailwind-merge */ \"(ssr)/./node_modules/tailwind-merge/dist/bundle-mjs.mjs\");\n\n\nfunction cn(...inputs) {\n return (0,tailwind_merge__WEBPACK_IMPORTED_MODULE_1__.twMerge)((0,clsx__WEBPACK_IMPORTED_MODULE_0__.clsx)(inputs));\n}\nfunction formatDate(dateString) {\n try {\n const date = new Date(dateString);\n return new Intl.DateTimeFormat('en-US', {\n month: '2-digit',\n day: '2-digit',\n year: 'numeric'\n }).format(date);\n } catch {\n return '';\n }\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9saWIvdXRpbHMudHMiLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUE2QztBQUNKO0FBRWxDLFNBQVNFLEdBQUcsR0FBR0MsTUFBb0I7SUFDeEMsT0FBT0YsdURBQU9BLENBQUNELDBDQUFJQSxDQUFDRztBQUN0QjtBQUVPLFNBQVNDLFdBQVdDLFVBQWtCO0lBQzNDLElBQUk7UUFDRixNQUFNQyxPQUFPLElBQUlDLEtBQUtGO1FBQ3RCLE9BQU8sSUFBSUcsS0FBS0MsY0FBYyxDQUFDLFNBQVM7WUFDdENDLE9BQU87WUFDUEMsS0FBSztZQUNMQyxNQUFNO1FBQ1IsR0FBR0MsTUFBTSxDQUFDUDtJQUNaLEVBQUUsT0FBTTtRQUNOLE9BQU87SUFDVDtBQUNGIiwic291cmNlcyI6WyIvVXNlcnMvYWxtYS9Eb2N1bWVudHMvTmVhaE5ldy9saWIvdXRpbHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHlwZSBDbGFzc1ZhbHVlLCBjbHN4IH0gZnJvbSBcImNsc3hcIjtcbmltcG9ydCB7IHR3TWVyZ2UgfSBmcm9tIFwidGFpbHdpbmQtbWVyZ2VcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIGNuKC4uLmlucHV0czogQ2xhc3NWYWx1ZVtdKSB7XG4gIHJldHVybiB0d01lcmdlKGNsc3goaW5wdXRzKSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXREYXRlKGRhdGVTdHJpbmc6IHN0cmluZyk6IHN0cmluZyB7XG4gIHRyeSB7XG4gICAgY29uc3QgZGF0ZSA9IG5ldyBEYXRlKGRhdGVTdHJpbmcpO1xuICAgIHJldHVybiBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgnZW4tVVMnLCB7XG4gICAgICBtb250aDogJzItZGlnaXQnLFxuICAgICAgZGF5OiAnMi1kaWdpdCcsXG4gICAgICB5ZWFyOiAnbnVtZXJpYydcbiAgICB9KS5mb3JtYXQoZGF0ZSk7XG4gIH0gY2F0Y2gge1xuICAgIHJldHVybiAnJztcbiAgfVxufVxuXG4iXSwibmFtZXMiOlsiY2xzeCIsInR3TWVyZ2UiLCJjbiIsImlucHV0cyIsImZvcm1hdERhdGUiLCJkYXRlU3RyaW5nIiwiZGF0ZSIsIkRhdGUiLCJJbnRsIiwiRGF0ZVRpbWVGb3JtYXQiLCJtb250aCIsImRheSIsInllYXIiLCJmb3JtYXQiXSwiaWdub3JlTGlzdCI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./lib/utils.ts\n");
/***/ }),
/***/ "(ssr)/./node_modules/next/dist/build/webpack/loaders/next-flight-client-entry-loader.js?modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fapp%2Fglobals.css%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fcomponents%2Flayout%2Flayout-wrapper.tsx%22%2C%22ids%22%3A%5B%22LayoutWrapper%22%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fcomponents%2Fproviders.tsx%22%2C%22ids%22%3A%5B%22Providers%22%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Ffont%2Fgoogle%2Ftarget.css%3F%7B%5C%22path%5C%22%3A%5C%22app%2Flayout.tsx%5C%22%2C%5C%22import%5C%22%3A%5C%22Inter%5C%22%2C%5C%22arguments%5C%22%3A%5B%7B%5C%22subsets%5C%22%3A%5B%5C%22latin%5C%22%5D%7D%5D%2C%5C%22variableName%5C%22%3A%5C%22inter%5C%22%7D%22%2C%22ids%22%3A%5B%5D%7D&server=true!":
/*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/next/dist/build/webpack/loaders/next-flight-client-entry-loader.js?modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fapp%2Fglobals.css%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fcomponents%2Flayout%2Flayout-wrapper.tsx%22%2C%22ids%22%3A%5B%22LayoutWrapper%22%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fcomponents%2Fproviders.tsx%22%2C%22ids%22%3A%5B%22Providers%22%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Ffont%2Fgoogle%2Ftarget.css%3F%7B%5C%22path%5C%22%3A%5C%22app%2Flayout.tsx%5C%22%2C%5C%22import%5C%22%3A%5C%22Inter%5C%22%2C%5C%22arguments%5C%22%3A%5B%7B%5C%22subsets%5C%22%3A%5B%5C%22latin%5C%22%5D%7D%5D%2C%5C%22variableName%5C%22%3A%5C%22inter%5C%22%7D%22%2C%22ids%22%3A%5B%5D%7D&server=true! ***!
\***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
eval("Promise.resolve(/*! import() eager */).then(__webpack_require__.bind(__webpack_require__, /*! ./components/layout/layout-wrapper.tsx */ \"(ssr)/./components/layout/layout-wrapper.tsx\"));\n;\nPromise.resolve(/*! import() eager */).then(__webpack_require__.bind(__webpack_require__, /*! ./components/providers.tsx */ \"(ssr)/./components/providers.tsx\"));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2J1aWxkL3dlYnBhY2svbG9hZGVycy9uZXh0LWZsaWdodC1jbGllbnQtZW50cnktbG9hZGVyLmpzP21vZHVsZXM9JTdCJTIycmVxdWVzdCUyMiUzQSUyMiUyRlVzZXJzJTJGYWxtYSUyRkRvY3VtZW50cyUyRk5lYWhOZXclMkZhcHAlMkZnbG9iYWxzLmNzcyUyMiUyQyUyMmlkcyUyMiUzQSU1QiU1RCU3RCZtb2R1bGVzPSU3QiUyMnJlcXVlc3QlMjIlM0ElMjIlMkZVc2VycyUyRmFsbWElMkZEb2N1bWVudHMlMkZOZWFoTmV3JTJGY29tcG9uZW50cyUyRmxheW91dCUyRmxheW91dC13cmFwcGVyLnRzeCUyMiUyQyUyMmlkcyUyMiUzQSU1QiUyMkxheW91dFdyYXBwZXIlMjIlNUQlN0QmbW9kdWxlcz0lN0IlMjJyZXF1ZXN0JTIyJTNBJTIyJTJGVXNlcnMlMkZhbG1hJTJGRG9jdW1lbnRzJTJGTmVhaE5ldyUyRmNvbXBvbmVudHMlMkZwcm92aWRlcnMudHN4JTIyJTJDJTIyaWRzJTIyJTNBJTVCJTIyUHJvdmlkZXJzJTIyJTVEJTdEJm1vZHVsZXM9JTdCJTIycmVxdWVzdCUyMiUzQSUyMiUyRlVzZXJzJTJGYWxtYSUyRkRvY3VtZW50cyUyRk5lYWhOZXclMkZub2RlX21vZHVsZXMlMkZuZXh0JTJGZm9udCUyRmdvb2dsZSUyRnRhcmdldC5jc3MlM0YlN0IlNUMlMjJwYXRoJTVDJTIyJTNBJTVDJTIyYXBwJTJGbGF5b3V0LnRzeCU1QyUyMiUyQyU1QyUyMmltcG9ydCU1QyUyMiUzQSU1QyUyMkludGVyJTVDJTIyJTJDJTVDJTIyYXJndW1lbnRzJTVDJTIyJTNBJTVCJTdCJTVDJTIyc3Vic2V0cyU1QyUyMiUzQSU1QiU1QyUyMmxhdGluJTVDJTIyJTVEJTdEJTVEJTJDJTVDJTIydmFyaWFibGVOYW1lJTVDJTIyJTNBJTVDJTIyaW50ZXIlNUMlMjIlN0QlMjIlMkMlMjJpZHMlMjIlM0ElNUIlNUQlN0Qmc2VydmVyPXRydWUhIiwibWFwcGluZ3MiOiJBQUFBLHdMQUEwSTtBQUMxSTtBQUNBLGdLQUEwSCIsInNvdXJjZXMiOlsiIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCgvKiB3ZWJwYWNrTW9kZTogXCJlYWdlclwiLCB3ZWJwYWNrRXhwb3J0czogW1wiTGF5b3V0V3JhcHBlclwiXSAqLyBcIi9Vc2Vycy9hbG1hL0RvY3VtZW50cy9OZWFoTmV3L2NvbXBvbmVudHMvbGF5b3V0L2xheW91dC13cmFwcGVyLnRzeFwiKTtcbjtcbmltcG9ydCgvKiB3ZWJwYWNrTW9kZTogXCJlYWdlclwiLCB3ZWJwYWNrRXhwb3J0czogW1wiUHJvdmlkZXJzXCJdICovIFwiL1VzZXJzL2FsbWEvRG9jdW1lbnRzL05lYWhOZXcvY29tcG9uZW50cy9wcm92aWRlcnMudHN4XCIpO1xuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/build/webpack/loaders/next-flight-client-entry-loader.js?modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fapp%2Fglobals.css%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fcomponents%2Flayout%2Flayout-wrapper.tsx%22%2C%22ids%22%3A%5B%22LayoutWrapper%22%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fcomponents%2Fproviders.tsx%22%2C%22ids%22%3A%5B%22Providers%22%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Ffont%2Fgoogle%2Ftarget.css%3F%7B%5C%22path%5C%22%3A%5C%22app%2Flayout.tsx%5C%22%2C%5C%22import%5C%22%3A%5C%22Inter%5C%22%2C%5C%22arguments%5C%22%3A%5B%7B%5C%22subsets%5C%22%3A%5B%5C%22latin%5C%22%5D%7D%5D%2C%5C%22variableName%5C%22%3A%5C%22inter%5C%22%7D%22%2C%22ids%22%3A%5B%5D%7D&server=true!\n");
/***/ }),
/***/ "(ssr)/./node_modules/next/dist/build/webpack/loaders/next-flight-client-entry-loader.js?modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fapp%2Fpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=true!":
/*!**********************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/next/dist/build/webpack/loaders/next-flight-client-entry-loader.js?modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fapp%2Fpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=true! ***!
\**********************************************************************************************************************************************************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
eval("Promise.resolve(/*! import() eager */).then(__webpack_require__.bind(__webpack_require__, /*! ./app/page.tsx */ \"(ssr)/./app/page.tsx\"));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2J1aWxkL3dlYnBhY2svbG9hZGVycy9uZXh0LWZsaWdodC1jbGllbnQtZW50cnktbG9hZGVyLmpzP21vZHVsZXM9JTdCJTIycmVxdWVzdCUyMiUzQSUyMiUyRlVzZXJzJTJGYWxtYSUyRkRvY3VtZW50cyUyRk5lYWhOZXclMkZhcHAlMkZwYWdlLnRzeCUyMiUyQyUyMmlkcyUyMiUzQSU1QiU1RCU3RCZzZXJ2ZXI9dHJ1ZSEiLCJtYXBwaW5ncyI6IkFBQUEsd0lBQStFIiwic291cmNlcyI6WyIiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0KC8qIHdlYnBhY2tNb2RlOiBcImVhZ2VyXCIgKi8gXCIvVXNlcnMvYWxtYS9Eb2N1bWVudHMvTmVhaE5ldy9hcHAvcGFnZS50c3hcIik7XG4iXSwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/build/webpack/loaders/next-flight-client-entry-loader.js?modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fapp%2Fpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=true!\n");
/***/ }),
/***/ "(ssr)/./node_modules/next/dist/build/webpack/loaders/next-flight-client-entry-loader.js?modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fclient-page.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fclient-segment.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Ferror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fhttp-access-fallback%2Ferror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Flayout-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fmetadata%2Fasync-metadata.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fmetadata%2Fmetadata-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Frender-from-template-context.js%22%2C%22ids%22%3A%5B%5D%7D&server=true!":
/*!************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/next/dist/build/webpack/loaders/next-flight-client-entry-loader.js?modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fclient-page.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fclient-segment.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Ferror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fhttp-access-fallback%2Ferror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Flayout-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fmetadata%2Fasync-metadata.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fmetadata%2Fmetadata-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Frender-from-template-context.js%22%2C%22ids%22%3A%5B%5D%7D&server=true! ***!
\************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
eval("Promise.resolve(/*! import() eager */).then(__webpack_require__.t.bind(__webpack_require__, /*! ./node_modules/next/dist/client/components/client-page.js */ \"(ssr)/./node_modules/next/dist/client/components/client-page.js\", 23));\n;\nPromise.resolve(/*! import() eager */).then(__webpack_require__.t.bind(__webpack_require__, /*! ./node_modules/next/dist/client/components/client-segment.js */ \"(ssr)/./node_modules/next/dist/client/components/client-segment.js\", 23));\n;\nPromise.resolve(/*! import() eager */).then(__webpack_require__.t.bind(__webpack_require__, /*! ./node_modules/next/dist/client/components/error-boundary.js */ \"(ssr)/./node_modules/next/dist/client/components/error-boundary.js\", 23));\n;\nPromise.resolve(/*! import() eager */).then(__webpack_require__.t.bind(__webpack_require__, /*! ./node_modules/next/dist/client/components/http-access-fallback/error-boundary.js */ \"(ssr)/./node_modules/next/dist/client/components/http-access-fallback/error-boundary.js\", 23));\n;\nPromise.resolve(/*! import() eager */).then(__webpack_require__.t.bind(__webpack_require__, /*! ./node_modules/next/dist/client/components/layout-router.js */ \"(ssr)/./node_modules/next/dist/client/components/layout-router.js\", 23));\n;\nPromise.resolve(/*! import() eager */).then(__webpack_require__.t.bind(__webpack_require__, /*! ./node_modules/next/dist/client/components/metadata/async-metadata.js */ \"(ssr)/./node_modules/next/dist/client/components/metadata/async-metadata.js\", 23));\n;\nPromise.resolve(/*! import() eager */).then(__webpack_require__.t.bind(__webpack_require__, /*! ./node_modules/next/dist/client/components/metadata/metadata-boundary.js */ \"(ssr)/./node_modules/next/dist/client/components/metadata/metadata-boundary.js\", 23));\n;\nPromise.resolve(/*! import() eager */).then(__webpack_require__.t.bind(__webpack_require__, /*! ./node_modules/next/dist/client/components/render-from-template-context.js */ \"(ssr)/./node_modules/next/dist/client/components/render-from-template-context.js\", 23));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2J1aWxkL3dlYnBhY2svbG9hZGVycy9uZXh0LWZsaWdodC1jbGllbnQtZW50cnktbG9hZGVyLmpzP21vZHVsZXM9JTdCJTIycmVxdWVzdCUyMiUzQSUyMiUyRlVzZXJzJTJGYWxtYSUyRkRvY3VtZW50cyUyRk5lYWhOZXclMkZub2RlX21vZHVsZXMlMkZuZXh0JTJGZGlzdCUyRmNsaWVudCUyRmNvbXBvbmVudHMlMkZjbGllbnQtcGFnZS5qcyUyMiUyQyUyMmlkcyUyMiUzQSU1QiU1RCU3RCZtb2R1bGVzPSU3QiUyMnJlcXVlc3QlMjIlM0ElMjIlMkZVc2VycyUyRmFsbWElMkZEb2N1bWVudHMlMkZOZWFoTmV3JTJGbm9kZV9tb2R1bGVzJTJGbmV4dCUyRmRpc3QlMkZjbGllbnQlMkZjb21wb25lbnRzJTJGY2xpZW50LXNlZ21lbnQuanMlMjIlMkMlMjJpZHMlMjIlM0ElNUIlNUQlN0QmbW9kdWxlcz0lN0IlMjJyZXF1ZXN0JTIyJTNBJTIyJTJGVXNlcnMlMkZhbG1hJTJGRG9jdW1lbnRzJTJGTmVhaE5ldyUyRm5vZGVfbW9kdWxlcyUyRm5leHQlMkZkaXN0JTJGY2xpZW50JTJGY29tcG9uZW50cyUyRmVycm9yLWJvdW5kYXJ5LmpzJTIyJTJDJTIyaWRzJTIyJTNBJTVCJTVEJTdEJm1vZHVsZXM9JTdCJTIycmVxdWVzdCUyMiUzQSUyMiUyRlVzZXJzJTJGYWxtYSUyRkRvY3VtZW50cyUyRk5lYWhOZXclMkZub2RlX21vZHVsZXMlMkZuZXh0JTJGZGlzdCUyRmNsaWVudCUyRmNvbXBvbmVudHMlMkZodHRwLWFjY2Vzcy1mYWxsYmFjayUyRmVycm9yLWJvdW5kYXJ5LmpzJTIyJTJDJTIyaWRzJTIyJTNBJTVCJTVEJTdEJm1vZHVsZXM9JTdCJTIycmVxdWVzdCUyMiUzQSUyMiUyRlVzZXJzJTJGYWxtYSUyRkRvY3VtZW50cyUyRk5lYWhOZXclMkZub2RlX21vZHVsZXMlMkZuZXh0JTJGZGlzdCUyRmNsaWVudCUyRmNvbXBvbmVudHMlMkZsYXlvdXQtcm91dGVyLmpzJTIyJTJDJTIyaWRzJTIyJTNBJTVCJTVEJTdEJm1vZHVsZXM9JTdCJTIycmVxdWVzdCUyMiUzQSUyMiUyRlVzZXJzJTJGYWxtYSUyRkRvY3VtZW50cyUyRk5lYWhOZXclMkZub2RlX21vZHVsZXMlMkZuZXh0JTJGZGlzdCUyRmNsaWVudCUyRmNvbXBvbmVudHMlMkZtZXRhZGF0YSUyRmFzeW5jLW1ldGFkYXRhLmpzJTIyJTJDJTIyaWRzJTIyJTNBJTVCJTVEJTdEJm1vZHVsZXM9JTdCJTIycmVxdWVzdCUyMiUzQSUyMiUyRlVzZXJzJTJGYWxtYSUyRkRvY3VtZW50cyUyRk5lYWhOZXclMkZub2RlX21vZHVsZXMlMkZuZXh0JTJGZGlzdCUyRmNsaWVudCUyRmNvbXBvbmVudHMlMkZtZXRhZGF0YSUyRm1ldGFkYXRhLWJvdW5kYXJ5LmpzJTIyJTJDJTIyaWRzJTIyJTNBJTVCJTVEJTdEJm1vZHVsZXM9JTdCJTIycmVxdWVzdCUyMiUzQSUyMiUyRlVzZXJzJTJGYWxtYSUyRkRvY3VtZW50cyUyRk5lYWhOZXclMkZub2RlX21vZHVsZXMlMkZuZXh0JTJGZGlzdCUyRmNsaWVudCUyRmNvbXBvbmVudHMlMkZyZW5kZXItZnJvbS10ZW1wbGF0ZS1jb250ZXh0LmpzJTIyJTJDJTIyaWRzJTIyJTNBJTVCJTVEJTdEJnNlcnZlcj10cnVlISIsIm1hcHBpbmdzIjoiQUFBQSxvT0FBMEg7QUFDMUg7QUFDQSwwT0FBNkg7QUFDN0g7QUFDQSwwT0FBNkg7QUFDN0g7QUFDQSxvUkFBa0o7QUFDbEo7QUFDQSx3T0FBNEg7QUFDNUg7QUFDQSw0UEFBc0k7QUFDdEk7QUFDQSxrUUFBeUk7QUFDekk7QUFDQSxzUUFBMkkiLCJzb3VyY2VzIjpbIiJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQoLyogd2VicGFja01vZGU6IFwiZWFnZXJcIiAqLyBcIi9Vc2Vycy9hbG1hL0RvY3VtZW50cy9OZWFoTmV3L25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvY2xpZW50LXBhZ2UuanNcIik7XG47XG5pbXBvcnQoLyogd2VicGFja01vZGU6IFwiZWFnZXJcIiAqLyBcIi9Vc2Vycy9hbG1hL0RvY3VtZW50cy9OZWFoTmV3L25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvY2xpZW50LXNlZ21lbnQuanNcIik7XG47XG5pbXBvcnQoLyogd2VicGFja01vZGU6IFwiZWFnZXJcIiAqLyBcIi9Vc2Vycy9hbG1hL0RvY3VtZW50cy9OZWFoTmV3L25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvZXJyb3ItYm91bmRhcnkuanNcIik7XG47XG5pbXBvcnQoLyogd2VicGFja01vZGU6IFwiZWFnZXJcIiAqLyBcIi9Vc2Vycy9hbG1hL0RvY3VtZW50cy9OZWFoTmV3L25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvaHR0cC1hY2Nlc3MtZmFsbGJhY2svZXJyb3ItYm91bmRhcnkuanNcIik7XG47XG5pbXBvcnQoLyogd2VicGFja01vZGU6IFwiZWFnZXJcIiAqLyBcIi9Vc2Vycy9hbG1hL0RvY3VtZW50cy9OZWFoTmV3L25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvbGF5b3V0LXJvdXRlci5qc1wiKTtcbjtcbmltcG9ydCgvKiB3ZWJwYWNrTW9kZTogXCJlYWdlclwiICovIFwiL1VzZXJzL2FsbWEvRG9jdW1lbnRzL05lYWhOZXcvbm9kZV9tb2R1bGVzL25leHQvZGlzdC9jbGllbnQvY29tcG9uZW50cy9tZXRhZGF0YS9hc3luYy1tZXRhZGF0YS5qc1wiKTtcbjtcbmltcG9ydCgvKiB3ZWJwYWNrTW9kZTogXCJlYWdlclwiICovIFwiL1VzZXJzL2FsbWEvRG9jdW1lbnRzL05lYWhOZXcvbm9kZV9tb2R1bGVzL25leHQvZGlzdC9jbGllbnQvY29tcG9uZW50cy9tZXRhZGF0YS9tZXRhZGF0YS1ib3VuZGFyeS5qc1wiKTtcbjtcbmltcG9ydCgvKiB3ZWJwYWNrTW9kZTogXCJlYWdlclwiICovIFwiL1VzZXJzL2FsbWEvRG9jdW1lbnRzL05lYWhOZXcvbm9kZV9tb2R1bGVzL25leHQvZGlzdC9jbGllbnQvY29tcG9uZW50cy9yZW5kZXItZnJvbS10ZW1wbGF0ZS1jb250ZXh0LmpzXCIpO1xuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/build/webpack/loaders/next-flight-client-entry-loader.js?modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fclient-page.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fclient-segment.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Ferror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fhttp-access-fallback%2Ferror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Flayout-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fmetadata%2Fasync-metadata.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fmetadata%2Fmetadata-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Frender-from-template-context.js%22%2C%22ids%22%3A%5B%5D%7D&server=true!\n");
/***/ }),
/***/ "../app-render/action-async-storage.external":
/*!*******************************************************************************!*\
!*** external "next/dist/server/app-render/action-async-storage.external.js" ***!
\*******************************************************************************/
/***/ ((module) => {
"use strict";
module.exports = require("next/dist/server/app-render/action-async-storage.external.js");
/***/ }),
/***/ "../app-render/after-task-async-storage.external":
/*!***********************************************************************************!*\
!*** external "next/dist/server/app-render/after-task-async-storage.external.js" ***!
\***********************************************************************************/
/***/ ((module) => {
"use strict";
module.exports = require("next/dist/server/app-render/after-task-async-storage.external.js");
/***/ }),
/***/ "../app-render/work-async-storage.external":
/*!*****************************************************************************!*\
!*** external "next/dist/server/app-render/work-async-storage.external.js" ***!
\*****************************************************************************/
/***/ ((module) => {
"use strict";
module.exports = require("next/dist/server/app-render/work-async-storage.external.js");
/***/ }),
/***/ "./work-unit-async-storage.external":
/*!**********************************************************************************!*\
!*** external "next/dist/server/app-render/work-unit-async-storage.external.js" ***!
\**********************************************************************************/
/***/ ((module) => {
"use strict";
module.exports = require("next/dist/server/app-render/work-unit-async-storage.external.js");
/***/ }),
/***/ "assert":
/*!*************************!*\
!*** external "assert" ***!
\*************************/
/***/ ((module) => {
"use strict";
module.exports = require("assert");
/***/ }),
/***/ "buffer":
/*!*************************!*\
!*** external "buffer" ***!
\*************************/
/***/ ((module) => {
"use strict";
module.exports = require("buffer");
/***/ }),
/***/ "crypto":
/*!*************************!*\
!*** external "crypto" ***!
\*************************/
/***/ ((module) => {
"use strict";
module.exports = require("crypto");
/***/ }),
/***/ "dns":
/*!**********************!*\
!*** external "dns" ***!
\**********************/
/***/ ((module) => {
"use strict";
module.exports = require("dns");
/***/ }),
/***/ "events":
/*!*************************!*\
!*** external "events" ***!
\*************************/
/***/ ((module) => {
"use strict";
module.exports = require("events");
/***/ }),
/***/ "http":
/*!***********************!*\
!*** external "http" ***!
\***********************/
/***/ ((module) => {
"use strict";
module.exports = require("http");
/***/ }),
/***/ "https":
/*!************************!*\
!*** external "https" ***!
\************************/
/***/ ((module) => {
"use strict";
module.exports = require("https");
/***/ }),
/***/ "net":
/*!**********************!*\
!*** external "net" ***!
\**********************/
/***/ ((module) => {
"use strict";
module.exports = require("net");
/***/ }),
/***/ "next/dist/compiled/next-server/app-page.runtime.dev.js":
/*!*************************************************************************!*\
!*** external "next/dist/compiled/next-server/app-page.runtime.dev.js" ***!
\*************************************************************************/
/***/ ((module) => {
"use strict";
module.exports = require("next/dist/compiled/next-server/app-page.runtime.dev.js");
/***/ }),
/***/ "os":
/*!*********************!*\
!*** external "os" ***!
\*********************/
/***/ ((module) => {
"use strict";
module.exports = require("os");
/***/ }),
/***/ "path":
/*!***********************!*\
!*** external "path" ***!
\***********************/
/***/ ((module) => {
"use strict";
module.exports = require("path");
/***/ }),
/***/ "querystring":
/*!******************************!*\
!*** external "querystring" ***!
\******************************/
/***/ ((module) => {
"use strict";
module.exports = require("querystring");
/***/ }),
/***/ "stream":
/*!*************************!*\
!*** external "stream" ***!
\*************************/
/***/ ((module) => {
"use strict";
module.exports = require("stream");
/***/ }),
/***/ "string_decoder":
/*!*********************************!*\
!*** external "string_decoder" ***!
\*********************************/
/***/ ((module) => {
"use strict";
module.exports = require("string_decoder");
/***/ }),
/***/ "tls":
/*!**********************!*\
!*** external "tls" ***!
\**********************/
/***/ ((module) => {
"use strict";
module.exports = require("tls");
/***/ }),
/***/ "tty":
/*!**********************!*\
!*** external "tty" ***!
\**********************/
/***/ ((module) => {
"use strict";
module.exports = require("tty");
/***/ }),
/***/ "url":
/*!**********************!*\
!*** external "url" ***!
\**********************/
/***/ ((module) => {
"use strict";
module.exports = require("url");
/***/ }),
/***/ "util":
/*!***********************!*\
!*** external "util" ***!
\***********************/
/***/ ((module) => {
"use strict";
module.exports = require("util");
/***/ }),
/***/ "zlib":
/*!***********************!*\
!*** external "zlib" ***!
\***********************/
/***/ ((module) => {
"use strict";
module.exports = require("zlib");
/***/ })
};
;
// load runtime
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/jose","vendor-chunks/date-fns","vendor-chunks/@babel","vendor-chunks/next-auth","vendor-chunks/lucide-react","vendor-chunks/@radix-ui","vendor-chunks/crypto-js","vendor-chunks/ioredis","vendor-chunks/openid-client","vendor-chunks/uuid","vendor-chunks/react-remove-scroll","vendor-chunks/@swc","vendor-chunks/@floating-ui","vendor-chunks/oauth","vendor-chunks/debug","vendor-chunks/react-style-singleton","vendor-chunks/react-remove-scroll-bar","vendor-chunks/redis-errors","vendor-chunks/@panva","vendor-chunks/use-callback-ref","vendor-chunks/yallist","vendor-chunks/standard-as-callback","vendor-chunks/redis-parser","vendor-chunks/preact-render-to-string","vendor-chunks/oidc-token-hash","vendor-chunks/@ioredis","vendor-chunks/use-sidecar","vendor-chunks/jwt-decode","vendor-chunks/tslib","vendor-chunks/tailwind-merge","vendor-chunks/dompurify","vendor-chunks/clsx","vendor-chunks/class-variance-authority","vendor-chunks/supports-color","vendor-chunks/preact","vendor-chunks/ms","vendor-chunks/lodash.isarguments","vendor-chunks/lodash.defaults","vendor-chunks/has-flag","vendor-chunks/denque","vendor-chunks/cookie","vendor-chunks/cluster-key-slot","vendor-chunks/get-nonce","vendor-chunks/aria-hidden"], () => (__webpack_exec__("(rsc)/./node_modules/next/dist/build/webpack/loaders/next-app-loader/index.js?name=app%2Fpage&page=%2Fpage&appPaths=%2Fpage&pagePath=private-next-app-dir%2Fpage.tsx&appDir=%2FUsers%2Falma%2FDocuments%2FNeahNew%2Fapp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=%2FUsers%2Falma%2FDocuments%2FNeahNew&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!")));
module.exports = __webpack_exports__;
})();