22 lines
24 KiB
JavaScript
22 lines
24 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 framer_motion__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! framer-motion */ \"(app-pages-browser)/./node_modules/.pnpm/framer-motion@12.23.24_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/framer-motion/dist/es/render/components/motion/proxy.mjs\");\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\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)(framer_motion__WEBPACK_IMPORTED_MODULE_4__.motion.div, {\n className: \"gallery-shell h-screen\",\n initial: {\n opacity: 0,\n y: 25\n },\n animate: {\n opacity: 1,\n y: 0\n },\n transition: {\n duration: 0.9,\n ease: \"easeOut\"\n },\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: 94,\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: 104,\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: 103,\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: 102,\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: 114,\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: 118,\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: 113,\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: 100,\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: 93,\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: 87,\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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL3NyYy9hcHAvcGFnZS50c3giLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBRTJDO0FBQ0w7QUFDcUI7QUFDZjtBQUc3QixTQUFTSzs7SUFDdEIsTUFBTSxDQUFDQyxlQUFlQyxpQkFBaUIsR0FBR1AsK0NBQVFBLENBQWU7SUFDakUsTUFBTSxDQUFDUSxXQUFXQyxhQUFhLEdBQUdULCtDQUFRQSxDQUFDO0lBQzNDLE1BQU0sQ0FBQ1UsUUFBUUMsVUFBVSxHQUFHWCwrQ0FBUUEsQ0FBVSxFQUFFO0lBQ2hELE1BQU0sQ0FBQ1ksYUFBYUMsZUFBZSxHQUFHYiwrQ0FBUUEsQ0FBZ0I7SUFDOUQsTUFBTSxDQUFDYyxpQkFBaUJDLG1CQUFtQixHQUFHZiwrQ0FBUUEsQ0FBQztJQUV2REMsZ0RBQVNBOzBCQUFDO1lBQ1IsMERBQTBEO1lBQzFELE1BQU1lLGFBQWFDLGFBQWFDLE9BQU8sQ0FBQztZQUV4QyxJQUFJRixZQUFZO2dCQUNkLElBQUk7b0JBQ0YsTUFBTUcsUUFBUUMsS0FBS0MsS0FBSyxDQUFDTDtvQkFDekJULGlCQUFpQlk7Z0JBQ25CLEVBQUUsT0FBT0csS0FBSztvQkFDWkMsUUFBUUMsS0FBSyxDQUFDLHNDQUFzQ0Y7Z0JBQ3REO1lBQ0Y7WUFFQWIsYUFBYTtRQUNmO3lCQUFHLEVBQUU7SUFFTFIsZ0RBQVNBOzBCQUFDO1lBQ1IsTUFBTXdCOzhDQUFjO29CQUNsQixJQUFJO3dCQUNGVixtQkFBbUI7d0JBQ25CRixlQUFlO3dCQUNmLE1BQU1hLFdBQVcsTUFBTUMsTUFBTTt3QkFDN0IsTUFBTUMsT0FBTyxNQUFNRixTQUFTRyxJQUFJO3dCQUVoQyxJQUFJLENBQUNILFNBQVNJLEVBQUUsSUFBSSxDQUFDRixLQUFLbEIsTUFBTSxFQUFFOzRCQUNoQyxNQUFNLElBQUlxQixNQUFNSCxLQUFLSixLQUFLLElBQUk7d0JBQ2hDO3dCQUVBYixVQUFVaUIsS0FBS2xCLE1BQU07b0JBQ3ZCLEVBQUUsT0FBT1ksS0FBSzt3QkFDWlgsVUFBVSxFQUFFO3dCQUNaRSxlQUFlUyxlQUFlUyxRQUFRVCxJQUFJVSxPQUFPLEdBQUc7b0JBQ3RELFNBQVU7d0JBQ1JqQixtQkFBbUI7b0JBQ3JCO2dCQUNGOztZQUVBVTtRQUNGO3lCQUFHLEVBQUU7SUFFTHhCLGdEQUFTQTswQkFBQztZQUNSLElBQUksQ0FBQ0ssaUJBQWlCSSxPQUFPdUIsTUFBTSxLQUFLLEdBQUc7WUFDM0MsTUFBTUMsUUFBUXhCLE9BQU95QixJQUFJO3dDQUFDLENBQUNoQixRQUFVQSxNQUFNaUIsRUFBRSxLQUFLOUIsY0FBYzhCLEVBQUU7O1lBQ2xFLElBQUksQ0FBQ0YsT0FBTztnQkFDVjNCLGlCQUFpQjtnQkFDakJVLGFBQWFvQixVQUFVLENBQUM7Z0JBQ3hCcEIsYUFBYW9CLFVBQVUsQ0FBQztnQkFDeEI7WUFDRjtZQUVBLElBQ0VILE1BQU1JLElBQUksS0FBS2hDLGNBQWNnQyxJQUFJLElBQ2pDSixNQUFNSyxXQUFXLEtBQUtqQyxjQUFjaUMsV0FBVyxFQUMvQztnQkFDQWhDLGlCQUFpQjJCO2dCQUNqQmpCLGFBQWF1QixPQUFPLENBQUMscUJBQXFCTixNQUFNRSxFQUFFO2dCQUNsRG5CLGFBQWF1QixPQUFPLENBQUMsa0JBQWtCcEIsS0FBS3FCLFNBQVMsQ0FBQ1A7WUFDeEQ7UUFDRjt5QkFBRztRQUFDeEI7UUFBUUo7S0FBYztJQUUxQixNQUFNb0Msc0JBQXNCLENBQUN2QjtRQUMzQlosaUJBQWlCWTtRQUNqQkYsYUFBYXVCLE9BQU8sQ0FBQyxxQkFBcUJyQixNQUFNaUIsRUFBRTtRQUNsRG5CLGFBQWF1QixPQUFPLENBQUMsa0JBQWtCcEIsS0FBS3FCLFNBQVMsQ0FBQ3RCO0lBQ3hEO0lBRUEsSUFBSVgsV0FBVztRQUNiLE9BQU8sS0FBSywyQkFBMkI7O0lBQ3pDO0lBRUEscUJBQ0UsOERBQUNOLGlEQUFNQSxDQUFDeUMsR0FBRztRQUNUQyxXQUFVO1FBQ1ZDLFNBQVM7WUFBRUMsU0FBUztZQUFHQyxHQUFHO1FBQUc7UUFDN0JDLFNBQVM7WUFBRUYsU0FBUztZQUFHQyxHQUFHO1FBQUU7UUFDNUJFLFlBQVk7WUFBRUMsVUFBVTtZQUFLQyxNQUFNO1FBQVU7a0JBRTdDLDRFQUFDUjtZQUFJQyxXQUFVOzs4QkFDYiw4REFBQ3hDLHNEQUFNQTtvQkFDTGUsT0FBT2I7b0JBQ1BJLFFBQVFBO29CQUNSMEMsaUJBQWlCVjtvQkFDakJXLGlCQUFpQnZDOzs7Ozs7OEJBRW5CLDhEQUFDd0M7b0JBQUtWLFdBQVU7OEJBQ2J0Qyw4QkFDQyw4REFBQ3FDO3dCQUFJQyxXQUFVO2tDQUNiLDRFQUFDRDs0QkFBSUMsV0FBVTtzQ0FDYiw0RUFBQ3pDLHFFQUFhQTtnQ0FDWmdCLE9BQU9iO2dDQUNQSSxRQUFRQTtnQ0FDUjBDLGlCQUFpQlY7Z0NBQ2pCNUIsaUJBQWlCQTs7Ozs7Ozs7Ozs7Ozs7OzZDQUt2Qiw4REFBQzZCO3dCQUFJQyxXQUFVOzswQ0FDYiw4REFBQ1c7Z0NBQUVYLFdBQVU7MENBQW9FOzs7Ozs7NEJBR2hGaEMsNkJBQ0MsOERBQUMyQztnQ0FBRVgsV0FBVTswQ0FDVmhDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBU25CO0dBdkh3QlA7S0FBQUEiLCJzb3VyY2VzIjpbIi9ob21lL25pY2hvbGFpL0RvY3VtZW50cy9kZXYvbXVsdGktYWdlbnRfY2hhdF9pbnRlcmZhY2Uvc3JjL2FwcC9wYWdlLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBjbGllbnRcIlxuXG5pbXBvcnQgeyB1c2VTdGF0ZSwgdXNlRWZmZWN0IH0gZnJvbSBcInJlYWN0XCJcbmltcG9ydCB7IG1vdGlvbiB9IGZyb20gXCJmcmFtZXItbW90aW9uXCJcbmltcG9ydCB7IENoYXRJbnRlcmZhY2UgfSBmcm9tIFwiQC9jb21wb25lbnRzL2NoYXQtaW50ZXJmYWNlXCJcbmltcG9ydCB7IEhlYWRlciB9IGZyb20gXCJAL2NvbXBvbmVudHMvaGVhZGVyXCJcbmltcG9ydCB0eXBlIHsgQWdlbnQgfSBmcm9tIFwiQC9saWIvdHlwZXNcIlxuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBIb21lKCkge1xuICBjb25zdCBbc2VsZWN0ZWRBZ2VudCwgc2V0U2VsZWN0ZWRBZ2VudF0gPSB1c2VTdGF0ZTxBZ2VudCB8IG51bGw+KG51bGwpXG4gIGNvbnN0IFtpc0xvYWRpbmcsIHNldElzTG9hZGluZ10gPSB1c2VTdGF0ZSh0cnVlKVxuICBjb25zdCBbYWdlbnRzLCBzZXRBZ2VudHNdID0gdXNlU3RhdGU8QWdlbnRbXT4oW10pXG4gIGNvbnN0IFthZ2VudHNFcnJvciwgc2V0QWdlbnRzRXJyb3JdID0gdXNlU3RhdGU8c3RyaW5nIHwgbnVsbD4obnVsbClcbiAgY29uc3QgW2lzQWdlbnRzTG9hZGluZywgc2V0SXNBZ2VudHNMb2FkaW5nXSA9IHVzZVN0YXRlKHRydWUpXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAvLyBUcnkgdG8gbG9hZCBwcmV2aW91c2x5IHNlbGVjdGVkIGFnZW50IGZyb20gbG9jYWxTdG9yYWdlXG4gICAgY29uc3Qgc2F2ZWRBZ2VudCA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKFwic2VsZWN0ZWQtYWdlbnRcIilcblxuICAgIGlmIChzYXZlZEFnZW50KSB7XG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCBhZ2VudCA9IEpTT04ucGFyc2Uoc2F2ZWRBZ2VudClcbiAgICAgICAgc2V0U2VsZWN0ZWRBZ2VudChhZ2VudClcbiAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICBjb25zb2xlLmVycm9yKFwiW2hvbWVdIEZhaWxlZCB0byBsb2FkIHNhdmVkIGFnZW50OlwiLCBlcnIpXG4gICAgICB9XG4gICAgfVxuXG4gICAgc2V0SXNMb2FkaW5nKGZhbHNlKVxuICB9LCBbXSlcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IGZldGNoQWdlbnRzID0gYXN5bmMgKCkgPT4ge1xuICAgICAgdHJ5IHtcbiAgICAgICAgc2V0SXNBZ2VudHNMb2FkaW5nKHRydWUpXG4gICAgICAgIHNldEFnZW50c0Vycm9yKG51bGwpXG4gICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2goXCIvYXBpL2FnZW50c1wiKVxuICAgICAgICBjb25zdCBkYXRhID0gYXdhaXQgcmVzcG9uc2UuanNvbigpXG5cbiAgICAgICAgaWYgKCFyZXNwb25zZS5vayB8fCAhZGF0YS5hZ2VudHMpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoZGF0YS5lcnJvciB8fCBcIkZhaWxlZCB0byBsb2FkIGFnZW50c1wiKVxuICAgICAgICB9XG5cbiAgICAgICAgc2V0QWdlbnRzKGRhdGEuYWdlbnRzKVxuICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgIHNldEFnZW50cyhbXSlcbiAgICAgICAgc2V0QWdlbnRzRXJyb3IoZXJyIGluc3RhbmNlb2YgRXJyb3IgPyBlcnIubWVzc2FnZSA6IFwiRmFpbGVkIHRvIGxvYWQgYWdlbnRzXCIpXG4gICAgICB9IGZpbmFsbHkge1xuICAgICAgICBzZXRJc0FnZW50c0xvYWRpbmcoZmFsc2UpXG4gICAgICB9XG4gICAgfVxuXG4gICAgZmV0Y2hBZ2VudHMoKVxuICB9LCBbXSlcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmICghc2VsZWN0ZWRBZ2VudCB8fCBhZ2VudHMubGVuZ3RoID09PSAwKSByZXR1cm5cbiAgICBjb25zdCBtYXRjaCA9IGFnZW50cy5maW5kKChhZ2VudCkgPT4gYWdlbnQuaWQgPT09IHNlbGVjdGVkQWdlbnQuaWQpXG4gICAgaWYgKCFtYXRjaCkge1xuICAgICAgc2V0U2VsZWN0ZWRBZ2VudChudWxsKVxuICAgICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oXCJzZWxlY3RlZC1hZ2VudFwiKVxuICAgICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oXCJzZWxlY3RlZC1hZ2VudC1pZFwiKVxuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgaWYgKFxuICAgICAgbWF0Y2gubmFtZSAhPT0gc2VsZWN0ZWRBZ2VudC5uYW1lIHx8XG4gICAgICBtYXRjaC5kZXNjcmlwdGlvbiAhPT0gc2VsZWN0ZWRBZ2VudC5kZXNjcmlwdGlvblxuICAgICkge1xuICAgICAgc2V0U2VsZWN0ZWRBZ2VudChtYXRjaClcbiAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKFwic2VsZWN0ZWQtYWdlbnQtaWRcIiwgbWF0Y2guaWQpXG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShcInNlbGVjdGVkLWFnZW50XCIsIEpTT04uc3RyaW5naWZ5KG1hdGNoKSlcbiAgICB9XG4gIH0sIFthZ2VudHMsIHNlbGVjdGVkQWdlbnRdKVxuXG4gIGNvbnN0IGhhbmRsZUFnZW50U2VsZWN0ZWQgPSAoYWdlbnQ6IEFnZW50KSA9PiB7XG4gICAgc2V0U2VsZWN0ZWRBZ2VudChhZ2VudClcbiAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShcInNlbGVjdGVkLWFnZW50LWlkXCIsIGFnZW50LmlkKVxuICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKFwic2VsZWN0ZWQtYWdlbnRcIiwgSlNPTi5zdHJpbmdpZnkoYWdlbnQpKVxuICB9XG5cbiAgaWYgKGlzTG9hZGluZykge1xuICAgIHJldHVybiBudWxsIC8vIEF2b2lkIGh5ZHJhdGlvbiBtaXNtYXRjaFxuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8bW90aW9uLmRpdlxuICAgICAgY2xhc3NOYW1lPVwiZ2FsbGVyeS1zaGVsbCBoLXNjcmVlblwiXG4gICAgICBpbml0aWFsPXt7IG9wYWNpdHk6IDAsIHk6IDI1IH19XG4gICAgICBhbmltYXRlPXt7IG9wYWNpdHk6IDEsIHk6IDAgfX1cbiAgICAgIHRyYW5zaXRpb249e3sgZHVyYXRpb246IDAuOSwgZWFzZTogXCJlYXNlT3V0XCIgfX1cbiAgICA+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cImZsZXggaC1mdWxsIGZsZXgtY29sXCI+XG4gICAgICAgIDxIZWFkZXJcbiAgICAgICAgICBhZ2VudD17c2VsZWN0ZWRBZ2VudH1cbiAgICAgICAgICBhZ2VudHM9e2FnZW50c31cbiAgICAgICAgICBvbkFnZW50U2VsZWN0ZWQ9e2hhbmRsZUFnZW50U2VsZWN0ZWR9XG4gICAgICAgICAgaXNMb2FkaW5nQWdlbnRzPXtpc0FnZW50c0xvYWRpbmd9XG4gICAgICAgIC8+XG4gICAgICAgIDxtYWluIGNsYXNzTmFtZT1cImZsZXgtMSBvdmVyZmxvdy1oaWRkZW4gcHgtMyBweS00IHNtOnB4LTYgc206cHktNlwiPlxuICAgICAgICAgIHtzZWxlY3RlZEFnZW50ID8gKFxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJteC1hdXRvIGZsZXggaC1mdWxsIG1heC13LTV4bCBqdXN0aWZ5LWNlbnRlclwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImgtZnVsbCB3LWZ1bGxcIj5cbiAgICAgICAgICAgICAgICA8Q2hhdEludGVyZmFjZVxuICAgICAgICAgICAgICAgICAgYWdlbnQ9e3NlbGVjdGVkQWdlbnR9XG4gICAgICAgICAgICAgICAgICBhZ2VudHM9e2FnZW50c31cbiAgICAgICAgICAgICAgICAgIG9uQWdlbnRTZWxlY3RlZD17aGFuZGxlQWdlbnRTZWxlY3RlZH1cbiAgICAgICAgICAgICAgICAgIGlzQWdlbnRzTG9hZGluZz17aXNBZ2VudHNMb2FkaW5nfVxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmxleCBoLWZ1bGwgZmxleC1jb2wgaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIGdhcC00IHB4LTYgdGV4dC1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgPHAgY2xhc3NOYW1lPVwibWF4LXctc20gdGV4dC1zbSB1cHBlcmNhc2UgdHJhY2tpbmctWzAuMmVtXSB0ZXh0LW11dGVkLWZvcmVncm91bmRcIj5cbiAgICAgICAgICAgICAgICBTZWxlY3QgYSBjb3JyZXNwb25kZW50IGZyb20gdGhlIHN3aXRjaCBhYm92ZSB0byBiZWdpblxuICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgIHthZ2VudHNFcnJvciAmJiAoXG4gICAgICAgICAgICAgICAgPHAgY2xhc3NOYW1lPVwidGV4dC14cyB0ZXh0LWRlc3RydWN0aXZlXCI+XG4gICAgICAgICAgICAgICAgICB7YWdlbnRzRXJyb3J9XG4gICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9tYWluPlxuICAgICAgPC9kaXY+XG4gICAgPC9tb3Rpb24uZGl2PlxuICApXG59XG4iXSwibmFtZXMiOlsidXNlU3RhdGUiLCJ1c2VFZmZlY3QiLCJtb3Rpb24iLCJDaGF0SW50ZXJmYWNlIiwiSGVhZGVyIiwiSG9tZSIsInNlbGVjdGVkQWdlbnQiLCJzZXRTZWxlY3RlZEFnZW50IiwiaXNMb2FkaW5nIiwic2V0SXNMb2FkaW5nIiwiYWdlbnRzIiwic2V0QWdlbnRzIiwiYWdlbnRzRXJyb3IiLCJzZXRBZ2VudHNFcnJvciIsImlzQWdlbnRzTG9hZGluZyIsInNldElzQWdlbnRzTG9hZGluZyIsInNhdmVkQWdlbnQiLCJsb2NhbFN0b3JhZ2UiLCJnZXRJdGVtIiwiYWdlbnQiLCJKU09OIiwicGFyc2UiLCJlcnIiLCJjb25zb2xlIiwiZXJyb3IiLCJmZXRjaEFnZW50cyIsInJlc3BvbnNlIiwiZmV0Y2giLCJkYXRhIiwianNvbiIsIm9rIiwiRXJyb3IiLCJtZXNzYWdlIiwibGVuZ3RoIiwibWF0Y2giLCJmaW5kIiwiaWQiLCJyZW1vdmVJdGVtIiwibmFtZSIsImRlc2NyaXB0aW9uIiwic2V0SXRlbSIsInN0cmluZ2lmeSIsImhhbmRsZUFnZW50U2VsZWN0ZWQiLCJkaXYiLCJjbGFzc05hbWUiLCJpbml0aWFsIiwib3BhY2l0eSIsInkiLCJhbmltYXRlIiwidHJhbnNpdGlvbiIsImR1cmF0aW9uIiwiZWFzZSIsIm9uQWdlbnRTZWxlY3RlZCIsImlzTG9hZGluZ0FnZW50cyIsIm1haW4iLCJwIl0sImlnbm9yZUxpc3QiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/app/page.tsx\n"));
|
|
|
|
/***/ })
|
|
|
|
}); |