22 lines
23 KiB
JavaScript
22 lines
23 KiB
JavaScript
"use strict";
|
|
/*
|
|
* ATTENTION: An "eval-source-map" devtool has been used.
|
|
* This devtool is neither made for production nor for readable output files.
|
|
* It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools.
|
|
* If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/)
|
|
* or disable the default devtool with "devtool: false".
|
|
* If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/).
|
|
*/
|
|
self["webpackHotUpdate_N_E"]("app/page",{
|
|
|
|
/***/ "(app-pages-browser)/./src/app/page.tsx":
|
|
/*!**************************!*\
|
|
!*** ./src/app/page.tsx ***!
|
|
\**************************/
|
|
/***/ ((module, __webpack_exports__, __webpack_require__) => {
|
|
|
|
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (/* binding */ Home)\n/* harmony export */ });\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-dev-runtime */ \"(app-pages-browser)/./node_modules/.pnpm/next@15.5.4_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/next/dist/compiled/react/jsx-dev-runtime.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/.pnpm/next@15.5.4_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _components_chat_interface__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/components/chat-interface */ \"(app-pages-browser)/./src/components/chat-interface.tsx\");\n/* harmony import */ var _components_header__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/components/header */ \"(app-pages-browser)/./src/components/header.tsx\");\n/* __next_internal_client_entry_do_not_use__ default auto */ \nvar _s = $RefreshSig$();\n\n\n\nfunction Home() {\n _s();\n const [selectedAgent, setSelectedAgent] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const [isLoading, setIsLoading] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(true);\n const [agents, setAgents] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)([]);\n const [agentsError, setAgentsError] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const [isAgentsLoading, setIsAgentsLoading] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(true);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)({\n \"Home.useEffect\": ()=>{\n // Try to load previously selected agent from localStorage\n const savedAgent = localStorage.getItem(\"selected-agent\");\n if (savedAgent) {\n try {\n const agent = JSON.parse(savedAgent);\n setSelectedAgent(agent);\n } catch (err) {\n console.error(\"[home] Failed to load saved agent:\", err);\n }\n }\n setIsLoading(false);\n }\n }[\"Home.useEffect\"], []);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)({\n \"Home.useEffect\": ()=>{\n const fetchAgents = {\n \"Home.useEffect.fetchAgents\": async ()=>{\n try {\n setIsAgentsLoading(true);\n setAgentsError(null);\n const response = await fetch(\"/api/agents\");\n const data = await response.json();\n if (!response.ok || !data.agents) {\n throw new Error(data.error || \"Failed to load agents\");\n }\n setAgents(data.agents);\n } catch (err) {\n setAgents([]);\n setAgentsError(err instanceof Error ? err.message : \"Failed to load agents\");\n } finally{\n setIsAgentsLoading(false);\n }\n }\n }[\"Home.useEffect.fetchAgents\"];\n fetchAgents();\n }\n }[\"Home.useEffect\"], []);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)({\n \"Home.useEffect\": ()=>{\n if (!selectedAgent || agents.length === 0) return;\n const match = agents.find({\n \"Home.useEffect.match\": (agent)=>agent.id === selectedAgent.id\n }[\"Home.useEffect.match\"]);\n if (!match) {\n setSelectedAgent(null);\n localStorage.removeItem(\"selected-agent\");\n localStorage.removeItem(\"selected-agent-id\");\n return;\n }\n if (match.name !== selectedAgent.name || match.description !== selectedAgent.description) {\n setSelectedAgent(match);\n localStorage.setItem(\"selected-agent-id\", match.id);\n localStorage.setItem(\"selected-agent\", JSON.stringify(match));\n }\n }\n }[\"Home.useEffect\"], [\n agents,\n selectedAgent\n ]);\n const handleAgentSelected = (agent)=>{\n setSelectedAgent(agent);\n localStorage.setItem(\"selected-agent-id\", agent.id);\n localStorage.setItem(\"selected-agent\", JSON.stringify(agent));\n };\n if (isLoading) {\n return null // Avoid hydration mismatch\n ;\n }\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"gallery-shell h-screen\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex h-full flex-col\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_header__WEBPACK_IMPORTED_MODULE_3__.Header, {\n agent: selectedAgent,\n agents: agents,\n onAgentSelected: handleAgentSelected,\n isLoadingAgents: isAgentsLoading\n }, void 0, false, {\n fileName: \"/home/nicholai/Documents/dev/multi-agent_chat_interface/src/app/page.tsx\",\n lineNumber: 88,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"main\", {\n className: \"flex-1 overflow-hidden px-3 py-4 sm:px-6 sm:py-6\",\n children: selectedAgent ? /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"mx-auto flex h-full max-w-5xl justify-center\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"h-full w-full\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_chat_interface__WEBPACK_IMPORTED_MODULE_2__.ChatInterface, {\n agent: selectedAgent,\n agents: agents,\n onAgentSelected: handleAgentSelected,\n isAgentsLoading: isAgentsLoading\n }, void 0, false, {\n fileName: \"/home/nicholai/Documents/dev/multi-agent_chat_interface/src/app/page.tsx\",\n lineNumber: 98,\n columnNumber: 17\n }, this)\n }, void 0, false, {\n fileName: \"/home/nicholai/Documents/dev/multi-agent_chat_interface/src/app/page.tsx\",\n lineNumber: 97,\n columnNumber: 15\n }, this)\n }, void 0, false, {\n fileName: \"/home/nicholai/Documents/dev/multi-agent_chat_interface/src/app/page.tsx\",\n lineNumber: 96,\n columnNumber: 13\n }, this) : /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex h-full flex-col items-center justify-center gap-4 px-6 text-center\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n className: \"max-w-sm text-sm uppercase tracking-[0.2em] text-muted-foreground\",\n children: \"Select a correspondent from the switch above to begin\"\n }, void 0, false, {\n fileName: \"/home/nicholai/Documents/dev/multi-agent_chat_interface/src/app/page.tsx\",\n lineNumber: 108,\n columnNumber: 15\n }, this),\n agentsError && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n className: \"text-xs text-destructive\",\n children: agentsError\n }, void 0, false, {\n fileName: \"/home/nicholai/Documents/dev/multi-agent_chat_interface/src/app/page.tsx\",\n lineNumber: 112,\n columnNumber: 17\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/home/nicholai/Documents/dev/multi-agent_chat_interface/src/app/page.tsx\",\n lineNumber: 107,\n columnNumber: 13\n }, this)\n }, void 0, false, {\n fileName: \"/home/nicholai/Documents/dev/multi-agent_chat_interface/src/app/page.tsx\",\n lineNumber: 94,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/home/nicholai/Documents/dev/multi-agent_chat_interface/src/app/page.tsx\",\n lineNumber: 87,\n columnNumber: 7\n }, this)\n }, void 0, false, {\n fileName: \"/home/nicholai/Documents/dev/multi-agent_chat_interface/src/app/page.tsx\",\n lineNumber: 86,\n columnNumber: 5\n }, this);\n}\n_s(Home, \"nAu8aLC/dMIdZ+hKvHcjNKcIu8Y=\");\n_c = Home;\nvar _c;\n$RefreshReg$(_c, \"Home\");\n\n\n;\n // Wrapped in an IIFE to avoid polluting the global scope\n ;\n (function () {\n var _a, _b;\n // Legacy CSS implementations will `eval` browser code in a Node.js context\n // to extract CSS. For backwards compatibility, we need to check we're in a\n // browser context before continuing.\n if (typeof self !== 'undefined' &&\n // AMP / No-JS mode does not inject these helpers:\n '$RefreshHelpers$' in self) {\n // @ts-ignore __webpack_module__ is global\n var currentExports = module.exports;\n // @ts-ignore __webpack_module__ is global\n var prevSignature = (_b = (_a = module.hot.data) === null || _a === void 0 ? void 0 : _a.prevSignature) !== null && _b !== void 0 ? _b : null;\n // This cannot happen in MainTemplate because the exports mismatch between\n // templating and execution.\n self.$RefreshHelpers$.registerExportsForReactRefresh(currentExports, module.id);\n // A module can be accepted automatically based on its exports, e.g. when\n // it is a Refresh Boundary.\n if (self.$RefreshHelpers$.isReactRefreshBoundary(currentExports)) {\n // Save the previous exports signature on update so we can compare the boundary\n // signatures. We avoid saving exports themselves since it causes memory leaks (https://github.com/vercel/next.js/pull/53797)\n module.hot.dispose(function (data) {\n data.prevSignature =\n self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports);\n });\n // Unconditionally accept an update to this module, we'll check if it's\n // still a Refresh Boundary later.\n // @ts-ignore importMeta is replaced in the loader\n module.hot.accept();\n // This field is set when the previous version of this module was a\n // Refresh Boundary, letting us know we need to check for invalidation or\n // enqueue an update.\n if (prevSignature !== null) {\n // A boundary can become ineligible if its exports are incompatible\n // with the previous exports.\n //\n // For example, if you add/remove/change exports, we'll want to\n // re-execute the importing modules, and force those components to\n // re-render. Similarly, if you convert a class component to a\n // function, we want to invalidate the boundary.\n if (self.$RefreshHelpers$.shouldInvalidateReactRefreshBoundary(prevSignature, self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports))) {\n module.hot.invalidate();\n }\n else {\n self.$RefreshHelpers$.scheduleUpdate();\n }\n }\n }\n else {\n // Since we just executed the code for the module, it's possible that the\n // new exports made it ineligible for being a boundary.\n // We only care about the case when we were _previously_ a boundary,\n // because we already accepted this update (accidental side effect).\n var isNoLongerABoundary = prevSignature !== null;\n if (isNoLongerABoundary) {\n module.hot.invalidate();\n }\n }\n }\n })();\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL3NyYy9hcHAvcGFnZS50c3giLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFFMkM7QUFDZ0I7QUFDZjtBQUc3QixTQUFTSTs7SUFDdEIsTUFBTSxDQUFDQyxlQUFlQyxpQkFBaUIsR0FBR04sK0NBQVFBLENBQWU7SUFDakUsTUFBTSxDQUFDTyxXQUFXQyxhQUFhLEdBQUdSLCtDQUFRQSxDQUFDO0lBQzNDLE1BQU0sQ0FBQ1MsUUFBUUMsVUFBVSxHQUFHViwrQ0FBUUEsQ0FBVSxFQUFFO0lBQ2hELE1BQU0sQ0FBQ1csYUFBYUMsZUFBZSxHQUFHWiwrQ0FBUUEsQ0FBZ0I7SUFDOUQsTUFBTSxDQUFDYSxpQkFBaUJDLG1CQUFtQixHQUFHZCwrQ0FBUUEsQ0FBQztJQUV2REMsZ0RBQVNBOzBCQUFDO1lBQ1IsMERBQTBEO1lBQzFELE1BQU1jLGFBQWFDLGFBQWFDLE9BQU8sQ0FBQztZQUV4QyxJQUFJRixZQUFZO2dCQUNkLElBQUk7b0JBQ0YsTUFBTUcsUUFBUUMsS0FBS0MsS0FBSyxDQUFDTDtvQkFDekJULGlCQUFpQlk7Z0JBQ25CLEVBQUUsT0FBT0csS0FBSztvQkFDWkMsUUFBUUMsS0FBSyxDQUFDLHNDQUFzQ0Y7Z0JBQ3REO1lBQ0Y7WUFFQWIsYUFBYTtRQUNmO3lCQUFHLEVBQUU7SUFFTFAsZ0RBQVNBOzBCQUFDO1lBQ1IsTUFBTXVCOzhDQUFjO29CQUNsQixJQUFJO3dCQUNGVixtQkFBbUI7d0JBQ25CRixlQUFlO3dCQUNmLE1BQU1hLFdBQVcsTUFBTUMsTUFBTTt3QkFDN0IsTUFBTUMsT0FBTyxNQUFNRixTQUFTRyxJQUFJO3dCQUVoQyxJQUFJLENBQUNILFNBQVNJLEVBQUUsSUFBSSxDQUFDRixLQUFLbEIsTUFBTSxFQUFFOzRCQUNoQyxNQUFNLElBQUlxQixNQUFNSCxLQUFLSixLQUFLLElBQUk7d0JBQ2hDO3dCQUVBYixVQUFVaUIsS0FBS2xCLE1BQU07b0JBQ3ZCLEVBQUUsT0FBT1ksS0FBSzt3QkFDWlgsVUFBVSxFQUFFO3dCQUNaRSxlQUFlUyxlQUFlUyxRQUFRVCxJQUFJVSxPQUFPLEdBQUc7b0JBQ3RELFNBQVU7d0JBQ1JqQixtQkFBbUI7b0JBQ3JCO2dCQUNGOztZQUVBVTtRQUNGO3lCQUFHLEVBQUU7SUFFTHZCLGdEQUFTQTswQkFBQztZQUNSLElBQUksQ0FBQ0ksaUJBQWlCSSxPQUFPdUIsTUFBTSxLQUFLLEdBQUc7WUFDM0MsTUFBTUMsUUFBUXhCLE9BQU95QixJQUFJO3dDQUFDLENBQUNoQixRQUFVQSxNQUFNaUIsRUFBRSxLQUFLOUIsY0FBYzhCLEVBQUU7O1lBQ2xFLElBQUksQ0FBQ0YsT0FBTztnQkFDVjNCLGlCQUFpQjtnQkFDakJVLGFBQWFvQixVQUFVLENBQUM7Z0JBQ3hCcEIsYUFBYW9CLFVBQVUsQ0FBQztnQkFDeEI7WUFDRjtZQUVBLElBQ0VILE1BQU1JLElBQUksS0FBS2hDLGNBQWNnQyxJQUFJLElBQ2pDSixNQUFNSyxXQUFXLEtBQUtqQyxjQUFjaUMsV0FBVyxFQUMvQztnQkFDQWhDLGlCQUFpQjJCO2dCQUNqQmpCLGFBQWF1QixPQUFPLENBQUMscUJBQXFCTixNQUFNRSxFQUFFO2dCQUNsRG5CLGFBQWF1QixPQUFPLENBQUMsa0JBQWtCcEIsS0FBS3FCLFNBQVMsQ0FBQ1A7WUFDeEQ7UUFDRjt5QkFBRztRQUFDeEI7UUFBUUo7S0FBYztJQUUxQixNQUFNb0Msc0JBQXNCLENBQUN2QjtRQUMzQlosaUJBQWlCWTtRQUNqQkYsYUFBYXVCLE9BQU8sQ0FBQyxxQkFBcUJyQixNQUFNaUIsRUFBRTtRQUNsRG5CLGFBQWF1QixPQUFPLENBQUMsa0JBQWtCcEIsS0FBS3FCLFNBQVMsQ0FBQ3RCO0lBQ3hEO0lBRUEsSUFBSVgsV0FBVztRQUNiLE9BQU8sS0FBSywyQkFBMkI7O0lBQ3pDO0lBRUEscUJBQ0UsOERBQUNtQztRQUFJQyxXQUFVO2tCQUNiLDRFQUFDRDtZQUFJQyxXQUFVOzs4QkFDYiw4REFBQ3hDLHNEQUFNQTtvQkFDTGUsT0FBT2I7b0JBQ1BJLFFBQVFBO29CQUNSbUMsaUJBQWlCSDtvQkFDakJJLGlCQUFpQmhDOzs7Ozs7OEJBRW5CLDhEQUFDaUM7b0JBQUtILFdBQVU7OEJBQ2J0Qyw4QkFDQyw4REFBQ3FDO3dCQUFJQyxXQUFVO2tDQUNiLDRFQUFDRDs0QkFBSUMsV0FBVTtzQ0FDYiw0RUFBQ3pDLHFFQUFhQTtnQ0FDWmdCLE9BQU9iO2dDQUNQSSxRQUFRQTtnQ0FDUm1DLGlCQUFpQkg7Z0NBQ2pCNUIsaUJBQWlCQTs7Ozs7Ozs7Ozs7Ozs7OzZDQUt2Qiw4REFBQzZCO3dCQUFJQyxXQUFVOzswQ0FDYiw4REFBQ0k7Z0NBQUVKLFdBQVU7MENBQW9FOzs7Ozs7NEJBR2hGaEMsNkJBQ0MsOERBQUNvQztnQ0FBRUosV0FBVTswQ0FDVmhDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBU25CO0dBbEh3QlA7S0FBQUEiLCJzb3VyY2VzIjpbIi9ob21lL25pY2hvbGFpL0RvY3VtZW50cy9kZXYvbXVsdGktYWdlbnRfY2hhdF9pbnRlcmZhY2Uvc3JjL2FwcC9wYWdlLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBjbGllbnRcIlxuXG5pbXBvcnQgeyB1c2VTdGF0ZSwgdXNlRWZmZWN0IH0gZnJvbSBcInJlYWN0XCJcbmltcG9ydCB7IENoYXRJbnRlcmZhY2UgfSBmcm9tIFwiQC9jb21wb25lbnRzL2NoYXQtaW50ZXJmYWNlXCJcbmltcG9ydCB7IEhlYWRlciB9IGZyb20gXCJAL2NvbXBvbmVudHMvaGVhZGVyXCJcbmltcG9ydCB0eXBlIHsgQWdlbnQgfSBmcm9tIFwiQC9saWIvdHlwZXNcIlxuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBIb21lKCkge1xuICBjb25zdCBbc2VsZWN0ZWRBZ2VudCwgc2V0U2VsZWN0ZWRBZ2VudF0gPSB1c2VTdGF0ZTxBZ2VudCB8IG51bGw+KG51bGwpXG4gIGNvbnN0IFtpc0xvYWRpbmcsIHNldElzTG9hZGluZ10gPSB1c2VTdGF0ZSh0cnVlKVxuICBjb25zdCBbYWdlbnRzLCBzZXRBZ2VudHNdID0gdXNlU3RhdGU8QWdlbnRbXT4oW10pXG4gIGNvbnN0IFthZ2VudHNFcnJvciwgc2V0QWdlbnRzRXJyb3JdID0gdXNlU3RhdGU8c3RyaW5nIHwgbnVsbD4obnVsbClcbiAgY29uc3QgW2lzQWdlbnRzTG9hZGluZywgc2V0SXNBZ2VudHNMb2FkaW5nXSA9IHVzZVN0YXRlKHRydWUpXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAvLyBUcnkgdG8gbG9hZCBwcmV2aW91c2x5IHNlbGVjdGVkIGFnZW50IGZyb20gbG9jYWxTdG9yYWdlXG4gICAgY29uc3Qgc2F2ZWRBZ2VudCA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKFwic2VsZWN0ZWQtYWdlbnRcIilcblxuICAgIGlmIChzYXZlZEFnZW50KSB7XG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCBhZ2VudCA9IEpTT04ucGFyc2Uoc2F2ZWRBZ2VudClcbiAgICAgICAgc2V0U2VsZWN0ZWRBZ2VudChhZ2VudClcbiAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICBjb25zb2xlLmVycm9yKFwiW2hvbWVdIEZhaWxlZCB0byBsb2FkIHNhdmVkIGFnZW50OlwiLCBlcnIpXG4gICAgICB9XG4gICAgfVxuXG4gICAgc2V0SXNMb2FkaW5nKGZhbHNlKVxuICB9LCBbXSlcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IGZldGNoQWdlbnRzID0gYXN5bmMgKCkgPT4ge1xuICAgICAgdHJ5IHtcbiAgICAgICAgc2V0SXNBZ2VudHNMb2FkaW5nKHRydWUpXG4gICAgICAgIHNldEFnZW50c0Vycm9yKG51bGwpXG4gICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2goXCIvYXBpL2FnZW50c1wiKVxuICAgICAgICBjb25zdCBkYXRhID0gYXdhaXQgcmVzcG9uc2UuanNvbigpXG5cbiAgICAgICAgaWYgKCFyZXNwb25zZS5vayB8fCAhZGF0YS5hZ2VudHMpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoZGF0YS5lcnJvciB8fCBcIkZhaWxlZCB0byBsb2FkIGFnZW50c1wiKVxuICAgICAgICB9XG5cbiAgICAgICAgc2V0QWdlbnRzKGRhdGEuYWdlbnRzKVxuICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgIHNldEFnZW50cyhbXSlcbiAgICAgICAgc2V0QWdlbnRzRXJyb3IoZXJyIGluc3RhbmNlb2YgRXJyb3IgPyBlcnIubWVzc2FnZSA6IFwiRmFpbGVkIHRvIGxvYWQgYWdlbnRzXCIpXG4gICAgICB9IGZpbmFsbHkge1xuICAgICAgICBzZXRJc0FnZW50c0xvYWRpbmcoZmFsc2UpXG4gICAgICB9XG4gICAgfVxuXG4gICAgZmV0Y2hBZ2VudHMoKVxuICB9LCBbXSlcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmICghc2VsZWN0ZWRBZ2VudCB8fCBhZ2VudHMubGVuZ3RoID09PSAwKSByZXR1cm5cbiAgICBjb25zdCBtYXRjaCA9IGFnZW50cy5maW5kKChhZ2VudCkgPT4gYWdlbnQuaWQgPT09IHNlbGVjdGVkQWdlbnQuaWQpXG4gICAgaWYgKCFtYXRjaCkge1xuICAgICAgc2V0U2VsZWN0ZWRBZ2VudChudWxsKVxuICAgICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oXCJzZWxlY3RlZC1hZ2VudFwiKVxuICAgICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oXCJzZWxlY3RlZC1hZ2VudC1pZFwiKVxuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgaWYgKFxuICAgICAgbWF0Y2gubmFtZSAhPT0gc2VsZWN0ZWRBZ2VudC5uYW1lIHx8XG4gICAgICBtYXRjaC5kZXNjcmlwdGlvbiAhPT0gc2VsZWN0ZWRBZ2VudC5kZXNjcmlwdGlvblxuICAgICkge1xuICAgICAgc2V0U2VsZWN0ZWRBZ2VudChtYXRjaClcbiAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKFwic2VsZWN0ZWQtYWdlbnQtaWRcIiwgbWF0Y2guaWQpXG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShcInNlbGVjdGVkLWFnZW50XCIsIEpTT04uc3RyaW5naWZ5KG1hdGNoKSlcbiAgICB9XG4gIH0sIFthZ2VudHMsIHNlbGVjdGVkQWdlbnRdKVxuXG4gIGNvbnN0IGhhbmRsZUFnZW50U2VsZWN0ZWQgPSAoYWdlbnQ6IEFnZW50KSA9PiB7XG4gICAgc2V0U2VsZWN0ZWRBZ2VudChhZ2VudClcbiAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShcInNlbGVjdGVkLWFnZW50LWlkXCIsIGFnZW50LmlkKVxuICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKFwic2VsZWN0ZWQtYWdlbnRcIiwgSlNPTi5zdHJpbmdpZnkoYWdlbnQpKVxuICB9XG5cbiAgaWYgKGlzTG9hZGluZykge1xuICAgIHJldHVybiBudWxsIC8vIEF2b2lkIGh5ZHJhdGlvbiBtaXNtYXRjaFxuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT1cImdhbGxlcnktc2hlbGwgaC1zY3JlZW5cIj5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmxleCBoLWZ1bGwgZmxleC1jb2xcIj5cbiAgICAgICAgPEhlYWRlclxuICAgICAgICAgIGFnZW50PXtzZWxlY3RlZEFnZW50fVxuICAgICAgICAgIGFnZW50cz17YWdlbnRzfVxuICAgICAgICAgIG9uQWdlbnRTZWxlY3RlZD17aGFuZGxlQWdlbnRTZWxlY3RlZH1cbiAgICAgICAgICBpc0xvYWRpbmdBZ2VudHM9e2lzQWdlbnRzTG9hZGluZ31cbiAgICAgICAgLz5cbiAgICAgICAgPG1haW4gY2xhc3NOYW1lPVwiZmxleC0xIG92ZXJmbG93LWhpZGRlbiBweC0zIHB5LTQgc206cHgtNiBzbTpweS02XCI+XG4gICAgICAgICAge3NlbGVjdGVkQWdlbnQgPyAoXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIm14LWF1dG8gZmxleCBoLWZ1bGwgbWF4LXctNXhsIGp1c3RpZnktY2VudGVyXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiaC1mdWxsIHctZnVsbFwiPlxuICAgICAgICAgICAgICAgIDxDaGF0SW50ZXJmYWNlXG4gICAgICAgICAgICAgICAgICBhZ2VudD17c2VsZWN0ZWRBZ2VudH1cbiAgICAgICAgICAgICAgICAgIGFnZW50cz17YWdlbnRzfVxuICAgICAgICAgICAgICAgICAgb25BZ2VudFNlbGVjdGVkPXtoYW5kbGVBZ2VudFNlbGVjdGVkfVxuICAgICAgICAgICAgICAgICAgaXNBZ2VudHNMb2FkaW5nPXtpc0FnZW50c0xvYWRpbmd9XG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICApIDogKFxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmbGV4IGgtZnVsbCBmbGV4LWNvbCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgZ2FwLTQgcHgtNiB0ZXh0LWNlbnRlclwiPlxuICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9XCJtYXgtdy1zbSB0ZXh0LXNtIHVwcGVyY2FzZSB0cmFja2luZy1bMC4yZW1dIHRleHQtbXV0ZWQtZm9yZWdyb3VuZFwiPlxuICAgICAgICAgICAgICAgIFNlbGVjdCBhIGNvcnJlc3BvbmRlbnQgZnJvbSB0aGUgc3dpdGNoIGFib3ZlIHRvIGJlZ2luXG4gICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAge2FnZW50c0Vycm9yICYmIChcbiAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9XCJ0ZXh0LXhzIHRleHQtZGVzdHJ1Y3RpdmVcIj5cbiAgICAgICAgICAgICAgICAgIHthZ2VudHNFcnJvcn1cbiAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICApfVxuICAgICAgICA8L21haW4+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgKVxufVxuIl0sIm5hbWVzIjpbInVzZVN0YXRlIiwidXNlRWZmZWN0IiwiQ2hhdEludGVyZmFjZSIsIkhlYWRlciIsIkhvbWUiLCJzZWxlY3RlZEFnZW50Iiwic2V0U2VsZWN0ZWRBZ2VudCIsImlzTG9hZGluZyIsInNldElzTG9hZGluZyIsImFnZW50cyIsInNldEFnZW50cyIsImFnZW50c0Vycm9yIiwic2V0QWdlbnRzRXJyb3IiLCJpc0FnZW50c0xvYWRpbmciLCJzZXRJc0FnZW50c0xvYWRpbmciLCJzYXZlZEFnZW50IiwibG9jYWxTdG9yYWdlIiwiZ2V0SXRlbSIsImFnZW50IiwiSlNPTiIsInBhcnNlIiwiZXJyIiwiY29uc29sZSIsImVycm9yIiwiZmV0Y2hBZ2VudHMiLCJyZXNwb25zZSIsImZldGNoIiwiZGF0YSIsImpzb24iLCJvayIsIkVycm9yIiwibWVzc2FnZSIsImxlbmd0aCIsIm1hdGNoIiwiZmluZCIsImlkIiwicmVtb3ZlSXRlbSIsIm5hbWUiLCJkZXNjcmlwdGlvbiIsInNldEl0ZW0iLCJzdHJpbmdpZnkiLCJoYW5kbGVBZ2VudFNlbGVjdGVkIiwiZGl2IiwiY2xhc3NOYW1lIiwib25BZ2VudFNlbGVjdGVkIiwiaXNMb2FkaW5nQWdlbnRzIiwibWFpbiIsInAiXSwiaWdub3JlTGlzdCI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/app/page.tsx\n"));
|
|
|
|
/***/ })
|
|
|
|
}); |