From 95047b353b43f39b6e91329b5c9b965eea581596 Mon Sep 17 00:00:00 2001 From: aaron <> Date: Wed, 8 Apr 2026 00:28:01 +0800 Subject: [PATCH] add login --- .../app/__pycache__/config.cpython-313.pyc | Bin 3346 -> 3627 bytes backend/app/__pycache__/main.cpython-313.pyc | Bin 3020 -> 4754 bytes backend/app/api/auth.py | 211 ++ backend/app/config.py | 9 + backend/app/core/__init__.py | 0 backend/app/core/auth.py | 33 + backend/app/core/deps.py | 57 + .../app/db/__pycache__/tables.cpython-313.pyc | Bin 2734 -> 3111 bytes backend/app/db/tables.py | 11 + backend/app/main.py | 28 +- backend/astock.db | Bin 69632 -> 77824 bytes backend/requirements.txt | 4 + frontend/.next/app-build-manifest.json | 75 +- frontend/.next/build-manifest.json | 25 +- frontend/.next/cache/.tsbuildinfo | 2 +- .../webpack/edge-server-production/index.pack | Bin 11364 -> 11364 bytes frontend/.next/react-loadable-manifest.json | 21 +- frontend/.next/server/app-paths-manifest.json | 9 +- .../.next/server/app/recommendations/page.js | 206 +- .../page_client-reference-manifest.js | 2 +- .../interception-route-rewrite-manifest.js | 2 +- .../.next/server/middleware-build-manifest.js | 22 +- .../middleware-react-loadable-manifest.js | 2 +- frontend/.next/server/next-font-manifest.js | 2 +- frontend/.next/server/pages-manifest.json | 2 +- .../.next/server/server-reference-manifest.js | 2 +- .../server/server-reference-manifest.json | 6 +- frontend/.next/server/vendor-chunks/@swc.js | 75 - frontend/.next/server/vendor-chunks/next.js | 2167 ----------------- frontend/.next/server/webpack-runtime.js | 216 +- .../static/chunks/app-pages-internals.js | 138 -- frontend/.next/static/chunks/app/layout.js | 39 - .../static/chunks/app/recommendations/page.js | 105 - frontend/.next/static/chunks/main-app.js | 2011 --------------- frontend/.next/static/chunks/polyfills.js | 1 - frontend/.next/static/chunks/webpack.js | 1410 ----------- frontend/.next/static/css/app/layout.css | 1762 -------------- .../static/development/_buildManifest.js | 1 - .../.next/static/development/_ssgManifest.js | 1 - .../633457081244afec._.hot-update.json | 1 - frontend/.next/trace | 54 +- frontend/.next/types/app/layout.ts | 79 - frontend/src/app/api/chat/stream/route.ts | 8 +- frontend/src/app/layout.tsx | 171 +- frontend/src/app/login/page.tsx | 85 + frontend/src/app/users/page.tsx | 322 +++ frontend/src/components/auth-guard.tsx | 45 + .../src/components/change-password-dialog.tsx | 134 + frontend/src/components/nav.tsx | 126 + frontend/src/components/user-menu.tsx | 44 + frontend/src/hooks/use-auth.tsx | 61 + frontend/src/lib/api.ts | 140 +- 52 files changed, 1502 insertions(+), 8425 deletions(-) create mode 100644 backend/app/api/auth.py create mode 100644 backend/app/core/__init__.py create mode 100644 backend/app/core/auth.py create mode 100644 backend/app/core/deps.py delete mode 100644 frontend/.next/server/vendor-chunks/@swc.js delete mode 100644 frontend/.next/server/vendor-chunks/next.js delete mode 100644 frontend/.next/static/chunks/app-pages-internals.js delete mode 100644 frontend/.next/static/chunks/app/layout.js delete mode 100644 frontend/.next/static/chunks/app/recommendations/page.js delete mode 100644 frontend/.next/static/chunks/main-app.js delete mode 100644 frontend/.next/static/chunks/polyfills.js delete mode 100644 frontend/.next/static/chunks/webpack.js delete mode 100644 frontend/.next/static/css/app/layout.css delete mode 100644 frontend/.next/static/development/_buildManifest.js delete mode 100644 frontend/.next/static/development/_ssgManifest.js delete mode 100644 frontend/.next/static/webpack/633457081244afec._.hot-update.json delete mode 100644 frontend/.next/types/app/layout.ts create mode 100644 frontend/src/app/login/page.tsx create mode 100644 frontend/src/app/users/page.tsx create mode 100644 frontend/src/components/auth-guard.tsx create mode 100644 frontend/src/components/change-password-dialog.tsx create mode 100644 frontend/src/components/nav.tsx create mode 100644 frontend/src/components/user-menu.tsx create mode 100644 frontend/src/hooks/use-auth.tsx diff --git a/backend/app/__pycache__/config.cpython-313.pyc b/backend/app/__pycache__/config.cpython-313.pyc index 1a3bf0f578b629800b60d1696eaf34e08676903f..666460fe54d59d672ca614669d32d40af7b97431 100644 GIT binary patch delta 663 zcmbOvwOWSnGcPX}0}$*}xth72Ya-uO#s?dp^fQJPsl>3xumzi_1LcBEi&SGcfjl!X z&%8(tEN21cSr(~-c~)Sab&&>`X9MQh2HOSO>oFB+20IjKr8{amZEj|2XQ~%Z&PdEl zPu0y$)y>S)Ehx%QDNQcP%+I^Ul~rC6U!0m;lv?sq0%-9q0gymyML}j!Wqd|{X;JYl zR*zsKQ?pyVAc@4B^!%dCl8oG2tcfYPnR&PPz*Kx`acWUsVs7d!4lv))$QUM5kXT$? z&YWMAGMSTAn^AkRDeDulB2A!8McN=j7ewfT2*b%@Y?_RwlO5PX81ptyWiw!O{=mi{ zZqVR0f%!6v{tX$q3oIfNk}tE!-H=ph@SR|MnMDDpKw7E6Z-Vn>7R4Jox=L=%_0SQfJh!j}VA1F`^QUrGZ56}SxMXB-0Ir+fw3<64la52cD28O3Big&n# z`gOW=CQg>&v1W9f9KmC+X$zDCI}@zD$P~l{xfS9g4x3zHOy{K96@^bez$4FR$>_+~ SQS*fXM1QQ9{FX-%>@fgL=Cwxv delta 355 zcmZ22Gf9f?GcPX}0}${%yOOz)b0XhW##tMm^fL+sn*^KcF%_uHZKFQS1 zH2E^C7Ngqaf2>a?|7KHT)S0Zr9>Qq8xt!gAk>`Pe+J?-F!Vb+oMHZW1ahzvlw4J<* zOWoWSXn2tmh;RlHw-`%`S%9o^CAiBO zEjCZ!R%6Vv0SXk^fe3pL;Q%Buf3Y$!XtEVKf&{=;FoRfNdt5*)S0JIu43Pqhx&Z}> zL5kou^8jrwC`ye_&dD!ME%F3Pc}`Z~4PdmGT*zy$X#(VfodT9A(gATTKm^#;95%W6 kDWy57c13=ZZ}Q6X88A9BcGP@f0MQ@QCbRJ=vVar=0LxTXumAu6 diff --git a/backend/app/__pycache__/main.cpython-313.pyc b/backend/app/__pycache__/main.cpython-313.pyc index a751e0103fb00e4c7423d8b42d1a027f0b3bc473..8001c7590409f3162f1abc4c150c18ca4d7caf29 100644 GIT binary patch delta 2433 zcmaJ?TWk|Y6rI_Z--+{Zo;Y5d#@I>7iv$P+qy$rl161-hEh-klaW;vI?WD6d1X{@m zsun0!NEbw;qN-FarKqA3MFN$66iC%d?MJM%GOR#?k0kKb(0m|hKRUCv^B{$>=FXjS z@60`S=Fa-}!cQu)W=$qNz-@oUpTUpyBUwdM3q9gI$a@M<0S|o8TSKgin;rOcBlq*2 z&NS>d0^-@Q*o(|wGhn=N;kY7s)7NMXPs=ct8#q4?SmZf2RX75({ zCupUyRlW}`P@NV3zi)2J_XXCxms%|^wHC~=aLLc8WgI?@e6NQPtLMGjm(muBGiN1~ zlz_RDSP!dg;UcuEvmF|bHp1|rld{jnhM*k^Tt5xKK6skm!5Tq??PR@q z>9FziNQO>e2c2{#0k36&DXn(W-h!p5w`eIQXx427AhTCyYzNO#;o_Z~w{+?9%*h2# zVp{WT7dUppMP#iDOlfsjSqAg+8Et;-Wb6QY=+cPSF4t*G;~GIL=$e@q@x@2WdMoBP z$!Hn6&*#U3U5<>8*Ok%cM?t@s=X~B+v zaKDE8PTbpYH!TO%DPJa21zKPPnGZt`e%-yenrwiN2>gmRsA%-ETE9&nKiE%tP_4}p%u0g*f?H@or zI~3O66AngRcQJ~Vct-qTQ88uAUBp>o&_GC3bU~@hABYC`iLpW)_Bkpky8Mcm0ozva zlUFaN7`rTrUV10w4+Z+gaQpxwRgXxKE7|_R!J3}#njSyq=EtGQu8Jv*s(d9xN1Q(Bq}g~NR29NZxBiNB=-43F;PMs!Lrm8yJFJrbbe_d zlcmB12EySWUKJYX>l2Z}1S7ozF3mhym77W?6`ktoRyZU|u~1af;1Imp_ak_o?`I`90Jpf>mK8{M`YE5Y|HS_iJ{Sk+l9qv4vrkWW6V9d ze!^%=8Y>dUiqH3c9X=OMI@Tr}Yp-odI5tff-Lo`Rq<;daT>VjQh6Bdj;g(}9A8kw+ zmfw!&=AWq?sk~z@IQi~`xjbpEOqeV0S}T&)#)P%;j=lDZHd(hNQMYBnzV&u7f4j^+ zqXRirGl0#>ouxH-Sx2+7JtM&n<#=){8@ip`Eps8!S3q|qcgtCY^|3qyUNBY$-PO#P zjU&2)EFN>JvJ%Tp^jI|{h8k`&s~KyA?ls1-CL`8=h8m13G%m0}`VSYA0RVrx0gWHh z>}rgve+u$$mX|Lwd*xr4Jb4@2Ag^W%ph4cwwz32Gy?f+g_Q0zgs=^CVH4&r))H_C6 zqLGiD3!-{FNF)-EYOz$bp-TT{?8@N$TwMvL@xy2?Qe!-&H^$K0H+~)Z2$lO diff --git a/backend/app/api/auth.py b/backend/app/api/auth.py new file mode 100644 index 00000000..8def88e0 --- /dev/null +++ b/backend/app/api/auth.py @@ -0,0 +1,211 @@ +"""认证 API + +登录、密码修改、用户管理(管理员) +""" + +import secrets +import logging + +from fastapi import APIRouter, Depends, HTTPException, status +from pydantic import BaseModel +from sqlalchemy import select, update + +from app.core.auth import hash_password, verify_password, create_access_token +from app.core.deps import get_current_user, get_current_admin +from app.db.database import get_db +from app.db.tables import users_table + +logger = logging.getLogger(__name__) +router = APIRouter(prefix="/api/auth", tags=["auth"]) + + +# ---------- Request/Response Models ---------- + +class LoginRequest(BaseModel): + username: str + password: str + + +class ChangePasswordRequest(BaseModel): + old_password: str + new_password: str + + +class CreateUserRequest(BaseModel): + username: str + role: str = "user" + + +# ---------- Public Endpoints ---------- + +@router.post("/login") +async def login(req: LoginRequest): + """用户登录,返回 JWT token""" + async with get_db() as db: + result = await db.execute( + select(users_table).where(users_table.c.username == req.username) + ) + user = result.mappings().first() + + if user is None or not user["is_active"]: + raise HTTPException(status_code=401, detail="用户名或密码错误") + + if not verify_password(req.password, user["password_hash"]): + raise HTTPException(status_code=401, detail="用户名或密码错误") + + token = create_access_token({"sub": str(user["id"]), "role": user["role"]}) + + return { + "token": token, + "user": { + "id": user["id"], + "username": user["username"], + "role": user["role"], + }, + } + + +# ---------- Authenticated Endpoints ---------- + +@router.get("/me") +async def get_me(current_user: dict = Depends(get_current_user)): + """获取当前用户信息""" + return { + "id": current_user["id"], + "username": current_user["username"], + "role": current_user["role"], + "is_active": current_user["is_active"], + } + + +@router.post("/change-password") +async def change_password( + req: ChangePasswordRequest, + current_user: dict = Depends(get_current_user), +): + """修改自己的密码""" + if not verify_password(req.old_password, current_user["password_hash"]): + raise HTTPException(status_code=400, detail="旧密码错误") + + new_hash = hash_password(req.new_password) + async with get_db() as db: + await db.execute( + update(users_table) + .where(users_table.c.id == current_user["id"]) + .values(password_hash=new_hash) + ) + await db.commit() + + return {"message": "密码修改成功"} + + +# ---------- Admin Endpoints ---------- + +@router.get("/users") +async def list_users(admin: dict = Depends(get_current_admin)): + """列出所有用户(管理员)""" + async with get_db() as db: + result = await db.execute( + select(users_table).order_by(users_table.c.id) + ) + rows = result.mappings().all() + + return [ + { + "id": r["id"], + "username": r["username"], + "role": r["role"], + "is_active": r["is_active"], + "created_at": r["created_at"].isoformat() if r["created_at"] else None, + } + for r in rows + ] + + +@router.post("/users") +async def create_user(req: CreateUserRequest, admin: dict = Depends(get_current_admin)): + """创建新用户(管理员),自动生成随机密码""" + # 检查用户名是否已存在 + async with get_db() as db: + result = await db.execute( + select(users_table).where(users_table.c.username == req.username) + ) + if result.first(): + raise HTTPException(status_code=400, detail="用户名已存在") + + if req.role not in ("admin", "user"): + raise HTTPException(status_code=400, detail="角色必须是 admin 或 user") + + # 生成 12 位随机密码 + raw_password = secrets.token_urlsafe(9) + password_hash = hash_password(raw_password) + + await db.execute( + users_table.insert().values( + username=req.username, + password_hash=password_hash, + role=req.role, + ) + ) + await db.commit() + + logger.info(f"管理员 {admin['username']} 创建了用户 {req.username} ({req.role})") + + return { + "username": req.username, + "password": raw_password, + "role": req.role, + "message": "请妥善保管密码,此密码仅显示一次", + } + + +@router.delete("/users/{user_id}") +async def disable_user(user_id: int, admin: dict = Depends(get_current_admin)): + """禁用用户(软删除)""" + if user_id == admin["id"]: + raise HTTPException(status_code=400, detail="不能禁用自己") + + async with get_db() as db: + result = await db.execute( + select(users_table).where(users_table.c.id == user_id) + ) + user = result.mappings().first() + if not user: + raise HTTPException(status_code=404, detail="用户不存在") + + await db.execute( + update(users_table) + .where(users_table.c.id == user_id) + .values(is_active=False) + ) + await db.commit() + + return {"message": f"用户 {user['username']} 已禁用"} + + +@router.post("/users/{user_id}/reset-password") +async def reset_password(user_id: int, admin: dict = Depends(get_current_admin)): + """重置用户密码(管理员),生成新的随机密码""" + async with get_db() as db: + result = await db.execute( + select(users_table).where(users_table.c.id == user_id) + ) + user = result.mappings().first() + if not user: + raise HTTPException(status_code=404, detail="用户不存在") + + raw_password = secrets.token_urlsafe(9) + password_hash = hash_password(raw_password) + + await db.execute( + update(users_table) + .where(users_table.c.id == user_id) + .values(password_hash=password_hash) + ) + await db.commit() + + return { + "username": user["username"], + "password": raw_password, + "message": "请妥善保管新密码,此密码仅显示一次", + } diff --git a/backend/app/config.py b/backend/app/config.py index d194929f..4dca5f1d 100644 --- a/backend/app/config.py +++ b/backend/app/config.py @@ -53,6 +53,15 @@ class Settings(BaseSettings): # 前端 frontend_url: str = "http://localhost:3000" + # JWT 认证 + jwt_secret: str = "change-me-in-production" + jwt_expiry_hours: int = 24 + jwt_algorithm: str = "HS256" + + # 默认管理员(首次启动自动创建) + admin_username: str = "admin" + admin_password: str = "admin123" + model_config = {"env_file": ".env", "env_prefix": "ASTOCK_"} diff --git a/backend/app/core/__init__.py b/backend/app/core/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/backend/app/core/auth.py b/backend/app/core/auth.py new file mode 100644 index 00000000..08a97821 --- /dev/null +++ b/backend/app/core/auth.py @@ -0,0 +1,33 @@ +"""JWT 和密码工具函数""" + +from datetime import datetime, timedelta, timezone + +import jwt +from passlib.context import CryptContext + +from app.config import settings + +pwd_context = CryptContext(schemes=["bcrypt"], deprecated="auto") + + +def hash_password(password: str) -> str: + return pwd_context.hash(password) + + +def verify_password(plain_password: str, hashed_password: str) -> bool: + return pwd_context.verify(plain_password, hashed_password) + + +def create_access_token(data: dict) -> str: + to_encode = data.copy() + expire = datetime.now(timezone.utc) + timedelta(hours=settings.jwt_expiry_hours) + to_encode.update({"exp": expire}) + return jwt.encode(to_encode, settings.jwt_secret, algorithm=settings.jwt_algorithm) + + +def decode_access_token(token: str) -> dict | None: + try: + payload = jwt.decode(token, settings.jwt_secret, algorithms=[settings.jwt_algorithm]) + return payload + except (jwt.ExpiredSignatureError, jwt.InvalidTokenError): + return None diff --git a/backend/app/core/deps.py b/backend/app/core/deps.py new file mode 100644 index 00000000..8314a40b --- /dev/null +++ b/backend/app/core/deps.py @@ -0,0 +1,57 @@ +"""FastAPI 认证依赖注入""" + +from fastapi import Depends, HTTPException, status +from fastapi.security import HTTPBearer, HTTPAuthorizationCredentials +from sqlalchemy import select + +from app.core.auth import decode_access_token +from app.db.database import get_db +from app.db.tables import users_table + +security = HTTPBearer() + + +async def get_current_user( + credentials: HTTPAuthorizationCredentials = Depends(security), +) -> dict: + """从 Authorization Bearer token 提取并验证用户""" + payload = decode_access_token(credentials.credentials) + if payload is None: + raise HTTPException( + status_code=status.HTTP_401_UNAUTHORIZED, + detail="Token 无效或已过期", + headers={"WWW-Authenticate": "Bearer"}, + ) + + user_id = payload.get("sub") + if user_id is None: + raise HTTPException( + status_code=status.HTTP_401_UNAUTHORIZED, + detail="Token 格式错误", + ) + + async with get_db() as db: + result = await db.execute( + select(users_table).where(users_table.c.id == int(user_id)) + ) + user = result.mappings().first() + + if user is None or not user["is_active"]: + raise HTTPException( + status_code=status.HTTP_401_UNAUTHORIZED, + detail="用户不存在或已禁用", + ) + + return dict(user) + + +async def get_current_admin( + current_user: dict = Depends(get_current_user), +) -> dict: + """要求管理员角色""" + if current_user["role"] != "admin": + raise HTTPException( + status_code=status.HTTP_403_FORBIDDEN, + detail="需要管理员权限", + ) + return current_user diff --git a/backend/app/db/__pycache__/tables.cpython-313.pyc b/backend/app/db/__pycache__/tables.cpython-313.pyc index 54aa0bbfd0bdf1c2210814f19a2b4e30ebe96454..9e5f1e64850d1b880e65b51e2bfef214cf13cbae 100644 GIT binary patch delta 357 zcmZ1{x?Fsf%T!#x-WP7-l7gVDpIu;-(fc?77H8aIDay}Dy~P5OzQvhY9G{q6 zl3A8|i>tICC9xzmB|fplPg7_z2m2QGTijryCU0Yp;0^*>!wAI1%*>l5IeM9DFEGe{ zlw#l)xxvES5pk1+tHWf1_=1!jDi>MoK|HGoB@0qFxLjnh1o7-=xU4X}$YKa$n@uoT xAa;>O1H`tT!M;M|B8wh~Z8Jk+gUWV|O&XiEF0$BSihLI23Oe8rPUv(#@|00030J6gB_= diff --git a/backend/app/db/tables.py b/backend/app/db/tables.py index 48c529ad..b0b35993 100644 --- a/backend/app/db/tables.py +++ b/backend/app/db/tables.py @@ -69,3 +69,14 @@ recommendation_tracking_table = Table( Column("status", Text, default="active"), Column("created_at", DateTime, server_default=func.now()), ) + +users_table = Table( + "users", metadata, + Column("id", Integer, primary_key=True, autoincrement=True), + Column("username", Text, nullable=False, unique=True), + Column("password_hash", Text, nullable=False), + Column("role", Text, default="user"), + Column("is_active", Boolean, default=True), + Column("created_at", DateTime, server_default=func.now()), + Column("updated_at", DateTime, server_default=func.now()), +) diff --git a/backend/app/main.py b/backend/app/main.py index 1c2293b6..a5751c50 100644 --- a/backend/app/main.py +++ b/backend/app/main.py @@ -8,7 +8,7 @@ from fastapi.middleware.cors import CORSMiddleware from app.config import settings from app.db.database import init_db from app.engine.scheduler import start_scheduler, stop_scheduler -from app.api import market, sectors, recommendations, stocks, websocket, chat +from app.api import market, sectors, recommendations, stocks, websocket, chat, auth logging.basicConfig( level=logging.DEBUG if settings.debug else logging.INFO, @@ -18,12 +18,37 @@ logging.basicConfig( logger = logging.getLogger(__name__) +async def ensure_admin_exists(): + """如果没有管理员用户,自动创建默认管理员""" + from sqlalchemy import select, insert + from app.db.database import get_db + from app.db.tables import users_table + from app.core.auth import hash_password + + async with get_db() as db: + result = await db.execute( + select(users_table).where(users_table.c.role == "admin") + ) + if result.first() is None: + await db.execute( + insert(users_table).values( + username=settings.admin_username, + password_hash=hash_password(settings.admin_password), + role="admin", + is_active=True, + ) + ) + await db.commit() + logger.info(f"默认管理员用户 '{settings.admin_username}' 已创建") + + @asynccontextmanager async def lifespan(app: FastAPI): # 启动 logger.info("A 股分析推荐 Agent 启动中...") await init_db() logger.info("数据库初始化完成") + await ensure_admin_exists() start_scheduler() logger.info("调度器已启动") yield @@ -54,6 +79,7 @@ app.include_router(sectors.router) app.include_router(recommendations.router) app.include_router(stocks.router) app.include_router(chat.router) +app.include_router(auth.router) # WebSocket app.websocket("/ws")(websocket.ws_endpoint) diff --git a/backend/astock.db b/backend/astock.db index 28f2f3d68487955099732cd773c48b9391908985..88a236e366db5477640d85cb6e926809a2705a9c 100644 GIT binary patch delta 555 zcmZozz|!!5WrDPzA_D`1Fc8B4$3z`tX+;LT-e0^t4;a|lXECtP;(5U>$}^jDE#ET! ztD6N46xcV~b@ZG3me-uQv>;{jK7I#Tkcv=0&%jVu1r4YTshV7x zn(S=iw&If)@<{N4-4t&Kri7aWCT(EhVB!~H;P2!Y0eXsqzrL7>lR>nRRg}}%xFof> zM8zmc#n4E_Jls9Qz|h>(Ia@E!AS1`S$Sf@^xzyYuE7j4$}^jD?Pfs( h752@u*yph^F`k-i#h0_0i^Gj^asiJJ6PIR_008$!6CnTq diff --git a/backend/requirements.txt b/backend/requirements.txt index 04cca19a..e9e658bd 100644 --- a/backend/requirements.txt +++ b/backend/requirements.txt @@ -13,3 +13,7 @@ httpx==0.28.1 websockets==14.1 python-dotenv==1.0.1 openai>=1.0.0 +PyJWT==2.8.0 +bcrypt==4.2.1 +passlib==1.7.4 +python-multipart==0.0.9 diff --git a/frontend/.next/app-build-manifest.json b/frontend/.next/app-build-manifest.json index c3e72499..3249d665 100644 --- a/frontend/.next/app-build-manifest.json +++ b/frontend/.next/app-build-manifest.json @@ -1,30 +1,69 @@ { "pages": { - "/layout": [ - "static/chunks/webpack.js", - "static/chunks/main-app.js", - "static/css/app/layout.css", - "static/chunks/app/layout.js" + "/_not-found/page": [ + "static/chunks/webpack-76aa9cbbdedb6a49.js", + "static/chunks/fd9d1056-f8a2d551cbb94c85.js", + "static/chunks/117-d0aa9486d6cf1a7a.js", + "static/chunks/main-app-7d7e5d1021afd90c.js", + "static/chunks/app/_not-found/page-9a1795a099256da4.js" ], - "/recommendations/page": [ - "static/chunks/webpack.js", - "static/chunks/main-app.js", - "static/chunks/app/recommendations/page.js" + "/layout": [ + "static/chunks/webpack-76aa9cbbdedb6a49.js", + "static/chunks/fd9d1056-f8a2d551cbb94c85.js", + "static/chunks/117-d0aa9486d6cf1a7a.js", + "static/chunks/main-app-7d7e5d1021afd90c.js", + "static/css/fa5094a6607a8c23.css", + "static/chunks/448-92a7b932cf4502ac.js", + "static/chunks/app/layout-97bdd231e78ddf3f.js" + ], + "/login/page": [ + "static/chunks/webpack-76aa9cbbdedb6a49.js", + "static/chunks/fd9d1056-f8a2d551cbb94c85.js", + "static/chunks/117-d0aa9486d6cf1a7a.js", + "static/chunks/main-app-7d7e5d1021afd90c.js", + "static/chunks/app/login/page-778febf452923618.js" ], "/page": [ - "static/chunks/webpack.js", - "static/chunks/main-app.js", - "static/chunks/app/page.js" + "static/chunks/webpack-76aa9cbbdedb6a49.js", + "static/chunks/fd9d1056-f8a2d551cbb94c85.js", + "static/chunks/117-d0aa9486d6cf1a7a.js", + "static/chunks/main-app-7d7e5d1021afd90c.js", + "static/chunks/app/page-5a303311159f23ad.js" + ], + "/recommendations/page": [ + "static/chunks/webpack-76aa9cbbdedb6a49.js", + "static/chunks/fd9d1056-f8a2d551cbb94c85.js", + "static/chunks/117-d0aa9486d6cf1a7a.js", + "static/chunks/main-app-7d7e5d1021afd90c.js", + "static/chunks/app/recommendations/page-ef6715bbb27168f0.js" ], "/sectors/page": [ - "static/chunks/webpack.js", - "static/chunks/main-app.js", - "static/chunks/app/sectors/page.js" + "static/chunks/webpack-76aa9cbbdedb6a49.js", + "static/chunks/fd9d1056-f8a2d551cbb94c85.js", + "static/chunks/117-d0aa9486d6cf1a7a.js", + "static/chunks/main-app-7d7e5d1021afd90c.js", + "static/chunks/app/sectors/page-2f0e16a2b83354cf.js" ], "/chat/page": [ - "static/chunks/webpack.js", - "static/chunks/main-app.js", - "static/chunks/app/chat/page.js" + "static/chunks/webpack-76aa9cbbdedb6a49.js", + "static/chunks/fd9d1056-f8a2d551cbb94c85.js", + "static/chunks/117-d0aa9486d6cf1a7a.js", + "static/chunks/main-app-7d7e5d1021afd90c.js", + "static/chunks/app/chat/page-2dd3304322bd4036.js" + ], + "/stock/[code]/page": [ + "static/chunks/webpack-76aa9cbbdedb6a49.js", + "static/chunks/fd9d1056-f8a2d551cbb94c85.js", + "static/chunks/117-d0aa9486d6cf1a7a.js", + "static/chunks/main-app-7d7e5d1021afd90c.js", + "static/chunks/app/stock/[code]/page-aa4270127391b661.js" + ], + "/users/page": [ + "static/chunks/webpack-76aa9cbbdedb6a49.js", + "static/chunks/fd9d1056-f8a2d551cbb94c85.js", + "static/chunks/117-d0aa9486d6cf1a7a.js", + "static/chunks/main-app-7d7e5d1021afd90c.js", + "static/chunks/app/users/page-e66e56f48050576b.js" ] } } \ No newline at end of file diff --git a/frontend/.next/build-manifest.json b/frontend/.next/build-manifest.json index 018cb67f..f76a2e1a 100644 --- a/frontend/.next/build-manifest.json +++ b/frontend/.next/build-manifest.json @@ -1,19 +1,32 @@ { "polyfillFiles": [ - "static/chunks/polyfills.js" + "static/chunks/polyfills-42372ed130431b0a.js" ], "devFiles": [], "ampDevFiles": [], "lowPriorityFiles": [ - "static/development/_buildManifest.js", - "static/development/_ssgManifest.js" + "static/77YFCNa-r_QnYgqwH2vOe/_buildManifest.js", + "static/77YFCNa-r_QnYgqwH2vOe/_ssgManifest.js" ], "rootMainFiles": [ - "static/chunks/webpack.js", - "static/chunks/main-app.js" + "static/chunks/webpack-76aa9cbbdedb6a49.js", + "static/chunks/fd9d1056-f8a2d551cbb94c85.js", + "static/chunks/117-d0aa9486d6cf1a7a.js", + "static/chunks/main-app-7d7e5d1021afd90c.js" ], "pages": { - "/_app": [] + "/_app": [ + "static/chunks/webpack-76aa9cbbdedb6a49.js", + "static/chunks/framework-f66176bb897dc684.js", + "static/chunks/main-9c5f6b283127d940.js", + "static/chunks/pages/_app-72b849fbd24ac258.js" + ], + "/_error": [ + "static/chunks/webpack-76aa9cbbdedb6a49.js", + "static/chunks/framework-f66176bb897dc684.js", + "static/chunks/main-9c5f6b283127d940.js", + "static/chunks/pages/_error-7ba65e1336b92748.js" + ] }, "ampFirstPages": [] } \ No newline at end of file diff --git a/frontend/.next/cache/.tsbuildinfo b/frontend/.next/cache/.tsbuildinfo index 3ec8be88..c20ac5b1 100644 --- a/frontend/.next/cache/.tsbuildinfo +++ b/frontend/.next/cache/.tsbuildinfo @@ -1 +1 @@ -{"fileNames":["../../node_modules/typescript/lib/lib.es5.d.ts","../../node_modules/typescript/lib/lib.es2015.d.ts","../../node_modules/typescript/lib/lib.es2016.d.ts","../../node_modules/typescript/lib/lib.es2017.d.ts","../../node_modules/typescript/lib/lib.es2018.d.ts","../../node_modules/typescript/lib/lib.es2019.d.ts","../../node_modules/typescript/lib/lib.es2020.d.ts","../../node_modules/typescript/lib/lib.es2021.d.ts","../../node_modules/typescript/lib/lib.es2022.d.ts","../../node_modules/typescript/lib/lib.es2023.d.ts","../../node_modules/typescript/lib/lib.es2024.d.ts","../../node_modules/typescript/lib/lib.esnext.d.ts","../../node_modules/typescript/lib/lib.dom.d.ts","../../node_modules/typescript/lib/lib.dom.iterable.d.ts","../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../node_modules/typescript/lib/lib.es2016.intl.d.ts","../../node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../node_modules/typescript/lib/lib.es2017.date.d.ts","../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../node_modules/typescript/lib/lib.es2021.intl.d.ts","../../node_modules/typescript/lib/lib.es2022.array.d.ts","../../node_modules/typescript/lib/lib.es2022.error.d.ts","../../node_modules/typescript/lib/lib.es2022.intl.d.ts","../../node_modules/typescript/lib/lib.es2022.object.d.ts","../../node_modules/typescript/lib/lib.es2022.string.d.ts","../../node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../node_modules/typescript/lib/lib.es2023.array.d.ts","../../node_modules/typescript/lib/lib.es2023.collection.d.ts","../../node_modules/typescript/lib/lib.es2023.intl.d.ts","../../node_modules/typescript/lib/lib.es2024.arraybuffer.d.ts","../../node_modules/typescript/lib/lib.es2024.collection.d.ts","../../node_modules/typescript/lib/lib.es2024.object.d.ts","../../node_modules/typescript/lib/lib.es2024.promise.d.ts","../../node_modules/typescript/lib/lib.es2024.regexp.d.ts","../../node_modules/typescript/lib/lib.es2024.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2024.string.d.ts","../../node_modules/typescript/lib/lib.esnext.array.d.ts","../../node_modules/typescript/lib/lib.esnext.collection.d.ts","../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../node_modules/typescript/lib/lib.esnext.disposable.d.ts","../../node_modules/typescript/lib/lib.esnext.promise.d.ts","../../node_modules/typescript/lib/lib.esnext.decorators.d.ts","../../node_modules/typescript/lib/lib.esnext.iterator.d.ts","../../node_modules/typescript/lib/lib.esnext.float16.d.ts","../../node_modules/typescript/lib/lib.esnext.error.d.ts","../../node_modules/typescript/lib/lib.esnext.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.decorators.d.ts","../../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../node_modules/next/dist/styled-jsx/types/css.d.ts","../../node_modules/@types/react/global.d.ts","../../node_modules/csstype/index.d.ts","../../node_modules/@types/prop-types/index.d.ts","../../node_modules/@types/react/index.d.ts","../../node_modules/next/dist/styled-jsx/types/index.d.ts","../../node_modules/next/dist/styled-jsx/types/macro.d.ts","../../node_modules/next/dist/styled-jsx/types/style.d.ts","../../node_modules/next/dist/styled-jsx/types/global.d.ts","../../node_modules/next/dist/shared/lib/amp.d.ts","../../node_modules/next/amp.d.ts","../../node_modules/@types/node/compatibility/disposable.d.ts","../../node_modules/@types/node/compatibility/indexable.d.ts","../../node_modules/@types/node/compatibility/iterators.d.ts","../../node_modules/@types/node/compatibility/index.d.ts","../../node_modules/@types/node/globals.typedarray.d.ts","../../node_modules/@types/node/buffer.buffer.d.ts","../../node_modules/@types/node/globals.d.ts","../../node_modules/@types/node/web-globals/abortcontroller.d.ts","../../node_modules/@types/node/web-globals/domexception.d.ts","../../node_modules/@types/node/web-globals/events.d.ts","../../node_modules/undici-types/header.d.ts","../../node_modules/undici-types/readable.d.ts","../../node_modules/undici-types/file.d.ts","../../node_modules/undici-types/fetch.d.ts","../../node_modules/undici-types/formdata.d.ts","../../node_modules/undici-types/connector.d.ts","../../node_modules/undici-types/client.d.ts","../../node_modules/undici-types/errors.d.ts","../../node_modules/undici-types/dispatcher.d.ts","../../node_modules/undici-types/global-dispatcher.d.ts","../../node_modules/undici-types/global-origin.d.ts","../../node_modules/undici-types/pool-stats.d.ts","../../node_modules/undici-types/pool.d.ts","../../node_modules/undici-types/handlers.d.ts","../../node_modules/undici-types/balanced-pool.d.ts","../../node_modules/undici-types/agent.d.ts","../../node_modules/undici-types/mock-interceptor.d.ts","../../node_modules/undici-types/mock-agent.d.ts","../../node_modules/undici-types/mock-client.d.ts","../../node_modules/undici-types/mock-pool.d.ts","../../node_modules/undici-types/mock-errors.d.ts","../../node_modules/undici-types/proxy-agent.d.ts","../../node_modules/undici-types/env-http-proxy-agent.d.ts","../../node_modules/undici-types/retry-handler.d.ts","../../node_modules/undici-types/retry-agent.d.ts","../../node_modules/undici-types/api.d.ts","../../node_modules/undici-types/interceptors.d.ts","../../node_modules/undici-types/util.d.ts","../../node_modules/undici-types/cookies.d.ts","../../node_modules/undici-types/patch.d.ts","../../node_modules/undici-types/websocket.d.ts","../../node_modules/undici-types/eventsource.d.ts","../../node_modules/undici-types/filereader.d.ts","../../node_modules/undici-types/diagnostics-channel.d.ts","../../node_modules/undici-types/content-type.d.ts","../../node_modules/undici-types/cache.d.ts","../../node_modules/undici-types/index.d.ts","../../node_modules/@types/node/web-globals/fetch.d.ts","../../node_modules/@types/node/assert.d.ts","../../node_modules/@types/node/assert/strict.d.ts","../../node_modules/@types/node/async_hooks.d.ts","../../node_modules/@types/node/buffer.d.ts","../../node_modules/@types/node/child_process.d.ts","../../node_modules/@types/node/cluster.d.ts","../../node_modules/@types/node/console.d.ts","../../node_modules/@types/node/constants.d.ts","../../node_modules/@types/node/crypto.d.ts","../../node_modules/@types/node/dgram.d.ts","../../node_modules/@types/node/diagnostics_channel.d.ts","../../node_modules/@types/node/dns.d.ts","../../node_modules/@types/node/dns/promises.d.ts","../../node_modules/@types/node/domain.d.ts","../../node_modules/@types/node/events.d.ts","../../node_modules/@types/node/fs.d.ts","../../node_modules/@types/node/fs/promises.d.ts","../../node_modules/@types/node/http.d.ts","../../node_modules/@types/node/http2.d.ts","../../node_modules/@types/node/https.d.ts","../../node_modules/@types/node/inspector.generated.d.ts","../../node_modules/@types/node/module.d.ts","../../node_modules/@types/node/net.d.ts","../../node_modules/@types/node/os.d.ts","../../node_modules/@types/node/path.d.ts","../../node_modules/@types/node/perf_hooks.d.ts","../../node_modules/@types/node/process.d.ts","../../node_modules/@types/node/punycode.d.ts","../../node_modules/@types/node/querystring.d.ts","../../node_modules/@types/node/readline.d.ts","../../node_modules/@types/node/readline/promises.d.ts","../../node_modules/@types/node/repl.d.ts","../../node_modules/@types/node/sea.d.ts","../../node_modules/@types/node/stream.d.ts","../../node_modules/@types/node/stream/promises.d.ts","../../node_modules/@types/node/stream/consumers.d.ts","../../node_modules/@types/node/stream/web.d.ts","../../node_modules/@types/node/string_decoder.d.ts","../../node_modules/@types/node/test.d.ts","../../node_modules/@types/node/timers.d.ts","../../node_modules/@types/node/timers/promises.d.ts","../../node_modules/@types/node/tls.d.ts","../../node_modules/@types/node/trace_events.d.ts","../../node_modules/@types/node/tty.d.ts","../../node_modules/@types/node/url.d.ts","../../node_modules/@types/node/util.d.ts","../../node_modules/@types/node/v8.d.ts","../../node_modules/@types/node/vm.d.ts","../../node_modules/@types/node/wasi.d.ts","../../node_modules/@types/node/worker_threads.d.ts","../../node_modules/@types/node/zlib.d.ts","../../node_modules/@types/node/index.d.ts","../../node_modules/next/dist/server/get-page-files.d.ts","../../node_modules/@types/react/canary.d.ts","../../node_modules/@types/react/experimental.d.ts","../../node_modules/@types/react-dom/index.d.ts","../../node_modules/@types/react-dom/canary.d.ts","../../node_modules/@types/react-dom/experimental.d.ts","../../node_modules/next/dist/compiled/webpack/webpack.d.ts","../../node_modules/next/dist/server/config.d.ts","../../node_modules/next/dist/lib/load-custom-routes.d.ts","../../node_modules/next/dist/shared/lib/image-config.d.ts","../../node_modules/next/dist/build/webpack/plugins/subresource-integrity-plugin.d.ts","../../node_modules/next/dist/server/body-streams.d.ts","../../node_modules/next/dist/server/future/route-kind.d.ts","../../node_modules/next/dist/server/future/route-definitions/route-definition.d.ts","../../node_modules/next/dist/server/future/route-matches/route-match.d.ts","../../node_modules/next/dist/client/components/app-router-headers.d.ts","../../node_modules/next/dist/server/request-meta.d.ts","../../node_modules/next/dist/server/lib/revalidate.d.ts","../../node_modules/next/dist/server/config-shared.d.ts","../../node_modules/next/dist/server/base-http/index.d.ts","../../node_modules/next/dist/server/api-utils/index.d.ts","../../node_modules/next/dist/server/node-environment.d.ts","../../node_modules/next/dist/server/require-hook.d.ts","../../node_modules/next/dist/server/node-polyfill-crypto.d.ts","../../node_modules/next/dist/lib/page-types.d.ts","../../node_modules/next/dist/build/analysis/get-page-static-info.d.ts","../../node_modules/next/dist/build/webpack/loaders/get-module-build-info.d.ts","../../node_modules/next/dist/build/webpack/plugins/middleware-plugin.d.ts","../../node_modules/next/dist/server/render-result.d.ts","../../node_modules/next/dist/server/future/helpers/i18n-provider.d.ts","../../node_modules/next/dist/server/web/next-url.d.ts","../../node_modules/next/dist/compiled/@edge-runtime/cookies/index.d.ts","../../node_modules/next/dist/server/web/spec-extension/cookies.d.ts","../../node_modules/next/dist/server/web/spec-extension/request.d.ts","../../node_modules/next/dist/server/web/spec-extension/fetch-event.d.ts","../../node_modules/next/dist/server/web/spec-extension/response.d.ts","../../node_modules/next/dist/server/web/types.d.ts","../../node_modules/next/dist/lib/setup-exception-listeners.d.ts","../../node_modules/next/dist/lib/constants.d.ts","../../node_modules/next/dist/build/index.d.ts","../../node_modules/next/dist/build/webpack/plugins/pages-manifest-plugin.d.ts","../../node_modules/next/dist/shared/lib/router/utils/route-regex.d.ts","../../node_modules/next/dist/shared/lib/router/utils/route-matcher.d.ts","../../node_modules/next/dist/shared/lib/router/utils/parse-url.d.ts","../../node_modules/next/dist/server/base-http/node.d.ts","../../node_modules/next/dist/server/font-utils.d.ts","../../node_modules/next/dist/build/webpack/plugins/flight-manifest-plugin.d.ts","../../node_modules/next/dist/server/future/route-modules/route-module.d.ts","../../node_modules/next/dist/shared/lib/deep-readonly.d.ts","../../node_modules/next/dist/server/load-components.d.ts","../../node_modules/next/dist/shared/lib/router/utils/middleware-route-matcher.d.ts","../../node_modules/next/dist/build/webpack/plugins/next-font-manifest-plugin.d.ts","../../node_modules/next/dist/server/future/route-definitions/locale-route-definition.d.ts","../../node_modules/next/dist/server/future/route-definitions/pages-route-definition.d.ts","../../node_modules/next/dist/shared/lib/mitt.d.ts","../../node_modules/next/dist/client/with-router.d.ts","../../node_modules/next/dist/client/router.d.ts","../../node_modules/next/dist/client/route-loader.d.ts","../../node_modules/next/dist/client/page-loader.d.ts","../../node_modules/next/dist/shared/lib/bloom-filter.d.ts","../../node_modules/next/dist/shared/lib/router/router.d.ts","../../node_modules/next/dist/shared/lib/router-context.shared-runtime.d.ts","../../node_modules/next/dist/shared/lib/loadable-context.shared-runtime.d.ts","../../node_modules/next/dist/shared/lib/loadable.shared-runtime.d.ts","../../node_modules/next/dist/shared/lib/image-config-context.shared-runtime.d.ts","../../node_modules/next/dist/shared/lib/hooks-client-context.shared-runtime.d.ts","../../node_modules/next/dist/shared/lib/head-manager-context.shared-runtime.d.ts","../../node_modules/next/dist/server/future/route-definitions/app-page-route-definition.d.ts","../../node_modules/next/dist/shared/lib/modern-browserslist-target.d.ts","../../node_modules/next/dist/shared/lib/constants.d.ts","../../node_modules/next/dist/build/webpack/loaders/metadata/types.d.ts","../../node_modules/next/dist/build/page-extensions-type.d.ts","../../node_modules/next/dist/build/webpack/loaders/next-app-loader.d.ts","../../node_modules/next/dist/server/lib/app-dir-module.d.ts","../../node_modules/next/dist/server/response-cache/types.d.ts","../../node_modules/next/dist/server/response-cache/index.d.ts","../../node_modules/next/dist/server/lib/incremental-cache/index.d.ts","../../node_modules/next/dist/client/components/hooks-server-context.d.ts","../../node_modules/next/dist/server/app-render/dynamic-rendering.d.ts","../../node_modules/next/dist/client/components/static-generation-async-storage-instance.d.ts","../../node_modules/next/dist/client/components/static-generation-async-storage.external.d.ts","../../node_modules/next/dist/server/web/spec-extension/adapters/request-cookies.d.ts","../../node_modules/next/dist/server/async-storage/draft-mode-provider.d.ts","../../node_modules/next/dist/server/web/spec-extension/adapters/headers.d.ts","../../node_modules/next/dist/client/components/request-async-storage-instance.d.ts","../../node_modules/next/dist/client/components/request-async-storage.external.d.ts","../../node_modules/next/dist/server/app-render/create-error-handler.d.ts","../../node_modules/next/dist/server/app-render/app-render.d.ts","../../node_modules/next/dist/shared/lib/server-inserted-html.shared-runtime.d.ts","../../node_modules/next/dist/shared/lib/amp-context.shared-runtime.d.ts","../../node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/entrypoints.d.ts","../../node_modules/next/dist/server/future/route-modules/app-page/module.compiled.d.ts","../../node_modules/@types/react/jsx-runtime.d.ts","../../node_modules/next/dist/client/components/error-boundary.d.ts","../../node_modules/next/dist/client/components/router-reducer/create-initial-router-state.d.ts","../../node_modules/next/dist/client/components/app-router.d.ts","../../node_modules/next/dist/client/components/layout-router.d.ts","../../node_modules/next/dist/client/components/render-from-template-context.d.ts","../../node_modules/next/dist/client/components/action-async-storage-instance.d.ts","../../node_modules/next/dist/client/components/action-async-storage.external.d.ts","../../node_modules/next/dist/client/components/client-page.d.ts","../../node_modules/next/dist/client/components/search-params.d.ts","../../node_modules/next/dist/client/components/not-found-boundary.d.ts","../../node_modules/next/dist/server/app-render/rsc/preloads.d.ts","../../node_modules/next/dist/server/app-render/rsc/postpone.d.ts","../../node_modules/next/dist/server/app-render/rsc/taint.d.ts","../../node_modules/next/dist/server/app-render/entry-base.d.ts","../../node_modules/next/dist/build/templates/app-page.d.ts","../../node_modules/next/dist/server/future/route-modules/app-page/module.d.ts","../../node_modules/next/dist/server/lib/builtin-request-context.d.ts","../../node_modules/next/dist/server/app-render/types.d.ts","../../node_modules/next/dist/client/components/router-reducer/fetch-server-response.d.ts","../../node_modules/next/dist/client/components/router-reducer/router-reducer-types.d.ts","../../node_modules/next/dist/shared/lib/app-router-context.shared-runtime.d.ts","../../node_modules/next/dist/server/future/route-modules/pages/vendored/contexts/entrypoints.d.ts","../../node_modules/next/dist/server/future/route-modules/pages/module.compiled.d.ts","../../node_modules/next/dist/build/templates/pages.d.ts","../../node_modules/next/dist/server/future/route-modules/pages/module.d.ts","../../node_modules/next/dist/server/render.d.ts","../../node_modules/next/dist/server/future/route-definitions/pages-api-route-definition.d.ts","../../node_modules/next/dist/server/future/route-matches/pages-api-route-match.d.ts","../../node_modules/next/dist/server/future/route-matchers/route-matcher.d.ts","../../node_modules/next/dist/server/future/route-matcher-providers/route-matcher-provider.d.ts","../../node_modules/next/dist/server/future/route-matcher-managers/route-matcher-manager.d.ts","../../node_modules/next/dist/server/future/normalizers/normalizer.d.ts","../../node_modules/next/dist/server/future/normalizers/locale-route-normalizer.d.ts","../../node_modules/next/dist/server/future/normalizers/request/pathname-normalizer.d.ts","../../node_modules/next/dist/server/future/normalizers/request/suffix.d.ts","../../node_modules/next/dist/server/future/normalizers/request/rsc.d.ts","../../node_modules/next/dist/server/future/normalizers/request/prefix.d.ts","../../node_modules/next/dist/server/future/normalizers/request/postponed.d.ts","../../node_modules/next/dist/server/future/normalizers/request/action.d.ts","../../node_modules/next/dist/server/future/normalizers/request/prefetch-rsc.d.ts","../../node_modules/next/dist/server/future/normalizers/request/next-data.d.ts","../../node_modules/next/dist/server/base-server.d.ts","../../node_modules/next/dist/server/image-optimizer.d.ts","../../node_modules/next/dist/server/next-server.d.ts","../../node_modules/next/dist/lib/coalesced-function.d.ts","../../node_modules/next/dist/server/lib/router-utils/types.d.ts","../../node_modules/next/dist/trace/types.d.ts","../../node_modules/next/dist/trace/trace.d.ts","../../node_modules/next/dist/trace/shared.d.ts","../../node_modules/next/dist/trace/index.d.ts","../../node_modules/next/dist/build/load-jsconfig.d.ts","../../node_modules/next/dist/build/webpack-config.d.ts","../../node_modules/next/dist/build/webpack/plugins/define-env-plugin.d.ts","../../node_modules/next/dist/build/swc/index.d.ts","../../node_modules/next/dist/server/dev/parse-version-info.d.ts","../../node_modules/next/dist/server/dev/hot-reloader-types.d.ts","../../node_modules/next/dist/telemetry/storage.d.ts","../../node_modules/next/dist/server/lib/types.d.ts","../../node_modules/next/dist/server/lib/render-server.d.ts","../../node_modules/next/dist/server/lib/router-server.d.ts","../../node_modules/next/dist/shared/lib/router/utils/path-match.d.ts","../../node_modules/next/dist/server/lib/router-utils/filesystem.d.ts","../../node_modules/next/dist/server/lib/router-utils/setup-dev-bundler.d.ts","../../node_modules/next/dist/server/lib/dev-bundler-service.d.ts","../../node_modules/next/dist/server/dev/static-paths-worker.d.ts","../../node_modules/next/dist/server/dev/next-dev-server.d.ts","../../node_modules/next/dist/server/next.d.ts","../../node_modules/next/dist/lib/metadata/types/alternative-urls-types.d.ts","../../node_modules/next/dist/lib/metadata/types/extra-types.d.ts","../../node_modules/next/dist/lib/metadata/types/metadata-types.d.ts","../../node_modules/next/dist/lib/metadata/types/manifest-types.d.ts","../../node_modules/next/dist/lib/metadata/types/opengraph-types.d.ts","../../node_modules/next/dist/lib/metadata/types/twitter-types.d.ts","../../node_modules/next/dist/lib/metadata/types/metadata-interface.d.ts","../../node_modules/next/types/index.d.ts","../../node_modules/next/dist/shared/lib/html-context.shared-runtime.d.ts","../../node_modules/@next/env/dist/index.d.ts","../../node_modules/next/dist/shared/lib/utils.d.ts","../../node_modules/next/dist/pages/_app.d.ts","../../node_modules/next/app.d.ts","../../node_modules/next/dist/server/web/spec-extension/unstable-cache.d.ts","../../node_modules/next/dist/server/web/spec-extension/revalidate.d.ts","../../node_modules/next/dist/server/web/spec-extension/unstable-no-store.d.ts","../../node_modules/next/cache.d.ts","../../node_modules/next/dist/shared/lib/runtime-config.external.d.ts","../../node_modules/next/config.d.ts","../../node_modules/next/dist/pages/_document.d.ts","../../node_modules/next/document.d.ts","../../node_modules/next/dist/shared/lib/dynamic.d.ts","../../node_modules/next/dynamic.d.ts","../../node_modules/next/dist/pages/_error.d.ts","../../node_modules/next/error.d.ts","../../node_modules/next/dist/shared/lib/head.d.ts","../../node_modules/next/head.d.ts","../../node_modules/next/dist/client/components/draft-mode.d.ts","../../node_modules/next/dist/client/components/headers.d.ts","../../node_modules/next/headers.d.ts","../../node_modules/next/dist/shared/lib/get-img-props.d.ts","../../node_modules/next/dist/client/image-component.d.ts","../../node_modules/next/dist/shared/lib/image-external.d.ts","../../node_modules/next/image.d.ts","../../node_modules/next/dist/client/link.d.ts","../../node_modules/next/link.d.ts","../../node_modules/next/dist/client/components/redirect-status-code.d.ts","../../node_modules/next/dist/client/components/redirect.d.ts","../../node_modules/next/dist/client/components/not-found.d.ts","../../node_modules/next/dist/client/components/navigation.react-server.d.ts","../../node_modules/next/dist/client/components/navigation.d.ts","../../node_modules/next/navigation.d.ts","../../node_modules/next/router.d.ts","../../node_modules/next/dist/client/script.d.ts","../../node_modules/next/script.d.ts","../../node_modules/next/dist/server/web/spec-extension/user-agent.d.ts","../../node_modules/next/dist/compiled/@edge-runtime/primitives/url.d.ts","../../node_modules/next/dist/server/web/spec-extension/image-response.d.ts","../../node_modules/next/dist/compiled/@vercel/og/satori/index.d.ts","../../node_modules/next/dist/compiled/@vercel/og/emoji/index.d.ts","../../node_modules/next/dist/compiled/@vercel/og/types.d.ts","../../node_modules/next/server.d.ts","../../node_modules/next/types/global.d.ts","../../node_modules/next/types/compiled.d.ts","../../node_modules/next/index.d.ts","../../node_modules/next/image-types/global.d.ts","../../next-env.d.ts","../../tailwind.config.ts","../../src/app/api/chat/stream/route.ts","../../src/hooks/use-websocket.ts","../../src/lib/api.ts","../../src/lib/utils.ts","../../src/app/layout.tsx","../../src/components/market-temp.tsx","../../src/components/stock-card.tsx","../../src/components/sector-heatmap.tsx","../../src/app/page.tsx","../../src/app/chat/page.tsx","../../src/app/recommendations/page.tsx","../../src/app/sectors/page.tsx","../../node_modules/echarts/types/dist/echarts.d.ts","../../node_modules/echarts/index.d.ts","../../src/components/kline-chart.tsx","../../src/components/capital-flow.tsx","../../src/components/score-radar.tsx","../../src/app/stock/[code]/page.tsx","../types/app/layout.ts","../types/app/page.ts","../types/app/api/chat/stream/route.ts","../types/app/chat/page.ts","../types/app/recommendations/page.ts","../types/app/sectors/page.ts","../types/app/stock/[code]/page.ts","../../node_modules/@types/json5/index.d.ts"],"fileIdsList":[[99,145,405,412],[99,145,360,421],[99,145,360,416],[99,145,360,420],[99,145,360,422],[99,145,360,423],[99,145,360,429],[99,145,408,409],[99,145],[99,142,145],[99,144,145],[145],[99,145,150,178],[99,145,146,151,156,164,175,186],[99,145,146,147,156,164],[94,95,96,99,145],[99,145,148,187],[99,145,149,150,157,165],[99,145,150,175,183],[99,145,151,153,156,164],[99,144,145,152],[99,145,153,154],[99,145,155,156],[99,144,145,156],[99,145,156,157,158,175,186],[99,145,156,157,158,171,175,178],[99,145,153,156,159,164,175,186],[99,145,156,157,159,160,164,175,183,186],[99,145,159,161,175,183,186],[97,98,99,100,101,102,103,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192],[99,145,156,162],[99,145,163,186,191],[99,145,153,156,164,175],[99,145,165],[99,145,166],[99,144,145,167],[99,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192],[99,145,169],[99,145,170],[99,145,156,171,172],[99,145,171,173,187,189],[99,145,156,175,176,178],[99,145,177,178],[99,145,175,176],[99,145,178],[99,145,179],[99,142,145,175,180],[99,145,156,181,182],[99,145,181,182],[99,145,150,164,175,183],[99,145,184],[99,145,164,185],[99,145,159,170,186],[99,145,150,187],[99,145,175,188],[99,145,163,189],[99,145,190],[99,140,145],[99,140,145,156,158,167,175,178,186,189,191],[99,145,175,192],[87,99,145,197,198,199],[87,99,145,197,198],[87,99,145],[87,91,99,145,196,361,404],[87,91,99,145,195,361,404],[84,85,86,99,145],[99,145,424],[92,99,145],[99,145,365],[99,145,367,368,369],[99,145,371],[99,145,202,212,218,220,361],[99,145,202,209,211,214,232],[99,145,212],[99,145,212,214,339],[99,145,267,285,300,407],[99,145,309],[99,145,202,212,219,253,263,336,337,407],[99,145,219,407],[99,145,212,263,264,265,407],[99,145,212,219,253,407],[99,145,407],[99,145,202,219,220,407],[99,145,293],[99,144,145,193,292],[87,99,145,286,287,288,306,307],[87,99,145,286],[99,145,276],[99,145,275,277,381],[87,99,145,286,287,304],[99,145,282,307,393],[99,145,391,392],[99,145,226,390],[99,145,279],[99,144,145,193,226,242,275,276,277,278],[87,99,145,304,306,307],[99,145,304,306],[99,145,304,305,307],[99,145,170,193],[99,145,274],[99,144,145,193,211,213,270,271,272,273],[87,99,145,203,384],[87,99,145,186,193],[87,99,145,219,251],[87,99,145,219],[99,145,249,254],[87,99,145,250,364],[87,91,99,145,159,193,195,196,361,402,403],[99,145,361],[99,145,201],[99,145,354,355,356,357,358,359],[99,145,356],[87,99,145,250,286,364],[87,99,145,286,362,364],[87,99,145,286,364],[99,145,159,193,213,364],[99,145,159,193,210,211,222,240,242,274,279,280,302,304],[99,145,271,274,279,287,289,290,291,293,294,295,296,297,298,299,407],[99,145,272],[87,99,145,170,193,211,212,240,242,243,245,270,302,303,307,361,407],[99,145,159,193,213,214,226,227,275],[99,145,159,193,212,214],[99,145,159,175,193,210,213,214],[99,145,159,170,186,193,210,211,212,213,214,219,222,223,233,234,236,239,240,242,243,244,245,269,270,303,304,312,314,317,319,322,324,325,326,327],[99,145,159,175,193],[99,145,202,203,204,210,211,361,364,407],[99,145,159,175,186,193,207,338,340,341,407],[99,145,170,186,193,207,210,213,230,234,236,237,238,243,270,317,328,330,336,350,351],[99,145,212,216,270],[99,145,210,212],[99,145,223,318],[99,145,320,321],[99,145,320],[99,145,318],[99,145,320,323],[99,145,206,207],[99,145,206,246],[99,145,206],[99,145,208,223,316],[99,145,315],[99,145,207,208],[99,145,208,313],[99,145,207],[99,145,302],[99,145,159,193,210,222,241,261,267,281,284,301,304],[99,145,255,256,257,258,259,260,282,283,307,362],[99,145,311],[99,145,159,193,210,222,241,247,308,310,312,361,364],[99,145,159,186,193,203,210,212,269],[99,145,266],[99,145,159,193,344,349],[99,145,233,242,269,364],[99,145,332,336,350,353],[99,145,159,216,336,344,345,353],[99,145,202,212,233,244,347],[99,145,159,193,212,219,244,331,332,342,343,346,348],[99,145,194,240,241,242,361,364],[99,145,159,170,186,193,208,210,211,213,216,221,222,230,233,234,236,237,238,239,243,245,269,270,314,328,329,364],[99,145,159,193,210,212,216,330,352],[99,145,159,193,211,213],[87,99,145,159,170,193,201,203,210,211,214,222,239,240,242,243,245,311,361,364],[99,145,159,170,186,193,205,208,209,213],[99,145,206,268],[99,145,159,193,206,211,222],[99,145,159,193,212,223],[99,145,159,193],[99,145,226],[99,145,225],[99,145,227],[99,145,212,224,226,230],[99,145,212,224,226],[99,145,159,193,205,212,213,219,227,228,229],[87,99,145,304,305,306],[99,145,262],[87,99,145,203],[87,99,145,236],[87,99,145,194,239,242,245,361,364],[99,145,203,384,385],[87,99,145,254],[87,99,145,170,186,193,201,248,250,252,253,364],[99,145,213,219,236],[99,145,235],[87,99,145,157,159,170,193,201,254,263,361,362,363],[83,87,88,89,90,99,145,195,196,361,404],[99,145,150],[99,145,333,334,335],[99,145,333],[99,145,373],[99,145,375],[99,145,377],[99,145,379],[99,145,382],[99,145,386],[91,93,99,145,361,366,370,372,374,376,378,380,383,387,389,395,396,398,405,406,407],[99,145,388],[99,145,394],[99,145,250],[99,145,397],[99,144,145,227,228,229,230,399,400,401,404],[99,145,193],[87,91,99,145,159,161,170,193,195,196,197,199,201,214,353,360,364,404],[99,112,116,145,186],[99,112,145,175,186],[99,107,145],[99,109,112,145,183,186],[99,145,164,183],[99,107,145,193],[99,109,112,145,164,186],[99,104,105,108,111,145,156,175,186],[99,112,119,145],[99,104,110,145],[99,112,133,134,145],[99,108,112,145,178,186,193],[99,133,145,193],[99,106,107,145,193],[99,112,145],[99,106,107,108,109,110,111,112,113,114,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,134,135,136,137,138,139,145],[99,112,127,145],[99,112,119,120,145],[99,110,112,120,121,145],[99,111,145],[99,104,107,112,145],[99,112,116,120,121,145],[99,116,145],[99,110,112,115,145,186],[99,104,109,112,119,145],[99,145,175],[99,107,112,133,145,191,193],[99,145,405],[87,99,145,414],[99,145,408],[87,99,145,413,414,417,418,419],[87,99,145,413,414,418],[87,99,145,414,419],[87,99,145,395,414,415,426,427,428],[87,99,145,425],[99,145,414,415]],"fileInfos":[{"version":"c430d44666289dae81f30fa7b2edebf186ecc91a2d4c71266ea6ae76388792e1","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","signature":false,"impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","signature":false,"impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","signature":false,"impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","signature":false,"impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","signature":false,"impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","signature":false,"impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","signature":false,"impliedFormat":1},{"version":"ee7bad0c15b58988daa84371e0b89d313b762ab83cb5b31b8a2d1162e8eb41c2","signature":false,"impliedFormat":1},{"version":"27bdc30a0e32783366a5abeda841bc22757c1797de8681bbe81fbc735eeb1c10","signature":false,"impliedFormat":1},{"version":"8fd575e12870e9944c7e1d62e1f5a73fcf23dd8d3a321f2a2c74c20d022283fe","signature":false,"impliedFormat":1},{"version":"2ab096661c711e4a81cc464fa1e6feb929a54f5340b46b0a07ac6bbf857471f0","signature":false,"impliedFormat":1},{"version":"080941d9f9ff9307f7e27a83bcd888b7c8270716c39af943532438932ec1d0b9","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"2e80ee7a49e8ac312cc11b77f1475804bee36b3b2bc896bead8b6e1266befb43","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"fb0f136d372979348d59b3f5020b4cdb81b5504192b1cacff5d1fbba29378aa1","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"a680117f487a4d2f30ea46f1b4b7f58bef1480456e18ba53ee85c2746eeca012","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"959d36cddf5e7d572a65045b876f2956c973a586da58e5d26cde519184fd9b8a","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"965f36eae237dd74e6cca203a43e9ca801ce38824ead814728a2807b1910117d","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"3925a6c820dcb1a06506c90b1577db1fdbf7705d65b62b99dce4be75c637e26b","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"0a3d63ef2b853447ec4f749d3f368ce642264246e02911fcb1590d8c161b8005","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"8cdf8847677ac7d20486e54dd3fcf09eda95812ac8ace44b4418da1bbbab6eb8","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"df83c2a6c73228b625b0beb6669c7ee2a09c914637e2d35170723ad49c0f5cd4","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"436aaf437562f276ec2ddbee2f2cdedac7664c1e4c1d2c36839ddd582eeb3d0a","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"8e3c06ea092138bf9fa5e874a1fdbc9d54805d074bee1de31b99a11e2fec239d","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"87dc0f382502f5bbce5129bdc0aea21e19a3abbc19259e0b43ae038a9fc4e326","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"b1cb28af0c891c8c96b2d6b7be76bd394fddcfdb4709a20ba05a7c1605eea0f9","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"2fef54945a13095fdb9b84f705f2b5994597640c46afeb2ce78352fab4cb3279","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"ac77cb3e8c6d3565793eb90a8373ee8033146315a3dbead3bde8db5eaf5e5ec6","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"56e4ed5aab5f5920980066a9409bfaf53e6d21d3f8d020c17e4de584d29600ad","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"4ece9f17b3866cc077099c73f4983bddbcb1dc7ddb943227f1ec070f529dedd1","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"0a6282c8827e4b9a95f4bf4f5c205673ada31b982f50572d27103df8ceb8013c","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"1c9319a09485199c1f7b0498f2988d6d2249793ef67edda49d1e584746be9032","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"e3a2a0cee0f03ffdde24d89660eba2685bfbdeae955a6c67e8c4c9fd28928eeb","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"811c71eee4aa0ac5f7adf713323a5c41b0cf6c4e17367a34fbce379e12bbf0a4","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"51ad4c928303041605b4d7ae32e0c1ee387d43a24cd6f1ebf4a2699e1076d4fa","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"60037901da1a425516449b9a20073aa03386cce92f7a1fd902d7602be3a7c2e9","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"d4b1d2c51d058fc21ec2629fff7a76249dec2e36e12960ea056e3ef89174080f","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"22adec94ef7047a6c9d1af3cb96be87a335908bf9ef386ae9fd50eeb37f44c47","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"196cb558a13d4533a5163286f30b0509ce0210e4b316c56c38d4c0fd2fb38405","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"73f78680d4c08509933daf80947902f6ff41b6230f94dd002ae372620adb0f60","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"c5239f5c01bcfa9cd32f37c496cf19c61d69d37e48be9de612b541aac915805b","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"0990a7576222f248f0a3b888adcb7389f957928ce2afb1cd5128169086ff4d29","signature":false,"impliedFormat":1},{"version":"eb5b19b86227ace1d29ea4cf81387279d04bb34051e944bc53df69f58914b788","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"ac51dd7d31333793807a6abaa5ae168512b6131bd41d9c5b98477fc3b7800f9f","signature":false,"impliedFormat":1},{"version":"87d9d29dbc745f182683f63187bf3d53fd8673e5fca38ad5eaab69798ed29fbc","signature":false,"impliedFormat":1},{"version":"035312d4945d13efa134ae482f6dc56a1a9346f7ac3be7ccbad5741058ce87f3","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"cc69795d9954ee4ad57545b10c7bf1a7260d990231b1685c147ea71a6faa265c","signature":false,"impliedFormat":1},{"version":"8bc6c94ff4f2af1f4023b7bb2379b08d3d7dd80c698c9f0b07431ea16101f05f","signature":false,"impliedFormat":1},{"version":"1b61d259de5350f8b1e5db06290d31eaebebc6baafd5f79d314b5af9256d7153","signature":false,"impliedFormat":1},{"version":"57194e1f007f3f2cbef26fa299d4c6b21f4623a2eddc63dfeef79e38e187a36e","signature":false,"impliedFormat":1},{"version":"0f6666b58e9276ac3a38fdc80993d19208442d6027ab885580d93aec76b4ef00","signature":false,"impliedFormat":1},{"version":"05fd364b8ef02fb1e174fbac8b825bdb1e5a36a016997c8e421f5fab0a6da0a0","signature":false,"impliedFormat":1},{"version":"70521b6ab0dcba37539e5303104f29b721bfb2940b2776da4cc818c07e1fefc1","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"ab41ef1f2cdafb8df48be20cd969d875602483859dc194e9c97c8a576892c052","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"d153a11543fd884b596587ccd97aebbeed950b26933ee000f94009f1ab142848","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"21d819c173c0cf7cc3ce57c3276e77fd9a8a01d35a06ad87158781515c9a438a","signature":false,"impliedFormat":1},{"version":"98cffbf06d6bab333473c70a893770dbe990783904002c4f1a960447b4b53dca","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"ba481bca06f37d3f2c137ce343c7d5937029b2468f8e26111f3c9d9963d6568d","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"6d9ef24f9a22a88e3e9b3b3d8c40ab1ddb0853f1bfbd5c843c37800138437b61","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"1db0b7dca579049ca4193d034d835f6bfe73096c73663e5ef9a0b5779939f3d0","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"9798340ffb0d067d69b1ae5b32faa17ab31b82466a3fc00d8f2f2df0c8554aaa","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"f26b11d8d8e4b8028f1c7d618b22274c892e4b0ef5b3678a8ccbad85419aef43","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","signature":false,"impliedFormat":1},{"version":"763fe0f42b3d79b440a9b6e51e9ba3f3f91352469c1e4b3b67bfa4ff6352f3f4","signature":false,"impliedFormat":1},{"version":"25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","signature":false,"impliedFormat":1},{"version":"c464d66b20788266e5353b48dc4aa6bc0dc4a707276df1e7152ab0c9ae21fad8","signature":false,"impliedFormat":1},{"version":"78d0d27c130d35c60b5e5566c9f1e5be77caf39804636bc1a40133919a949f21","signature":false,"impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","signature":false,"impliedFormat":1},{"version":"1d6e127068ea8e104a912e42fc0a110e2aa5a66a356a917a163e8cf9a65e4a75","signature":false,"impliedFormat":1},{"version":"5ded6427296cdf3b9542de4471d2aa8d3983671d4cac0f4bf9c637208d1ced43","signature":false,"impliedFormat":1},{"version":"7f182617db458e98fc18dfb272d40aa2fff3a353c44a89b2c0ccb3937709bfb5","signature":false,"impliedFormat":1},{"version":"cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","signature":false,"impliedFormat":1},{"version":"385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","signature":false,"impliedFormat":1},{"version":"9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","signature":false,"impliedFormat":1},{"version":"0b8a9268adaf4da35e7fa830c8981cfa22adbbe5b3f6f5ab91f6658899e657a7","signature":false,"impliedFormat":1},{"version":"11396ed8a44c02ab9798b7dca436009f866e8dae3c9c25e8c1fbc396880bf1bb","signature":false,"impliedFormat":1},{"version":"ba7bc87d01492633cb5a0e5da8a4a42a1c86270e7b3d2dea5d156828a84e4882","signature":false,"impliedFormat":1},{"version":"4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","signature":false,"impliedFormat":1},{"version":"c21dc52e277bcfc75fac0436ccb75c204f9e1b3fa5e12729670910639f27343e","signature":false,"impliedFormat":1},{"version":"13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","signature":false,"impliedFormat":1},{"version":"9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","signature":false,"impliedFormat":1},{"version":"4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","signature":false,"impliedFormat":1},{"version":"24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","signature":false,"impliedFormat":1},{"version":"ea0148f897b45a76544ae179784c95af1bd6721b8610af9ffa467a518a086a43","signature":false,"impliedFormat":1},{"version":"24c6a117721e606c9984335f71711877293a9651e44f59f3d21c1ea0856f9cc9","signature":false,"impliedFormat":1},{"version":"dd3273ead9fbde62a72949c97dbec2247ea08e0c6952e701a483d74ef92d6a17","signature":false,"impliedFormat":1},{"version":"405822be75ad3e4d162e07439bac80c6bcc6dbae1929e179cf467ec0b9ee4e2e","signature":false,"impliedFormat":1},{"version":"0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","signature":false,"impliedFormat":1},{"version":"e61be3f894b41b7baa1fbd6a66893f2579bfad01d208b4ff61daef21493ef0a8","signature":false,"impliedFormat":1},{"version":"bd0532fd6556073727d28da0edfd1736417a3f9f394877b6d5ef6ad88fba1d1a","signature":false,"impliedFormat":1},{"version":"89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","signature":false,"impliedFormat":1},{"version":"615ba88d0128ed16bf83ef8ccbb6aff05c3ee2db1cc0f89ab50a4939bfc1943f","signature":false,"impliedFormat":1},{"version":"a4d551dbf8746780194d550c88f26cf937caf8d56f102969a110cfaed4b06656","signature":false,"impliedFormat":1},{"version":"8bd86b8e8f6a6aa6c49b71e14c4ffe1211a0e97c80f08d2c8cc98838006e4b88","signature":false,"impliedFormat":1},{"version":"317e63deeb21ac07f3992f5b50cdca8338f10acd4fbb7257ebf56735bf52ab00","signature":false,"impliedFormat":1},{"version":"4732aec92b20fb28c5fe9ad99521fb59974289ed1e45aecb282616202184064f","signature":false,"impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","signature":false,"impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","signature":false,"impliedFormat":1},{"version":"bf67d53d168abc1298888693338cb82854bdb2e69ef83f8a0092093c2d562107","signature":false,"impliedFormat":1},{"version":"b52476feb4a0cbcb25e5931b930fc73cb6643fb1a5060bf8a3dda0eeae5b4b68","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"e2677634fe27e87348825bb041651e22d50a613e2fdf6a4a3ade971d71bac37e","signature":false,"impliedFormat":1},{"version":"7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","signature":false,"impliedFormat":1},{"version":"8c0bcd6c6b67b4b503c11e91a1fb91522ed585900eab2ab1f61bba7d7caa9d6f","signature":false,"impliedFormat":1},{"version":"8cd19276b6590b3ebbeeb030ac271871b9ed0afc3074ac88a94ed2449174b776","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"696eb8d28f5949b87d894b26dc97318ef944c794a9a4e4f62360cd1d1958014b","signature":false,"impliedFormat":1},{"version":"3f8fa3061bd7402970b399300880d55257953ee6d3cd408722cb9ac20126460c","signature":false,"impliedFormat":1},{"version":"35ec8b6760fd7138bbf5809b84551e31028fb2ba7b6dc91d95d098bf212ca8b4","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"5524481e56c48ff486f42926778c0a3cce1cc85dc46683b92b1271865bcf015a","signature":false,"impliedFormat":1},{"version":"68bd56c92c2bd7d2339457eb84d63e7de3bd56a69b25f3576e1568d21a162398","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"3e93b123f7c2944969d291b35fed2af79a6e9e27fdd5faa99748a51c07c02d28","signature":false,"impliedFormat":1},{"version":"9d19808c8c291a9010a6c788e8532a2da70f811adb431c97520803e0ec649991","signature":false,"impliedFormat":1},{"version":"87aad3dd9752067dc875cfaa466fc44246451c0c560b820796bdd528e29bef40","signature":false,"impliedFormat":1},{"version":"4aacb0dd020eeaef65426153686cc639a78ec2885dc72ad220be1d25f1a439df","signature":false,"impliedFormat":1},{"version":"f0bd7e6d931657b59605c44112eaf8b980ba7f957a5051ed21cb93d978cf2f45","signature":false,"impliedFormat":1},{"version":"8db0ae9cb14d9955b14c214f34dae1b9ef2baee2fe4ce794a4cd3ac2531e3255","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"15fc6f7512c86810273af28f224251a5a879e4261b4d4c7e532abfbfc3983134","signature":false,"impliedFormat":1},{"version":"58adba1a8ab2d10b54dc1dced4e41f4e7c9772cbbac40939c0dc8ce2cdb1d442","signature":false,"impliedFormat":1},{"version":"641942a78f9063caa5d6b777c99304b7d1dc7328076038c6d94d8a0b81fc95c1","signature":false,"impliedFormat":1},{"version":"714435130b9015fae551788df2a88038471a5a11eb471f27c4ede86552842bc9","signature":false,"impliedFormat":1},{"version":"855cd5f7eb396f5f1ab1bc0f8580339bff77b68a770f84c6b254e319bbfd1ac7","signature":false,"impliedFormat":1},{"version":"5650cf3dace09e7c25d384e3e6b818b938f68f4e8de96f52d9c5a1b3db068e86","signature":false,"impliedFormat":1},{"version":"1354ca5c38bd3fd3836a68e0f7c9f91f172582ba30ab15bb8c075891b91502b7","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"7e20d899c28ca26a2a7afc98beaa69e63ff7fba0a8bc47b4e3bf3ede5e09e424","signature":false,"impliedFormat":1},{"version":"2d2fcaab481b31a5882065c7951255703ddbe1c0e507af56ea42d79ac3911201","signature":false,"impliedFormat":1},{"version":"a192fe8ec33f75edbc8d8f3ed79f768dfae11ff5735e7fe52bfa69956e46d78d","signature":false,"impliedFormat":1},{"version":"ca867399f7db82df981d6915bcbb2d81131d7d1ef683bc782b59f71dda59bc85","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"372413016d17d804e1d139418aca0c68e47a83fb6669490857f4b318de8cccb3","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"9e043a1bc8fbf2a255bccf9bf27e0f1caf916c3b0518ea34aa72357c0afd42ec","signature":false,"impliedFormat":1},{"version":"b4f70ec656a11d570e1a9edce07d118cd58d9760239e2ece99306ee9dfe61d02","signature":false,"impliedFormat":1},{"version":"3bc2f1e2c95c04048212c569ed38e338873f6a8593930cf5a7ef24ffb38fc3b6","signature":false,"impliedFormat":1},{"version":"6e70e9570e98aae2b825b533aa6292b6abd542e8d9f6e9475e88e1d7ba17c866","signature":false,"impliedFormat":1},{"version":"f9d9d753d430ed050dc1bf2667a1bab711ccbb1c1507183d794cc195a5b085cc","signature":false,"impliedFormat":1},{"version":"9eece5e586312581ccd106d4853e861aaaa1a39f8e3ea672b8c3847eedd12f6e","signature":false,"impliedFormat":1},{"version":"085f552d005479e2e6a7311cdbbe5d8c55c497b4d19274285df161ee9684cd9c","signature":false,"impliedFormat":1},{"version":"37ba7b45141a45ce6e80e66f2a96c8a5ab1bcef0fc2d0f56bb58df96ec67e972","signature":false,"impliedFormat":1},{"version":"45650f47bfb376c8a8ed39d4bcda5902ab899a3150029684ee4c10676d9fbaee","signature":false,"impliedFormat":1},{"version":"007faacc9268357caa21d24169f3f3f2497af3e9241308df2d89f6e6d9bb3f2e","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"74cf591a0f63db318651e0e04cb55f8791385f86e987a67fd4d2eaab8191f730","signature":false,"impliedFormat":1},{"version":"5eab9b3dc9b34f185417342436ec3f106898da5f4801992d8ff38ab3aff346b5","signature":false,"impliedFormat":1},{"version":"12ed4559eba17cd977aa0db658d25c4047067444b51acfdcbf38470630642b23","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"f3ffabc95802521e1e4bcba4c88d8615176dc6e09111d920c7a213bdda6e1d65","signature":false,"impliedFormat":1},{"version":"809821b8a065e3234a55b3a9d7846231ed18d66dd749f2494c66288d890daf7f","signature":false,"impliedFormat":1},{"version":"ae56f65caf3be91108707bd8dfbccc2a57a91feb5daabf7165a06a945545ed26","signature":false,"impliedFormat":1},{"version":"a136d5de521da20f31631a0a96bf712370779d1c05b7015d7019a9b2a0446ca9","signature":false,"impliedFormat":1},{"version":"c3b41e74b9a84b88b1dca61ec39eee25c0dbc8e7d519ba11bb070918cfacf656","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"4737a9dc24d0e68b734e6cfbcea0c15a2cfafeb493485e27905f7856988c6b29","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"36d8d3e7506b631c9582c251a2c0b8a28855af3f76719b12b534c6edf952748d","signature":false,"impliedFormat":1},{"version":"1ca69210cc42729e7ca97d3a9ad48f2e9cb0042bada4075b588ae5387debd318","signature":false,"impliedFormat":1},{"version":"f5ebe66baaf7c552cfa59d75f2bfba679f329204847db3cec385acda245e574e","signature":false,"impliedFormat":1},{"version":"ed59add13139f84da271cafd32e2171876b0a0af2f798d0c663e8eeb867732cf","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"b7c5e2ea4a9749097c347454805e933844ed207b6eefec6b7cfd418b5f5f7b28","signature":false,"impliedFormat":1},{"version":"b1810689b76fd473bd12cc9ee219f8e62f54a7d08019a235d07424afbf074d25","signature":false,"impliedFormat":1},{"version":"8caa5c86be1b793cd5f599e27ecb34252c41e011980f7d61ae4989a149ff6ccc","signature":false,"impliedFormat":1},{"version":"f9fd93190acb1ffe0bc0fb395df979452f8d625071e9ffc8636e4dfb86ab2508","signature":false,"impliedFormat":1},{"version":"5f41fd8732a89e940c58ce22206e3df85745feb8983e2b4c6257fb8cbb118493","signature":false,"impliedFormat":1},{"version":"17ed71200119e86ccef2d96b73b02ce8854b76ad6bd21b5021d4269bec527b5f","signature":false,"impliedFormat":1},{"version":"1cfa8647d7d71cb03847d616bd79320abfc01ddea082a49569fda71ac5ece66b","signature":false,"impliedFormat":1},{"version":"bb7a61dd55dc4b9422d13da3a6bb9cc5e89be888ef23bbcf6558aa9726b89a1c","signature":false,"impliedFormat":1},{"version":"db6d2d9daad8a6d83f281af12ce4355a20b9a3e71b82b9f57cddcca0a8964a96","signature":false,"impliedFormat":1},{"version":"cfe4ef4710c3786b6e23dae7c086c70b4f4835a2e4d77b75d39f9046106e83d3","signature":false,"impliedFormat":1},{"version":"cbea99888785d49bb630dcbb1613c73727f2b5a2cf02e1abcaab7bcf8d6bf3c5","signature":false,"impliedFormat":1},{"version":"3a8bddb66b659f6bd2ff641fc71df8a8165bafe0f4b799cc298be5cd3755bb20","signature":false,"impliedFormat":1},{"version":"a86f82d646a739041d6702101afa82dcb935c416dd93cbca7fd754fd0282ce1f","signature":false,"impliedFormat":1},{"version":"2dad084c67e649f0f354739ec7df7c7df0779a28a4f55c97c6b6883ae850d1ce","signature":false,"impliedFormat":1},{"version":"fa5bbc7ab4130dd8cdc55ea294ec39f76f2bc507a0f75f4f873e38631a836ca7","signature":false,"impliedFormat":1},{"version":"df45ca1176e6ac211eae7ddf51336dc075c5314bc5c253651bae639defd5eec5","signature":false,"impliedFormat":1},{"version":"cf86de1054b843e484a3c9300d62fbc8c97e77f168bbffb131d560ca0474d4a8","signature":false,"impliedFormat":1},{"version":"196c960b12253fde69b204aa4fbf69470b26daf7a430855d7f94107a16495ab0","signature":false,"impliedFormat":1},{"version":"ee15ea5dd7a9fc9f5013832e5843031817a880bf0f24f37a29fd8337981aae07","signature":false,"impliedFormat":1},{"version":"bf24f6d35f7318e246010ffe9924395893c4e96d34324cde77151a73f078b9ad","signature":false,"impliedFormat":1},{"version":"ea53732769832d0f127ae16620bd5345991d26bf0b74e85e41b61b27d74ea90f","signature":false,"impliedFormat":1},{"version":"10595c7ff5094dd5b6a959ccb1c00e6a06441b4e10a87bc09c15f23755d34439","signature":false,"impliedFormat":1},{"version":"9620c1ff645afb4a9ab4044c85c26676f0a93e8c0e4b593aea03a89ccb47b6d0","signature":false,"impliedFormat":1},{"version":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","signature":false,"impliedFormat":1},{"version":"a9af0e608929aaf9ce96bd7a7b99c9360636c31d73670e4af09a09950df97841","signature":false,"impliedFormat":1},{"version":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","signature":false,"impliedFormat":1},{"version":"c86fe861cf1b4c46a0fb7d74dffe596cf679a2e5e8b1456881313170f092e3fa","signature":false,"impliedFormat":1},{"version":"08ed0b3f0166787f84a6606f80aa3b1388c7518d78912571b203817406e471da","signature":false,"impliedFormat":1},{"version":"47e5af2a841356a961f815e7c55d72554db0c11b4cba4d0caab91f8717846a94","signature":false,"impliedFormat":1},{"version":"65f43099ded6073336e697512d9b80f2d4fec3182b7b2316abf712e84104db00","signature":false,"impliedFormat":1},{"version":"f5f541902bf7ae0512a177295de9b6bcd6809ea38307a2c0a18bfca72212f368","signature":false,"impliedFormat":1},{"version":"b0decf4b6da3ebc52ea0c96095bdfaa8503acc4ac8e9081c5f2b0824835dd3bd","signature":false,"impliedFormat":1},{"version":"ca1b882a105a1972f82cc58e3be491e7d750a1eb074ffd13b198269f57ed9e1b","signature":false,"impliedFormat":1},{"version":"fc3e1c87b39e5ba1142f27ec089d1966da168c04a859a4f6aab64dceae162c2b","signature":false,"impliedFormat":1},{"version":"3b414b99a73171e1c4b7b7714e26b87d6c5cb03d200352da5342ab4088a54c85","signature":false,"impliedFormat":1},{"version":"61888522cec948102eba94d831c873200aa97d00d8989fdfd2a3e0ee75ec65a2","signature":false,"impliedFormat":1},{"version":"4e10622f89fea7b05dd9b52fb65e1e2b5cbd96d4cca3d9e1a60bb7f8a9cb86a1","signature":false,"impliedFormat":1},{"version":"74b2a5e5197bd0f2e0077a1ea7c07455bbea67b87b0869d9786d55104006784f","signature":false,"impliedFormat":1},{"version":"59bf32919de37809e101acffc120596a9e45fdbab1a99de5087f31fdc36e2f11","signature":false,"impliedFormat":1},{"version":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","signature":false,"impliedFormat":1},{"version":"faa03dffb64286e8304a2ca96dd1317a77db6bfc7b3fb385163648f67e535d77","signature":false,"impliedFormat":1},{"version":"c40c848daad198266370c1c72a7a8c3d18d2f50727c7859fcfefd3ff69a7f288","signature":false,"impliedFormat":1},{"version":"ac60bbee0d4235643cc52b57768b22de8c257c12bd8c2039860540cab1fa1d82","signature":false,"impliedFormat":1},{"version":"6428e6edd944ce6789afdf43f9376c1f2e4957eea34166177625aaff4c0da1a0","signature":false,"impliedFormat":1},{"version":"ada39cbb2748ab2873b7835c90c8d4620723aedf323550e8489f08220e477c7f","signature":false,"impliedFormat":1},{"version":"6e5f5cee603d67ee1ba6120815497909b73399842254fc1e77a0d5cdc51d8c9c","signature":false,"impliedFormat":1},{"version":"8dba67056cbb27628e9b9a1cba8e57036d359dceded0725c72a3abe4b6c79cd4","signature":false,"impliedFormat":1},{"version":"70f3814c457f54a7efe2d9ce9d2686de9250bb42eb7f4c539bd2280a42e52d33","signature":false,"impliedFormat":1},{"version":"154dd2e22e1e94d5bc4ff7726706bc0483760bae40506bdce780734f11f7ec47","signature":false,"impliedFormat":1},{"version":"ef61792acbfa8c27c9bd113f02731e66229f7d3a169e3c1993b508134f1a58e0","signature":false,"impliedFormat":1},{"version":"9c82171d836c47486074e4ca8e059735bf97b205e70b196535b5efd40cbe1bc5","signature":false,"impliedFormat":1},{"version":"0131e203d8560edb39678abe10db42564a068f98c4ebd1ed9ffe7279c78b3c81","signature":false,"impliedFormat":1},{"version":"f6404e7837b96da3ea4d38c4f1a3812c96c9dcdf264e93d5bdb199f983a3ef4b","signature":false,"impliedFormat":1},{"version":"c5426dbfc1cf90532f66965a7aa8c1136a78d4d0f96d8180ecbfc11d7722f1a5","signature":false,"impliedFormat":1},{"version":"65a15fc47900787c0bd18b603afb98d33ede930bed1798fc984d5ebb78b26cf9","signature":false,"impliedFormat":1},{"version":"9d202701f6e0744adb6314d03d2eb8fc994798fc83d91b691b75b07626a69801","signature":false,"impliedFormat":1},{"version":"de9d2df7663e64e3a91bf495f315a7577e23ba088f2949d5ce9ec96f44fba37d","signature":false,"impliedFormat":1},{"version":"c7af78a2ea7cb1cd009cfb5bdb48cd0b03dad3b54f6da7aab615c2e9e9d570c5","signature":false,"impliedFormat":1},{"version":"1ee45496b5f8bdee6f7abc233355898e5bf9bd51255db65f5ff7ede617ca0027","signature":false,"impliedFormat":1},{"version":"8b8f00491431fe82f060dfe8c7f2180a9fb239f3d851527db909b83230e75882","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"db01d18853469bcb5601b9fc9826931cc84cc1a1944b33cad76fd6f1e3d8c544","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"dba114fb6a32b355a9cfc26ca2276834d72fe0e94cd2c3494005547025015369","signature":false,"impliedFormat":1},{"version":"903e299a28282fa7b714586e28409ed73c3b63f5365519776bf78e8cf173db36","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"fa6c12a7c0f6b84d512f200690bfc74819e99efae69e4c95c4cd30f6884c526e","signature":false,"impliedFormat":1},{"version":"f1c32f9ce9c497da4dc215c3bc84b722ea02497d35f9134db3bb40a8d918b92b","signature":false,"impliedFormat":1},{"version":"b73c319af2cc3ef8f6421308a250f328836531ea3761823b4cabbd133047aefa","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"e433b0337b8106909e7953015e8fa3f2d30797cea27141d1c5b135365bb975a6","signature":false,"impliedFormat":1},{"version":"dd3900b24a6a8745efeb7ad27629c0f8a626470ac229c1d73f1fe29d67e44dca","signature":false,"impliedFormat":1},{"version":"ddff7fc6edbdc5163a09e22bf8df7bef75f75369ebd7ecea95ba55c4386e2441","signature":false,"impliedFormat":1},{"version":"106c6025f1d99fd468fd8bf6e5bda724e11e5905a4076c5d29790b6c3745e50c","signature":false,"impliedFormat":1},{"version":"ec29be0737d39268696edcec4f5e97ce26f449fa9b7afc2f0f99a86def34a418","signature":false,"impliedFormat":1},{"version":"aeab39e8e0b1a3b250434c3b2bb8f4d17bbec2a9dbce5f77e8a83569d3d2cbc2","signature":false,"impliedFormat":1},{"version":"ec6cba1c02c675e4dd173251b156792e8d3b0c816af6d6ad93f1a55d674591aa","signature":false,"impliedFormat":1},{"version":"b620391fe8060cf9bedc176a4d01366e6574d7a71e0ac0ab344a4e76576fcbb8","signature":false,"impliedFormat":1},{"version":"d729408dfde75b451530bcae944cf89ee8277e2a9df04d1f62f2abfd8b03c1e1","signature":false,"impliedFormat":1},{"version":"e15d3c84d5077bb4a3adee4c791022967b764dc41cb8fa3cfa44d4379b2c95f5","signature":false,"impliedFormat":1},{"version":"5f58e28cd22e8fc1ac1b3bc6b431869f1e7d0b39e2c21fbf79b9fa5195a85980","signature":false,"impliedFormat":1},{"version":"e1fc1a1045db5aa09366be2b330e4ce391550041fc3e925f60998ca0b647aa97","signature":false,"impliedFormat":1},{"version":"63533978dcda286422670f6e184ac516805a365fb37a086eeff4309e812f1402","signature":false,"impliedFormat":1},{"version":"43ba4f2fa8c698f5c304d21a3ef596741e8e85a810b7c1f9b692653791d8d97a","signature":false,"impliedFormat":1},{"version":"31fb49ef3aa3d76f0beb644984e01eab0ea222372ea9b49bb6533be5722d756c","signature":false,"impliedFormat":1},{"version":"33cd131e1461157e3e06b06916b5176e7a8ec3fce15a5cfe145e56de744e07d2","signature":false,"impliedFormat":1},{"version":"889ef863f90f4917221703781d9723278db4122d75596b01c429f7c363562b86","signature":false,"impliedFormat":1},{"version":"3556cfbab7b43da96d15a442ddbb970e1f2fc97876d055b6555d86d7ac57dae5","signature":false,"impliedFormat":1},{"version":"437751e0352c6e924ddf30e90849f1d9eb00ca78c94d58d6a37202ec84eb8393","signature":false,"impliedFormat":1},{"version":"48e8af7fdb2677a44522fd185d8c87deff4d36ee701ea003c6c780b1407a1397","signature":false,"impliedFormat":1},{"version":"d11308de5a36c7015bb73adb5ad1c1bdaac2baede4cc831a05cf85efa3cc7f2f","signature":false,"impliedFormat":1},{"version":"38e4684c22ed9319beda6765bab332c724103d3a966c2e5e1c5a49cf7007845f","signature":false,"impliedFormat":1},{"version":"f9812cfc220ecf7557183379531fa409acd249b9e5b9a145d0d52b76c20862de","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"e650298721abc4f6ae851e60ae93ee8199791ceec4b544c3379862f81f43178c","signature":false,"impliedFormat":1},{"version":"2e4f37ffe8862b14d8e24ae8763daaa8340c0df0b859d9a9733def0eee7562d9","signature":false,"impliedFormat":1},{"version":"13283350547389802aa35d9f2188effaeac805499169a06ef5cd77ce2a0bd63f","signature":false,"impliedFormat":1},{"version":"680793958f6a70a44c8d9ae7d46b7a385361c69ac29dcab3ed761edce1c14ab8","signature":false,"impliedFormat":1},{"version":"6ac6715916fa75a1f7ebdfeacac09513b4d904b667d827b7535e84ff59679aff","signature":false,"impliedFormat":1},{"version":"42c169fb8c2d42f4f668c624a9a11e719d5d07dacbebb63cbcf7ef365b0a75b3","signature":false,"impliedFormat":1},{"version":"913ddbba170240070bd5921b8f33ea780021bdf42fbdfcd4fcb2691b1884ddde","signature":false,"impliedFormat":1},{"version":"b4e6d416466999ff40d3fe5ceb95f7a8bfb7ac2262580287ac1a8391e5362431","signature":false,"impliedFormat":1},{"version":"5fe23bd829e6be57d41929ac374ee9551ccc3c44cee893167b7b5b77be708014","signature":false,"impliedFormat":1},{"version":"0a626484617019fcfbfc3c1bc1f9e84e2913f1adb73692aa9075817404fb41a1","signature":false,"impliedFormat":1},{"version":"438c7513b1df91dcef49b13cd7a1c4720f91a36e88c1df731661608b7c055f10","signature":false,"impliedFormat":1},{"version":"cf185cc4a9a6d397f416dd28cca95c227b29f0f27b160060a95c0e5e36cda865","signature":false,"impliedFormat":1},{"version":"0086f3e4ad898fd7ca56bb223098acfacf3fa065595182aaf0f6c4a6a95e6fbd","signature":false,"impliedFormat":1},{"version":"efaa078e392f9abda3ee8ade3f3762ab77f9c50b184e6883063a911742a4c96a","signature":false,"impliedFormat":1},{"version":"54a8bb487e1dc04591a280e7a673cdfb272c83f61e28d8a64cf1ac2e63c35c51","signature":false,"impliedFormat":1},{"version":"021a9498000497497fd693dd315325484c58a71b5929e2bbb91f419b04b24cea","signature":false,"impliedFormat":1},{"version":"9385cdc09850950bc9b59cca445a3ceb6fcca32b54e7b626e746912e489e535e","signature":false,"impliedFormat":1},{"version":"2894c56cad581928bb37607810af011764a2f511f575d28c9f4af0f2ef02d1ab","signature":false,"impliedFormat":1},{"version":"0a72186f94215d020cb386f7dca81d7495ab6c17066eb07d0f44a5bf33c1b21a","signature":false,"impliedFormat":1},{"version":"84124384abae2f6f66b7fbfc03862d0c2c0b71b826f7dbf42c8085d31f1d3f95","signature":false,"impliedFormat":1},{"version":"63a8e96f65a22604eae82737e409d1536e69a467bb738bec505f4f97cce9d878","signature":false,"impliedFormat":1},{"version":"3fd78152a7031315478f159c6a5872c712ece6f01212c78ea82aef21cb0726e2","signature":false,"impliedFormat":1},{"version":"b01bd582a6e41457bc56e6f0f9de4cb17f33f5f3843a7cf8210ac9c18472fb0f","signature":false,"impliedFormat":1},{"version":"58b49e5c1def740360b5ae22ae2405cfac295fee74abd88d74ac4ea42502dc03","signature":false,"impliedFormat":1},{"version":"512fc15cca3a35b8dbbf6e23fe9d07e6f87ad03c895acffd3087ce09f352aad0","signature":false,"impliedFormat":1},{"version":"9a0946d15a005832e432ea0cd4da71b57797efb25b755cc07f32274296d62355","signature":false,"impliedFormat":1},{"version":"a52ff6c0a149e9f370372fc3c715d7f2beee1f3bab7980e271a7ab7d313ec677","signature":false,"impliedFormat":1},{"version":"fd933f824347f9edd919618a76cdb6a0c0085c538115d9a287fa0c7f59957ab3","signature":false,"impliedFormat":1},{"version":"6ac6715916fa75a1f7ebdfeacac09513b4d904b667d827b7535e84ff59679aff","signature":false,"impliedFormat":1},{"version":"6a1aa3e55bdc50503956c5cd09ae4cd72e3072692d742816f65c66ca14f4dfdd","signature":false,"impliedFormat":1},{"version":"ab75cfd9c4f93ffd601f7ca1753d6a9d953bbedfbd7a5b3f0436ac8a1de60dfa","signature":false,"impliedFormat":1},{"version":"f95180f03d827525ca4f990f49e17ec67198c316dd000afbe564655141f725cd","signature":false,"impliedFormat":1},{"version":"b73cbf0a72c8800cf8f96a9acfe94f3ad32ca71342a8908b8ae484d61113f647","signature":false,"impliedFormat":1},{"version":"bae6dd176832f6423966647382c0d7ba9e63f8c167522f09a982f086cd4e8b23","signature":false,"impliedFormat":1},{"version":"1364f64d2fb03bbb514edc42224abd576c064f89be6a990136774ecdd881a1da","signature":false,"impliedFormat":1},{"version":"c9958eb32126a3843deedda8c22fb97024aa5d6dd588b90af2d7f2bfac540f23","signature":false,"impliedFormat":1},{"version":"950fb67a59be4c2dbe69a5786292e60a5cb0e8612e0e223537784c731af55db1","signature":false,"impliedFormat":1},{"version":"e927c2c13c4eaf0a7f17e6022eee8519eb29ef42c4c13a31e81a611ab8c95577","signature":false,"impliedFormat":1},{"version":"07ca44e8d8288e69afdec7a31fa408ce6ab90d4f3d620006701d5544646da6aa","signature":false,"impliedFormat":1},{"version":"70246ad95ad8a22bdfe806cb5d383a26c0c6e58e7207ab9c431f1cb175aca657","signature":false,"impliedFormat":1},{"version":"f00f3aa5d64ff46e600648b55a79dcd1333458f7a10da2ed594d9f0a44b76d0b","signature":false,"impliedFormat":1},{"version":"772d8d5eb158b6c92412c03228bd9902ccb1457d7a705b8129814a5d1a6308fc","signature":false,"impliedFormat":1},{"version":"4e4475fba4ed93a72f167b061cd94a2e171b82695c56de9899275e880e06ba41","signature":false,"impliedFormat":1},{"version":"97c5f5d580ab2e4decd0a3135204050f9b97cd7908c5a8fbc041eadede79b2fa","signature":false,"impliedFormat":1},{"version":"c99a3a5f2215d5b9d735aa04cec6e61ed079d8c0263248e298ffe4604d4d0624","signature":false,"impliedFormat":1},{"version":"49b2375c586882c3ac7f57eba86680ff9742a8d8cb2fe25fe54d1b9673690d41","signature":false,"impliedFormat":1},{"version":"802e797bcab5663b2c9f63f51bdf67eff7c41bc64c0fd65e6da3e7941359e2f7","signature":false,"impliedFormat":1},{"version":"847e160d709c74cc714fbe1f99c41d3425b74cd47b1be133df1623cd87014089","signature":false,"impliedFormat":1},{"version":"9fee04f1e1afa50524862289b9f0b0fdc3735b80e2a0d684cec3b9ff3d94cecc","signature":false,"impliedFormat":1},{"version":"5cdc27fbc5c166fc5c763a30ac21cbac9859dc5ba795d3230db6d4e52a1965bb","signature":false,"impliedFormat":1},{"version":"6459054aabb306821a043e02b89d54da508e3a6966601a41e71c166e4ea1474f","signature":false,"impliedFormat":1},{"version":"f416c9c3eee9d47ff49132c34f96b9180e50485d435d5748f0e8b72521d28d2e","signature":false,"impliedFormat":1},{"version":"05c97cddbaf99978f83d96de2d8af86aded9332592f08ce4a284d72d0952c391","signature":false,"impliedFormat":1},{"version":"14e5cdec6f8ae82dfd0694e64903a0a54abdfe37e1d966de3d4128362acbf35f","signature":false,"impliedFormat":1},{"version":"bbc183d2d69f4b59fd4dd8799ffdf4eb91173d1c4ad71cce91a3811c021bf80c","signature":false,"impliedFormat":1},{"version":"7b6ff760c8a240b40dab6e4419b989f06a5b782f4710d2967e67c695ef3e93c4","signature":false,"impliedFormat":1},{"version":"8dbc4134a4b3623fc476be5f36de35c40f2768e2e3d9ed437e0d5f1c4cd850f6","signature":false,"impliedFormat":1},{"version":"4e06330a84dec7287f7ebdd64978f41a9f70a668d3b5edc69d5d4a50b9b376bb","signature":false,"impliedFormat":1},{"version":"65bfa72967fbe9fc33353e1ac03f0480aa2e2ea346d61ff3ea997dfd850f641a","signature":false,"impliedFormat":1},{"version":"c06f0bb92d1a1a5a6c6e4b5389a5664d96d09c31673296cb7da5fe945d54d786","signature":false,"impliedFormat":1},{"version":"f974e4a06953682a2c15d5bd5114c0284d5abf8bc0fe4da25cb9159427b70072","signature":false,"impliedFormat":1},{"version":"872caaa31423f4345983d643e4649fb30f548e9883a334d6d1c5fff68ede22d4","signature":false,"impliedFormat":1},{"version":"94404c4a878fe291e7578a2a80264c6f18e9f1933fbb57e48f0eb368672e389c","signature":false,"impliedFormat":1},{"version":"5c1b7f03aa88be854bc15810bfd5bd5a1943c5a7620e1c53eddd2a013996343e","signature":false,"impliedFormat":1},{"version":"09dfc64fcd6a2785867f2368419859a6cc5a8d4e73cbe2538f205b1642eb0f51","signature":false,"impliedFormat":1},{"version":"bcf6f0a323653e72199105a9316d91463ad4744c546d1271310818b8cef7c608","signature":false,"impliedFormat":1},{"version":"01aa917531e116485beca44a14970834687b857757159769c16b228eb1e49c5f","signature":false,"impliedFormat":1},{"version":"351475f9c874c62f9b45b1f0dc7e2704e80dfd5f1af83a3a9f841f9dfe5b2912","signature":false,"impliedFormat":1},{"version":"ac457ad39e531b7649e7b40ee5847606eac64e236efd76c5d12db95bf4eacd17","signature":false,"impliedFormat":1},{"version":"187a6fdbdecb972510b7555f3caacb44b58415da8d5825d03a583c4b73fde4cf","signature":false,"impliedFormat":1},{"version":"d4c3250105a612202289b3a266bb7e323db144f6b9414f9dea85c531c098b811","signature":false,"impliedFormat":1},{"version":"95b444b8c311f2084f0fb51c616163f950fb2e35f4eaa07878f313a2d36c98a4","signature":false,"impliedFormat":1},{"version":"741067675daa6d4334a2dc80a4452ca3850e89d5852e330db7cb2b5f867173b1","signature":false,"impliedFormat":1},{"version":"f8acecec1114f11690956e007d920044799aefeb3cece9e7f4b1f8a1d542b2c9","signature":false,"impliedFormat":1},{"version":"178071ccd043967a58c5d1a032db0ddf9bd139e7920766b537d9783e88eb615e","signature":false,"impliedFormat":1},{"version":"3a17f09634c50cce884721f54fd9e7b98e03ac505889c560876291fcf8a09e90","signature":false,"impliedFormat":1},{"version":"32531dfbb0cdc4525296648f53b2b5c39b64282791e2a8c765712e49e6461046","signature":false,"impliedFormat":1},{"version":"0ce1b2237c1c3df49748d61568160d780d7b26693bd9feb3acb0744a152cd86d","signature":false,"impliedFormat":1},{"version":"e489985388e2c71d3542612685b4a7db326922b57ac880f299da7026a4e8a117","signature":false,"impliedFormat":1},{"version":"5cad4158616d7793296dd41e22e1257440910ea8d01c7b75045d4dfb20c5a41a","signature":false,"impliedFormat":1},{"version":"04d3aad777b6af5bd000bfc409907a159fe77e190b9d368da4ba649cdc28d39e","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"74efc1d6523bd57eb159c18d805db4ead810626bc5bc7002a2c7f483044b2e0f","signature":false,"impliedFormat":1},{"version":"19252079538942a69be1645e153f7dbbc1ef56b4f983c633bf31fe26aeac32cd","signature":false,"impliedFormat":1},{"version":"bc11f3ac00ac060462597add171220aed628c393f2782ac75dd29ff1e0db871c","signature":false,"impliedFormat":1},{"version":"616775f16134fa9d01fc677ad3f76e68c051a056c22ab552c64cc281a9686790","signature":false,"impliedFormat":1},{"version":"65c24a8baa2cca1de069a0ba9fba82a173690f52d7e2d0f1f7542d59d5eb4db0","signature":false,"impliedFormat":1},{"version":"f9fe6af238339a0e5f7563acee3178f51db37f32a2e7c09f85273098cee7ec49","signature":false,"impliedFormat":1},{"version":"3b0b1d352b8d2e47f1c4df4fb0678702aee071155b12ef0185fce9eb4fa4af1e","signature":false,"impliedFormat":1},{"version":"77e71242e71ebf8528c5802993697878f0533db8f2299b4d36aa015bae08a79c","signature":false,"impliedFormat":1},{"version":"a344403e7a7384e0e7093942533d309194ad0a53eca2a3100c0b0ab4d3932773","signature":false,"impliedFormat":1},{"version":"b7fff2d004c5879cae335db8f954eb1d61242d9f2d28515e67902032723caeab","signature":false,"impliedFormat":1},{"version":"5f3dc10ae646f375776b4e028d2bed039a93eebbba105694d8b910feebbe8b9c","signature":false,"impliedFormat":1},{"version":"bb18bf4a61a17b4a6199eb3938ecfa4a59eb7c40843ad4a82b975ab6f7e3d925","signature":false,"impliedFormat":1},{"version":"4545c1a1ceca170d5d83452dd7c4994644c35cf676a671412601689d9a62da35","signature":false,"impliedFormat":1},{"version":"e9b6fc05f536dfddcdc65dbcf04e09391b1c968ab967382e48924f5cb90d88e1","signature":false,"impliedFormat":1},{"version":"a2d648d333cf67b9aeac5d81a1a379d563a8ffa91ddd61c6179f68de724260ff","signature":false,"impliedFormat":1},{"version":"2b664c3cc544d0e35276e1fb2d4989f7d4b4027ffc64da34ec83a6ccf2e5c528","signature":false,"impliedFormat":1},{"version":"a3f41ed1b4f2fc3049394b945a68ae4fdefd49fa1739c32f149d32c0545d67f5","signature":false,"impliedFormat":1},{"version":"3cd8f0464e0939b47bfccbb9bb474a6d87d57210e304029cd8eb59c63a81935d","signature":false,"impliedFormat":1},{"version":"47699512e6d8bebf7be488182427189f999affe3addc1c87c882d36b7f2d0b0e","signature":false,"impliedFormat":1},{"version":"3026abd48e5e312f2328629ede6e0f770d21c3cd32cee705c450e589d015ee09","signature":false,"impliedFormat":1},{"version":"8b140b398a6afbd17cc97c38aea5274b2f7f39b1ae5b62952cfe65bf493e3e75","signature":false,"impliedFormat":1},{"version":"7663d2c19ce5ef8288c790edba3d45af54e58c84f1b37b1249f6d49d962f3d91","signature":false,"impliedFormat":1},{"version":"5cce3b975cdb72b57ae7de745b3c5de5790781ee88bcb41ba142f07c0fa02e97","signature":false,"impliedFormat":1},{"version":"00bd6ebe607246b45296aa2b805bd6a58c859acecda154bfa91f5334d7c175c6","signature":false,"impliedFormat":1},{"version":"ad036a85efcd9e5b4f7dd5c1a7362c8478f9a3b6c3554654ca24a29aa850a9c5","signature":false,"impliedFormat":1},{"version":"fedebeae32c5cdd1a85b4e0504a01996e4a8adf3dfa72876920d3dd6e42978e7","signature":false,"impliedFormat":1},{"version":"0d28b974a7605c4eda20c943b3fa9ae16cb452c1666fc9b8c341b879992c7612","signature":false,"impliedFormat":1},{"version":"cdf21eee8007e339b1b9945abf4a7b44930b1d695cc528459e68a3adc39a622e","signature":false,"impliedFormat":1},{"version":"db036c56f79186da50af66511d37d9fe77fa6793381927292d17f81f787bb195","signature":false,"impliedFormat":1},{"version":"87ac2fb61e629e777f4d161dff534c2023ee15afd9cb3b1589b9b1f014e75c58","signature":false,"impliedFormat":1},{"version":"13c8b4348db91e2f7d694adc17e7438e6776bc506d5c8f5de9ad9989707fa3fe","signature":false,"impliedFormat":1},{"version":"3c1051617aa50b38e9efaabce25e10a5dd9b1f42e372ef0e8a674076a68742ed","signature":false,"impliedFormat":1},{"version":"07a3e20cdcb0f1182f452c0410606711fbea922ca76929a41aacb01104bc0d27","signature":false,"impliedFormat":1},{"version":"1de80059b8078ea5749941c9f863aa970b4735bdbb003be4925c853a8b6b4450","signature":false,"impliedFormat":1},{"version":"1d079c37fa53e3c21ed3fa214a27507bda9991f2a41458705b19ed8c2b61173d","signature":false,"impliedFormat":1},{"version":"4cd4b6b1279e9d744a3825cbd7757bbefe7f0708f3f1069179ad535f19e8ed2c","signature":false,"impliedFormat":1},{"version":"5835a6e0d7cd2738e56b671af0e561e7c1b4fb77751383672f4b009f4e161d70","signature":false,"impliedFormat":1},{"version":"c0eeaaa67c85c3bb6c52b629ebbfd3b2292dc67e8c0ffda2fc6cd2f78dc471e6","signature":false,"impliedFormat":1},{"version":"4b7f74b772140395e7af67c4841be1ab867c11b3b82a51b1aeb692822b76c872","signature":false,"impliedFormat":1},{"version":"27be6622e2922a1b412eb057faa854831b95db9db5035c3f6d4b677b902ab3b7","signature":false,"impliedFormat":1},{"version":"b95a6f019095dd1d48fd04965b50dfd63e5743a6e75478343c46d2582a5132bf","signature":false,"impliedFormat":99},{"version":"c2008605e78208cfa9cd70bd29856b72dda7ad89df5dc895920f8e10bcb9cd0a","signature":false,"impliedFormat":99},{"version":"b97cb5616d2ab82a98ec9ada7b9e9cabb1f5da880ec50ea2b8dc5baa4cbf3c16","signature":false,"impliedFormat":99},{"version":"d23df9ff06ae8bf1dcb7cc933e97ae7da418ac77749fecee758bb43a8d69f840","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"040c71dde2c406f869ad2f41e8d4ce579cc60c8dbe5aa0dd8962ac943b846572","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"3586f5ea3cc27083a17bd5c9059ede9421d587286d5a47f4341a4c2d00e4fa91","signature":false,"impliedFormat":1},{"version":"a6df929821e62f4719551f7955b9f42c0cd53c1370aec2dd322e24196a7dfe33","signature":false,"impliedFormat":1},{"version":"b789bf89eb19c777ed1e956dbad0925ca795701552d22e68fd130a032008b9f9","signature":false,"impliedFormat":1},{"version":"9dd9d642cdb87d4d5b3173217e0c45429b3e47a6f5cf5fb0ead6c644ec5fed01","signature":false},{"version":"3abc57cf86dc493adadc03e206d2efc070bbc9e4f394f9a5c9fa56c467cf724d","signature":false,"affectsGlobalScope":true},{"version":"10ff6f3c0d9b7500d203eb8a4668dab0f3bb5b472fff782b8ec38bd5c8e9b266","signature":false},{"version":"8849c270a045799bc72a03daf90f670b67878f3dfc9ef1c58e15e96dd643bbed","signature":false},{"version":"718bec3ddda3288d62ab9eaa22bd6f4e0bd1df24da5db6f051b2d434c38f78fd","signature":false},{"version":"5b0db3eecb54b662a0df219dbfce655675980715bd48a0010ea3b019d22d2f3b","signature":false},{"version":"5ebad7422ca145829e421ec42eeab0c32bcc0c162204ff1c5ddfe9147f68248a","signature":false},{"version":"8eb784418acc7d4f19daa1562081dafc15068e83b4ecb6ad9261a3399bd5178d","signature":false},{"version":"ed6c9408ae349131ec76a5fcb56ee135c0539e727dedca9dd94bd02908aa28e5","signature":false},{"version":"468befcf257c922cd347e4269478bb5e85aab038419bf95d03d7b790fe31f3a8","signature":false},{"version":"0f84ec980137d904f174aee09c4a08a8a49dae6ab4f94ec781dbb19b241d6a06","signature":false},{"version":"e9a214ed959bf00c2c0ebc1c9969d64b605b8c920fbf67d32544b486feaa0ba8","signature":false},{"version":"3191f65ae3ee3d047c8f29e175ecf390574250dc5f37cca1db96bad08f1f661c","signature":false},{"version":"f2673a1cbb563c41e19f6a5743d75483888892c3c05fc89fab27c86c64f515a3","signature":false},{"version":"6392353adcff7db02a3f5dcacb5637b791dbbcb76125aac3075da2519af9785a","signature":false,"impliedFormat":99},{"version":"1f3952b74b8c766a2e602a0ba2db19d3d872d00bab4e01746c6b7229c585086c","signature":false,"impliedFormat":99},{"version":"e67238b39f3733e91e1000f5abf105c096cf61ca75eb1671086f7ec68689f646","signature":false},{"version":"92ff2ee2addc582f09b4c2cc6d19f7010c1dc46a801493a67e816dad1728a702","signature":false},{"version":"8bd310bf0ef673cb7cf4161acf37b52870a644d54adb3880c9fcc93c8920f44f","signature":false},{"version":"a49f9c839d86efb90ca4d9c244b18fc9b304a0da9e748282b88f2a44b74c09aa","signature":false},{"version":"6b7a42255647e71d24d71ec708e351c10c9a92e2618de13c7ace1c014af83ef1","signature":false},{"version":"2ab5d412ffa57dbca06de472201ddaea1c41b8a515c74667b7059bf334cbb20f","signature":false},{"version":"034d31e472e4e70878fdac24f6314c3355b5b065c3eba828a75f824a83c20341","signature":false},{"version":"3c0c4a0730704889504deb1457bd552134b43f6e2367cfa0d1378b881e779c81","signature":false},{"version":"3913d85082a4eda81a195bacbd18a93aeb39103bf930ad397c69e1f7521ddf8d","signature":false},{"version":"623de97f632c3c7091a19759e01b1764a3a64aac3ae2ea890c410cc37fd4258e","signature":false},{"version":"ba9ca691d5427129c4c651d308fc027aa3bccdb6484ec90f016a4f2a77f9e7b9","signature":false},{"version":"96d14f21b7652903852eef49379d04dbda28c16ed36468f8c9fa08f7c14c9538","signature":false,"impliedFormat":1}],"root":[[410,423],[426,436]],"options":{"allowJs":true,"composite":false,"declarationMap":false,"emitDeclarationOnly":false,"esModuleInterop":true,"jsx":1,"module":99,"skipLibCheck":true,"strict":true,"tsBuildInfoFile":"./.tsbuildinfo"},"referencedMap":[[432,1],[433,2],[430,3],[431,4],[434,5],[435,6],[436,7],[410,8],[363,9],[437,9],[142,10],[143,10],[144,11],[99,12],[145,13],[146,14],[147,15],[94,9],[97,16],[95,9],[96,9],[148,17],[149,18],[150,19],[151,20],[152,21],[153,22],[154,22],[155,23],[156,24],[157,25],[158,26],[100,9],[98,9],[159,27],[160,28],[161,29],[193,30],[162,31],[163,32],[164,33],[165,34],[166,35],[167,36],[168,37],[169,38],[170,39],[171,40],[172,40],[173,41],[174,9],[175,42],[177,43],[176,44],[178,45],[179,46],[180,47],[181,48],[182,49],[183,50],[184,51],[185,52],[186,53],[187,54],[188,55],[189,56],[190,57],[101,9],[102,9],[103,9],[141,58],[191,59],[192,60],[86,9],[198,61],[199,62],[197,63],[195,64],[196,65],[84,9],[87,66],[286,63],[85,9],[425,67],[424,9],[93,68],[366,69],[370,70],[372,71],[219,72],[233,73],[337,74],[265,9],[340,75],[301,76],[310,77],[338,78],[220,79],[264,9],[266,80],[339,81],[240,82],[221,83],[245,82],[234,82],[204,82],[292,84],[293,85],[209,9],[289,86],[294,87],[381,88],[287,87],[382,89],[271,9],[290,90],[394,91],[393,92],[296,87],[392,9],[390,9],[391,93],[291,63],[278,94],[279,95],[288,96],[305,97],[306,98],[295,99],[273,100],[274,101],[385,102],[388,103],[252,104],[251,105],[250,106],[397,63],[249,107],[225,9],[400,9],[403,9],[402,63],[404,108],[200,9],[331,9],[232,109],[202,110],[354,9],[355,9],[357,9],[360,111],[356,9],[358,112],[359,112],[218,9],[231,9],[365,113],[373,114],[377,115],[214,116],[281,117],[280,9],[272,100],[300,118],[298,119],[297,9],[299,9],[304,120],[276,121],[213,122],[238,123],[328,124],[205,125],[212,126],[201,74],[342,127],[352,128],[341,9],[351,129],[239,9],[223,130],[319,131],[318,9],[325,132],[327,133],[320,134],[324,135],[326,132],[323,134],[322,132],[321,134],[261,136],[246,136],[313,137],[247,137],[207,138],[206,9],[317,139],[316,140],[315,141],[314,142],[208,143],[285,144],[302,145],[284,146],[309,147],[311,148],[308,146],[241,143],[194,9],[329,149],[267,150],[303,9],[350,151],[270,152],[345,153],[211,9],[346,154],[348,155],[349,156],[332,9],[344,125],[243,157],[330,158],[353,159],[215,9],[217,9],[222,160],[312,161],[210,162],[216,9],[269,163],[268,164],[224,165],[277,166],[275,167],[226,168],[228,169],[401,9],[227,170],[229,171],[368,9],[367,9],[369,9],[399,9],[230,172],[283,63],[92,9],[307,173],[253,9],[263,174],[242,9],[375,63],[384,175],[260,63],[379,87],[259,176],[362,177],[258,175],[203,9],[386,178],[256,63],[257,63],[248,9],[262,9],[255,179],[254,180],[244,181],[237,99],[347,9],[236,182],[235,9],[371,9],[282,63],[364,183],[83,9],[91,184],[88,63],[89,9],[90,9],[343,185],[336,186],[335,9],[334,187],[333,9],[374,188],[376,189],[378,190],[380,191],[383,192],[409,193],[387,193],[408,194],[389,195],[395,196],[396,197],[398,198],[405,199],[407,9],[406,200],[361,201],[81,9],[82,9],[13,9],[14,9],[16,9],[15,9],[2,9],[17,9],[18,9],[19,9],[20,9],[21,9],[22,9],[23,9],[24,9],[3,9],[25,9],[26,9],[4,9],[27,9],[31,9],[28,9],[29,9],[30,9],[32,9],[33,9],[34,9],[5,9],[35,9],[36,9],[37,9],[38,9],[6,9],[42,9],[39,9],[40,9],[41,9],[43,9],[7,9],[44,9],[49,9],[50,9],[45,9],[46,9],[47,9],[48,9],[8,9],[54,9],[51,9],[52,9],[53,9],[55,9],[9,9],[56,9],[57,9],[58,9],[60,9],[59,9],[61,9],[62,9],[10,9],[63,9],[64,9],[65,9],[11,9],[66,9],[67,9],[68,9],[69,9],[70,9],[1,9],[71,9],[72,9],[12,9],[76,9],[74,9],[79,9],[78,9],[73,9],[77,9],[75,9],[80,9],[119,202],[129,203],[118,202],[139,204],[110,205],[109,206],[138,200],[132,207],[137,208],[112,209],[126,210],[111,211],[135,212],[107,213],[106,200],[136,214],[108,215],[113,216],[114,9],[117,216],[104,9],[140,217],[130,218],[121,219],[122,220],[124,221],[120,222],[123,223],[133,200],[115,224],[116,225],[125,226],[105,227],[128,218],[127,216],[131,9],[134,228],[412,229],[421,230],[416,231],[420,232],[422,233],[423,234],[429,235],[427,236],[426,236],[417,237],[428,236],[419,237],[418,237],[413,63],[414,9],[415,9],[411,9]],"changeFileSet":[432,433,430,431,434,435,436,410,363,437,142,143,144,99,145,146,147,94,97,95,96,148,149,150,151,152,153,154,155,156,157,158,100,98,159,160,161,193,162,163,164,165,166,167,168,169,170,171,172,173,174,175,177,176,178,179,180,181,182,183,184,185,186,187,188,189,190,101,102,103,141,191,192,86,198,199,197,195,196,84,87,286,85,425,424,93,366,370,372,219,233,337,265,340,301,310,338,220,264,266,339,240,221,245,234,204,292,293,209,289,294,381,287,382,271,290,394,393,296,392,390,391,291,278,279,288,305,306,295,273,274,385,388,252,251,250,397,249,225,400,403,402,404,200,331,232,202,354,355,357,360,356,358,359,218,231,365,373,377,214,281,280,272,300,298,297,299,304,276,213,238,328,205,212,201,342,352,341,351,239,223,319,318,325,327,320,324,326,323,322,321,261,246,313,247,207,206,317,316,315,314,208,285,302,284,309,311,308,241,194,329,267,303,350,270,345,211,346,348,349,332,344,243,330,353,215,217,222,312,210,216,269,268,224,277,275,226,228,401,227,229,368,367,369,399,230,283,92,307,253,263,242,375,384,260,379,259,362,258,203,386,256,257,248,262,255,254,244,237,347,236,235,371,282,364,83,91,88,89,90,343,336,335,334,333,374,376,378,380,383,409,387,408,389,395,396,398,405,407,406,361,81,82,13,14,16,15,2,17,18,19,20,21,22,23,24,3,25,26,4,27,31,28,29,30,32,33,34,5,35,36,37,38,6,42,39,40,41,43,7,44,49,50,45,46,47,48,8,54,51,52,53,55,9,56,57,58,60,59,61,62,10,63,64,65,11,66,67,68,69,70,1,71,72,12,76,74,79,78,73,77,75,80,119,129,118,139,110,109,138,132,137,112,126,111,135,107,106,136,108,113,114,117,104,140,130,121,122,124,120,123,133,115,116,125,105,128,127,131,134,412,421,416,420,422,423,429,427,426,417,428,419,418,413,414,415,411],"version":"5.9.3"} \ No newline at end of file +{"fileNames":["../../node_modules/typescript/lib/lib.es5.d.ts","../../node_modules/typescript/lib/lib.es2015.d.ts","../../node_modules/typescript/lib/lib.es2016.d.ts","../../node_modules/typescript/lib/lib.es2017.d.ts","../../node_modules/typescript/lib/lib.es2018.d.ts","../../node_modules/typescript/lib/lib.es2019.d.ts","../../node_modules/typescript/lib/lib.es2020.d.ts","../../node_modules/typescript/lib/lib.es2021.d.ts","../../node_modules/typescript/lib/lib.es2022.d.ts","../../node_modules/typescript/lib/lib.es2023.d.ts","../../node_modules/typescript/lib/lib.es2024.d.ts","../../node_modules/typescript/lib/lib.esnext.d.ts","../../node_modules/typescript/lib/lib.dom.d.ts","../../node_modules/typescript/lib/lib.dom.iterable.d.ts","../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../node_modules/typescript/lib/lib.es2016.intl.d.ts","../../node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../node_modules/typescript/lib/lib.es2017.date.d.ts","../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../node_modules/typescript/lib/lib.es2021.intl.d.ts","../../node_modules/typescript/lib/lib.es2022.array.d.ts","../../node_modules/typescript/lib/lib.es2022.error.d.ts","../../node_modules/typescript/lib/lib.es2022.intl.d.ts","../../node_modules/typescript/lib/lib.es2022.object.d.ts","../../node_modules/typescript/lib/lib.es2022.string.d.ts","../../node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../node_modules/typescript/lib/lib.es2023.array.d.ts","../../node_modules/typescript/lib/lib.es2023.collection.d.ts","../../node_modules/typescript/lib/lib.es2023.intl.d.ts","../../node_modules/typescript/lib/lib.es2024.arraybuffer.d.ts","../../node_modules/typescript/lib/lib.es2024.collection.d.ts","../../node_modules/typescript/lib/lib.es2024.object.d.ts","../../node_modules/typescript/lib/lib.es2024.promise.d.ts","../../node_modules/typescript/lib/lib.es2024.regexp.d.ts","../../node_modules/typescript/lib/lib.es2024.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2024.string.d.ts","../../node_modules/typescript/lib/lib.esnext.array.d.ts","../../node_modules/typescript/lib/lib.esnext.collection.d.ts","../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../node_modules/typescript/lib/lib.esnext.disposable.d.ts","../../node_modules/typescript/lib/lib.esnext.promise.d.ts","../../node_modules/typescript/lib/lib.esnext.decorators.d.ts","../../node_modules/typescript/lib/lib.esnext.iterator.d.ts","../../node_modules/typescript/lib/lib.esnext.float16.d.ts","../../node_modules/typescript/lib/lib.esnext.error.d.ts","../../node_modules/typescript/lib/lib.esnext.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.decorators.d.ts","../../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../node_modules/next/dist/styled-jsx/types/css.d.ts","../../node_modules/@types/react/global.d.ts","../../node_modules/csstype/index.d.ts","../../node_modules/@types/prop-types/index.d.ts","../../node_modules/@types/react/index.d.ts","../../node_modules/next/dist/styled-jsx/types/index.d.ts","../../node_modules/next/dist/styled-jsx/types/macro.d.ts","../../node_modules/next/dist/styled-jsx/types/style.d.ts","../../node_modules/next/dist/styled-jsx/types/global.d.ts","../../node_modules/next/dist/shared/lib/amp.d.ts","../../node_modules/next/amp.d.ts","../../node_modules/@types/node/compatibility/disposable.d.ts","../../node_modules/@types/node/compatibility/indexable.d.ts","../../node_modules/@types/node/compatibility/iterators.d.ts","../../node_modules/@types/node/compatibility/index.d.ts","../../node_modules/@types/node/globals.typedarray.d.ts","../../node_modules/@types/node/buffer.buffer.d.ts","../../node_modules/@types/node/globals.d.ts","../../node_modules/@types/node/web-globals/abortcontroller.d.ts","../../node_modules/@types/node/web-globals/domexception.d.ts","../../node_modules/@types/node/web-globals/events.d.ts","../../node_modules/undici-types/header.d.ts","../../node_modules/undici-types/readable.d.ts","../../node_modules/undici-types/file.d.ts","../../node_modules/undici-types/fetch.d.ts","../../node_modules/undici-types/formdata.d.ts","../../node_modules/undici-types/connector.d.ts","../../node_modules/undici-types/client.d.ts","../../node_modules/undici-types/errors.d.ts","../../node_modules/undici-types/dispatcher.d.ts","../../node_modules/undici-types/global-dispatcher.d.ts","../../node_modules/undici-types/global-origin.d.ts","../../node_modules/undici-types/pool-stats.d.ts","../../node_modules/undici-types/pool.d.ts","../../node_modules/undici-types/handlers.d.ts","../../node_modules/undici-types/balanced-pool.d.ts","../../node_modules/undici-types/agent.d.ts","../../node_modules/undici-types/mock-interceptor.d.ts","../../node_modules/undici-types/mock-agent.d.ts","../../node_modules/undici-types/mock-client.d.ts","../../node_modules/undici-types/mock-pool.d.ts","../../node_modules/undici-types/mock-errors.d.ts","../../node_modules/undici-types/proxy-agent.d.ts","../../node_modules/undici-types/env-http-proxy-agent.d.ts","../../node_modules/undici-types/retry-handler.d.ts","../../node_modules/undici-types/retry-agent.d.ts","../../node_modules/undici-types/api.d.ts","../../node_modules/undici-types/interceptors.d.ts","../../node_modules/undici-types/util.d.ts","../../node_modules/undici-types/cookies.d.ts","../../node_modules/undici-types/patch.d.ts","../../node_modules/undici-types/websocket.d.ts","../../node_modules/undici-types/eventsource.d.ts","../../node_modules/undici-types/filereader.d.ts","../../node_modules/undici-types/diagnostics-channel.d.ts","../../node_modules/undici-types/content-type.d.ts","../../node_modules/undici-types/cache.d.ts","../../node_modules/undici-types/index.d.ts","../../node_modules/@types/node/web-globals/fetch.d.ts","../../node_modules/@types/node/assert.d.ts","../../node_modules/@types/node/assert/strict.d.ts","../../node_modules/@types/node/async_hooks.d.ts","../../node_modules/@types/node/buffer.d.ts","../../node_modules/@types/node/child_process.d.ts","../../node_modules/@types/node/cluster.d.ts","../../node_modules/@types/node/console.d.ts","../../node_modules/@types/node/constants.d.ts","../../node_modules/@types/node/crypto.d.ts","../../node_modules/@types/node/dgram.d.ts","../../node_modules/@types/node/diagnostics_channel.d.ts","../../node_modules/@types/node/dns.d.ts","../../node_modules/@types/node/dns/promises.d.ts","../../node_modules/@types/node/domain.d.ts","../../node_modules/@types/node/events.d.ts","../../node_modules/@types/node/fs.d.ts","../../node_modules/@types/node/fs/promises.d.ts","../../node_modules/@types/node/http.d.ts","../../node_modules/@types/node/http2.d.ts","../../node_modules/@types/node/https.d.ts","../../node_modules/@types/node/inspector.generated.d.ts","../../node_modules/@types/node/module.d.ts","../../node_modules/@types/node/net.d.ts","../../node_modules/@types/node/os.d.ts","../../node_modules/@types/node/path.d.ts","../../node_modules/@types/node/perf_hooks.d.ts","../../node_modules/@types/node/process.d.ts","../../node_modules/@types/node/punycode.d.ts","../../node_modules/@types/node/querystring.d.ts","../../node_modules/@types/node/readline.d.ts","../../node_modules/@types/node/readline/promises.d.ts","../../node_modules/@types/node/repl.d.ts","../../node_modules/@types/node/sea.d.ts","../../node_modules/@types/node/stream.d.ts","../../node_modules/@types/node/stream/promises.d.ts","../../node_modules/@types/node/stream/consumers.d.ts","../../node_modules/@types/node/stream/web.d.ts","../../node_modules/@types/node/string_decoder.d.ts","../../node_modules/@types/node/test.d.ts","../../node_modules/@types/node/timers.d.ts","../../node_modules/@types/node/timers/promises.d.ts","../../node_modules/@types/node/tls.d.ts","../../node_modules/@types/node/trace_events.d.ts","../../node_modules/@types/node/tty.d.ts","../../node_modules/@types/node/url.d.ts","../../node_modules/@types/node/util.d.ts","../../node_modules/@types/node/v8.d.ts","../../node_modules/@types/node/vm.d.ts","../../node_modules/@types/node/wasi.d.ts","../../node_modules/@types/node/worker_threads.d.ts","../../node_modules/@types/node/zlib.d.ts","../../node_modules/@types/node/index.d.ts","../../node_modules/next/dist/server/get-page-files.d.ts","../../node_modules/@types/react/canary.d.ts","../../node_modules/@types/react/experimental.d.ts","../../node_modules/@types/react-dom/index.d.ts","../../node_modules/@types/react-dom/canary.d.ts","../../node_modules/@types/react-dom/experimental.d.ts","../../node_modules/next/dist/compiled/webpack/webpack.d.ts","../../node_modules/next/dist/server/config.d.ts","../../node_modules/next/dist/lib/load-custom-routes.d.ts","../../node_modules/next/dist/shared/lib/image-config.d.ts","../../node_modules/next/dist/build/webpack/plugins/subresource-integrity-plugin.d.ts","../../node_modules/next/dist/server/body-streams.d.ts","../../node_modules/next/dist/server/future/route-kind.d.ts","../../node_modules/next/dist/server/future/route-definitions/route-definition.d.ts","../../node_modules/next/dist/server/future/route-matches/route-match.d.ts","../../node_modules/next/dist/client/components/app-router-headers.d.ts","../../node_modules/next/dist/server/request-meta.d.ts","../../node_modules/next/dist/server/lib/revalidate.d.ts","../../node_modules/next/dist/server/config-shared.d.ts","../../node_modules/next/dist/server/base-http/index.d.ts","../../node_modules/next/dist/server/api-utils/index.d.ts","../../node_modules/next/dist/server/node-environment.d.ts","../../node_modules/next/dist/server/require-hook.d.ts","../../node_modules/next/dist/server/node-polyfill-crypto.d.ts","../../node_modules/next/dist/lib/page-types.d.ts","../../node_modules/next/dist/build/analysis/get-page-static-info.d.ts","../../node_modules/next/dist/build/webpack/loaders/get-module-build-info.d.ts","../../node_modules/next/dist/build/webpack/plugins/middleware-plugin.d.ts","../../node_modules/next/dist/server/render-result.d.ts","../../node_modules/next/dist/server/future/helpers/i18n-provider.d.ts","../../node_modules/next/dist/server/web/next-url.d.ts","../../node_modules/next/dist/compiled/@edge-runtime/cookies/index.d.ts","../../node_modules/next/dist/server/web/spec-extension/cookies.d.ts","../../node_modules/next/dist/server/web/spec-extension/request.d.ts","../../node_modules/next/dist/server/web/spec-extension/fetch-event.d.ts","../../node_modules/next/dist/server/web/spec-extension/response.d.ts","../../node_modules/next/dist/server/web/types.d.ts","../../node_modules/next/dist/lib/setup-exception-listeners.d.ts","../../node_modules/next/dist/lib/constants.d.ts","../../node_modules/next/dist/build/index.d.ts","../../node_modules/next/dist/build/webpack/plugins/pages-manifest-plugin.d.ts","../../node_modules/next/dist/shared/lib/router/utils/route-regex.d.ts","../../node_modules/next/dist/shared/lib/router/utils/route-matcher.d.ts","../../node_modules/next/dist/shared/lib/router/utils/parse-url.d.ts","../../node_modules/next/dist/server/base-http/node.d.ts","../../node_modules/next/dist/server/font-utils.d.ts","../../node_modules/next/dist/build/webpack/plugins/flight-manifest-plugin.d.ts","../../node_modules/next/dist/server/future/route-modules/route-module.d.ts","../../node_modules/next/dist/shared/lib/deep-readonly.d.ts","../../node_modules/next/dist/server/load-components.d.ts","../../node_modules/next/dist/shared/lib/router/utils/middleware-route-matcher.d.ts","../../node_modules/next/dist/build/webpack/plugins/next-font-manifest-plugin.d.ts","../../node_modules/next/dist/server/future/route-definitions/locale-route-definition.d.ts","../../node_modules/next/dist/server/future/route-definitions/pages-route-definition.d.ts","../../node_modules/next/dist/shared/lib/mitt.d.ts","../../node_modules/next/dist/client/with-router.d.ts","../../node_modules/next/dist/client/router.d.ts","../../node_modules/next/dist/client/route-loader.d.ts","../../node_modules/next/dist/client/page-loader.d.ts","../../node_modules/next/dist/shared/lib/bloom-filter.d.ts","../../node_modules/next/dist/shared/lib/router/router.d.ts","../../node_modules/next/dist/shared/lib/router-context.shared-runtime.d.ts","../../node_modules/next/dist/shared/lib/loadable-context.shared-runtime.d.ts","../../node_modules/next/dist/shared/lib/loadable.shared-runtime.d.ts","../../node_modules/next/dist/shared/lib/image-config-context.shared-runtime.d.ts","../../node_modules/next/dist/shared/lib/hooks-client-context.shared-runtime.d.ts","../../node_modules/next/dist/shared/lib/head-manager-context.shared-runtime.d.ts","../../node_modules/next/dist/server/future/route-definitions/app-page-route-definition.d.ts","../../node_modules/next/dist/shared/lib/modern-browserslist-target.d.ts","../../node_modules/next/dist/shared/lib/constants.d.ts","../../node_modules/next/dist/build/webpack/loaders/metadata/types.d.ts","../../node_modules/next/dist/build/page-extensions-type.d.ts","../../node_modules/next/dist/build/webpack/loaders/next-app-loader.d.ts","../../node_modules/next/dist/server/lib/app-dir-module.d.ts","../../node_modules/next/dist/server/response-cache/types.d.ts","../../node_modules/next/dist/server/response-cache/index.d.ts","../../node_modules/next/dist/server/lib/incremental-cache/index.d.ts","../../node_modules/next/dist/client/components/hooks-server-context.d.ts","../../node_modules/next/dist/server/app-render/dynamic-rendering.d.ts","../../node_modules/next/dist/client/components/static-generation-async-storage-instance.d.ts","../../node_modules/next/dist/client/components/static-generation-async-storage.external.d.ts","../../node_modules/next/dist/server/web/spec-extension/adapters/request-cookies.d.ts","../../node_modules/next/dist/server/async-storage/draft-mode-provider.d.ts","../../node_modules/next/dist/server/web/spec-extension/adapters/headers.d.ts","../../node_modules/next/dist/client/components/request-async-storage-instance.d.ts","../../node_modules/next/dist/client/components/request-async-storage.external.d.ts","../../node_modules/next/dist/server/app-render/create-error-handler.d.ts","../../node_modules/next/dist/server/app-render/app-render.d.ts","../../node_modules/next/dist/shared/lib/server-inserted-html.shared-runtime.d.ts","../../node_modules/next/dist/shared/lib/amp-context.shared-runtime.d.ts","../../node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/entrypoints.d.ts","../../node_modules/next/dist/server/future/route-modules/app-page/module.compiled.d.ts","../../node_modules/@types/react/jsx-runtime.d.ts","../../node_modules/next/dist/client/components/error-boundary.d.ts","../../node_modules/next/dist/client/components/router-reducer/create-initial-router-state.d.ts","../../node_modules/next/dist/client/components/app-router.d.ts","../../node_modules/next/dist/client/components/layout-router.d.ts","../../node_modules/next/dist/client/components/render-from-template-context.d.ts","../../node_modules/next/dist/client/components/action-async-storage-instance.d.ts","../../node_modules/next/dist/client/components/action-async-storage.external.d.ts","../../node_modules/next/dist/client/components/client-page.d.ts","../../node_modules/next/dist/client/components/search-params.d.ts","../../node_modules/next/dist/client/components/not-found-boundary.d.ts","../../node_modules/next/dist/server/app-render/rsc/preloads.d.ts","../../node_modules/next/dist/server/app-render/rsc/postpone.d.ts","../../node_modules/next/dist/server/app-render/rsc/taint.d.ts","../../node_modules/next/dist/server/app-render/entry-base.d.ts","../../node_modules/next/dist/build/templates/app-page.d.ts","../../node_modules/next/dist/server/future/route-modules/app-page/module.d.ts","../../node_modules/next/dist/server/lib/builtin-request-context.d.ts","../../node_modules/next/dist/server/app-render/types.d.ts","../../node_modules/next/dist/client/components/router-reducer/fetch-server-response.d.ts","../../node_modules/next/dist/client/components/router-reducer/router-reducer-types.d.ts","../../node_modules/next/dist/shared/lib/app-router-context.shared-runtime.d.ts","../../node_modules/next/dist/server/future/route-modules/pages/vendored/contexts/entrypoints.d.ts","../../node_modules/next/dist/server/future/route-modules/pages/module.compiled.d.ts","../../node_modules/next/dist/build/templates/pages.d.ts","../../node_modules/next/dist/server/future/route-modules/pages/module.d.ts","../../node_modules/next/dist/server/render.d.ts","../../node_modules/next/dist/server/future/route-definitions/pages-api-route-definition.d.ts","../../node_modules/next/dist/server/future/route-matches/pages-api-route-match.d.ts","../../node_modules/next/dist/server/future/route-matchers/route-matcher.d.ts","../../node_modules/next/dist/server/future/route-matcher-providers/route-matcher-provider.d.ts","../../node_modules/next/dist/server/future/route-matcher-managers/route-matcher-manager.d.ts","../../node_modules/next/dist/server/future/normalizers/normalizer.d.ts","../../node_modules/next/dist/server/future/normalizers/locale-route-normalizer.d.ts","../../node_modules/next/dist/server/future/normalizers/request/pathname-normalizer.d.ts","../../node_modules/next/dist/server/future/normalizers/request/suffix.d.ts","../../node_modules/next/dist/server/future/normalizers/request/rsc.d.ts","../../node_modules/next/dist/server/future/normalizers/request/prefix.d.ts","../../node_modules/next/dist/server/future/normalizers/request/postponed.d.ts","../../node_modules/next/dist/server/future/normalizers/request/action.d.ts","../../node_modules/next/dist/server/future/normalizers/request/prefetch-rsc.d.ts","../../node_modules/next/dist/server/future/normalizers/request/next-data.d.ts","../../node_modules/next/dist/server/base-server.d.ts","../../node_modules/next/dist/server/image-optimizer.d.ts","../../node_modules/next/dist/server/next-server.d.ts","../../node_modules/next/dist/lib/coalesced-function.d.ts","../../node_modules/next/dist/server/lib/router-utils/types.d.ts","../../node_modules/next/dist/trace/types.d.ts","../../node_modules/next/dist/trace/trace.d.ts","../../node_modules/next/dist/trace/shared.d.ts","../../node_modules/next/dist/trace/index.d.ts","../../node_modules/next/dist/build/load-jsconfig.d.ts","../../node_modules/next/dist/build/webpack-config.d.ts","../../node_modules/next/dist/build/webpack/plugins/define-env-plugin.d.ts","../../node_modules/next/dist/build/swc/index.d.ts","../../node_modules/next/dist/server/dev/parse-version-info.d.ts","../../node_modules/next/dist/server/dev/hot-reloader-types.d.ts","../../node_modules/next/dist/telemetry/storage.d.ts","../../node_modules/next/dist/server/lib/types.d.ts","../../node_modules/next/dist/server/lib/render-server.d.ts","../../node_modules/next/dist/server/lib/router-server.d.ts","../../node_modules/next/dist/shared/lib/router/utils/path-match.d.ts","../../node_modules/next/dist/server/lib/router-utils/filesystem.d.ts","../../node_modules/next/dist/server/lib/router-utils/setup-dev-bundler.d.ts","../../node_modules/next/dist/server/lib/dev-bundler-service.d.ts","../../node_modules/next/dist/server/dev/static-paths-worker.d.ts","../../node_modules/next/dist/server/dev/next-dev-server.d.ts","../../node_modules/next/dist/server/next.d.ts","../../node_modules/next/dist/lib/metadata/types/alternative-urls-types.d.ts","../../node_modules/next/dist/lib/metadata/types/extra-types.d.ts","../../node_modules/next/dist/lib/metadata/types/metadata-types.d.ts","../../node_modules/next/dist/lib/metadata/types/manifest-types.d.ts","../../node_modules/next/dist/lib/metadata/types/opengraph-types.d.ts","../../node_modules/next/dist/lib/metadata/types/twitter-types.d.ts","../../node_modules/next/dist/lib/metadata/types/metadata-interface.d.ts","../../node_modules/next/types/index.d.ts","../../node_modules/next/dist/shared/lib/html-context.shared-runtime.d.ts","../../node_modules/@next/env/dist/index.d.ts","../../node_modules/next/dist/shared/lib/utils.d.ts","../../node_modules/next/dist/pages/_app.d.ts","../../node_modules/next/app.d.ts","../../node_modules/next/dist/server/web/spec-extension/unstable-cache.d.ts","../../node_modules/next/dist/server/web/spec-extension/revalidate.d.ts","../../node_modules/next/dist/server/web/spec-extension/unstable-no-store.d.ts","../../node_modules/next/cache.d.ts","../../node_modules/next/dist/shared/lib/runtime-config.external.d.ts","../../node_modules/next/config.d.ts","../../node_modules/next/dist/pages/_document.d.ts","../../node_modules/next/document.d.ts","../../node_modules/next/dist/shared/lib/dynamic.d.ts","../../node_modules/next/dynamic.d.ts","../../node_modules/next/dist/pages/_error.d.ts","../../node_modules/next/error.d.ts","../../node_modules/next/dist/shared/lib/head.d.ts","../../node_modules/next/head.d.ts","../../node_modules/next/dist/client/components/draft-mode.d.ts","../../node_modules/next/dist/client/components/headers.d.ts","../../node_modules/next/headers.d.ts","../../node_modules/next/dist/shared/lib/get-img-props.d.ts","../../node_modules/next/dist/client/image-component.d.ts","../../node_modules/next/dist/shared/lib/image-external.d.ts","../../node_modules/next/image.d.ts","../../node_modules/next/dist/client/link.d.ts","../../node_modules/next/link.d.ts","../../node_modules/next/dist/client/components/redirect-status-code.d.ts","../../node_modules/next/dist/client/components/redirect.d.ts","../../node_modules/next/dist/client/components/not-found.d.ts","../../node_modules/next/dist/client/components/navigation.react-server.d.ts","../../node_modules/next/dist/client/components/navigation.d.ts","../../node_modules/next/navigation.d.ts","../../node_modules/next/router.d.ts","../../node_modules/next/dist/client/script.d.ts","../../node_modules/next/script.d.ts","../../node_modules/next/dist/server/web/spec-extension/user-agent.d.ts","../../node_modules/next/dist/compiled/@edge-runtime/primitives/url.d.ts","../../node_modules/next/dist/server/web/spec-extension/image-response.d.ts","../../node_modules/next/dist/compiled/@vercel/og/satori/index.d.ts","../../node_modules/next/dist/compiled/@vercel/og/emoji/index.d.ts","../../node_modules/next/dist/compiled/@vercel/og/types.d.ts","../../node_modules/next/server.d.ts","../../node_modules/next/types/global.d.ts","../../node_modules/next/types/compiled.d.ts","../../node_modules/next/index.d.ts","../../node_modules/next/image-types/global.d.ts","../../next-env.d.ts","../../tailwind.config.ts","../../src/app/api/chat/stream/route.ts","../../src/hooks/use-websocket.ts","../../src/lib/api.ts","../../src/lib/utils.ts","../../src/hooks/use-auth.tsx","../../src/components/auth-guard.tsx","../../src/components/change-password-dialog.tsx","../../src/components/user-menu.tsx","../../src/components/nav.tsx","../../src/app/layout.tsx","../../src/components/market-temp.tsx","../../src/components/stock-card.tsx","../../src/components/sector-heatmap.tsx","../../src/app/page.tsx","../../src/app/chat/page.tsx","../../src/app/login/page.tsx","../../src/app/recommendations/page.tsx","../../src/app/sectors/page.tsx","../../node_modules/echarts/types/dist/echarts.d.ts","../../node_modules/echarts/index.d.ts","../../src/components/kline-chart.tsx","../../src/components/capital-flow.tsx","../../src/components/score-radar.tsx","../../src/app/stock/[code]/page.tsx","../../src/app/users/page.tsx","../types/app/page.ts","../types/app/api/chat/stream/route.ts","../types/app/chat/page.ts","../types/app/login/page.ts","../types/app/recommendations/page.ts","../types/app/sectors/page.ts","../types/app/stock/[code]/page.ts","../types/app/users/page.ts","../../node_modules/@types/json5/index.d.ts"],"fileIdsList":[[99,145,405,412],[99,145,360,426],[99,145,360,427],[99,145,360,425],[99,145,360,428],[99,145,360,429],[99,145,360,435],[99,145,360,436],[99,145,408,409],[99,145],[99,142,145],[99,144,145],[145],[99,145,150,178],[99,145,146,151,156,164,175,186],[99,145,146,147,156,164],[94,95,96,99,145],[99,145,148,187],[99,145,149,150,157,165],[99,145,150,175,183],[99,145,151,153,156,164],[99,144,145,152],[99,145,153,154],[99,145,155,156],[99,144,145,156],[99,145,156,157,158,175,186],[99,145,156,157,158,171,175,178],[99,145,153,156,159,164,175,186],[99,145,156,157,159,160,164,175,183,186],[99,145,159,161,175,183,186],[97,98,99,100,101,102,103,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192],[99,145,156,162],[99,145,163,186,191],[99,145,153,156,164,175],[99,145,165],[99,145,166],[99,144,145,167],[99,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192],[99,145,169],[99,145,170],[99,145,156,171,172],[99,145,171,173,187,189],[99,145,156,175,176,178],[99,145,177,178],[99,145,175,176],[99,145,178],[99,145,179],[99,142,145,175,180],[99,145,156,181,182],[99,145,181,182],[99,145,150,164,175,183],[99,145,184],[99,145,164,185],[99,145,159,170,186],[99,145,150,187],[99,145,175,188],[99,145,163,189],[99,145,190],[99,140,145],[99,140,145,156,158,167,175,178,186,189,191],[99,145,175,192],[87,99,145,197,198,199],[87,99,145,197,198],[87,99,145],[87,91,99,145,196,361,404],[87,91,99,145,195,361,404],[84,85,86,99,145],[99,145,430],[92,99,145],[99,145,365],[99,145,367,368,369],[99,145,371],[99,145,202,212,218,220,361],[99,145,202,209,211,214,232],[99,145,212],[99,145,212,214,339],[99,145,267,285,300,407],[99,145,309],[99,145,202,212,219,253,263,336,337,407],[99,145,219,407],[99,145,212,263,264,265,407],[99,145,212,219,253,407],[99,145,407],[99,145,202,219,220,407],[99,145,293],[99,144,145,193,292],[87,99,145,286,287,288,306,307],[87,99,145,286],[99,145,276],[99,145,275,277,381],[87,99,145,286,287,304],[99,145,282,307,393],[99,145,391,392],[99,145,226,390],[99,145,279],[99,144,145,193,226,242,275,276,277,278],[87,99,145,304,306,307],[99,145,304,306],[99,145,304,305,307],[99,145,170,193],[99,145,274],[99,144,145,193,211,213,270,271,272,273],[87,99,145,203,384],[87,99,145,186,193],[87,99,145,219,251],[87,99,145,219],[99,145,249,254],[87,99,145,250,364],[87,91,99,145,159,193,195,196,361,402,403],[99,145,361],[99,145,201],[99,145,354,355,356,357,358,359],[99,145,356],[87,99,145,250,286,364],[87,99,145,286,362,364],[87,99,145,286,364],[99,145,159,193,213,364],[99,145,159,193,210,211,222,240,242,274,279,280,302,304],[99,145,271,274,279,287,289,290,291,293,294,295,296,297,298,299,407],[99,145,272],[87,99,145,170,193,211,212,240,242,243,245,270,302,303,307,361,407],[99,145,159,193,213,214,226,227,275],[99,145,159,193,212,214],[99,145,159,175,193,210,213,214],[99,145,159,170,186,193,210,211,212,213,214,219,222,223,233,234,236,239,240,242,243,244,245,269,270,303,304,312,314,317,319,322,324,325,326,327],[99,145,159,175,193],[99,145,202,203,204,210,211,361,364,407],[99,145,159,175,186,193,207,338,340,341,407],[99,145,170,186,193,207,210,213,230,234,236,237,238,243,270,317,328,330,336,350,351],[99,145,212,216,270],[99,145,210,212],[99,145,223,318],[99,145,320,321],[99,145,320],[99,145,318],[99,145,320,323],[99,145,206,207],[99,145,206,246],[99,145,206],[99,145,208,223,316],[99,145,315],[99,145,207,208],[99,145,208,313],[99,145,207],[99,145,302],[99,145,159,193,210,222,241,261,267,281,284,301,304],[99,145,255,256,257,258,259,260,282,283,307,362],[99,145,311],[99,145,159,193,210,222,241,247,308,310,312,361,364],[99,145,159,186,193,203,210,212,269],[99,145,266],[99,145,159,193,344,349],[99,145,233,242,269,364],[99,145,332,336,350,353],[99,145,159,216,336,344,345,353],[99,145,202,212,233,244,347],[99,145,159,193,212,219,244,331,332,342,343,346,348],[99,145,194,240,241,242,361,364],[99,145,159,170,186,193,208,210,211,213,216,221,222,230,233,234,236,237,238,239,243,245,269,270,314,328,329,364],[99,145,159,193,210,212,216,330,352],[99,145,159,193,211,213],[87,99,145,159,170,193,201,203,210,211,214,222,239,240,242,243,245,311,361,364],[99,145,159,170,186,193,205,208,209,213],[99,145,206,268],[99,145,159,193,206,211,222],[99,145,159,193,212,223],[99,145,159,193],[99,145,226],[99,145,225],[99,145,227],[99,145,212,224,226,230],[99,145,212,224,226],[99,145,159,193,205,212,213,219,227,228,229],[87,99,145,304,305,306],[99,145,262],[87,99,145,203],[87,99,145,236],[87,99,145,194,239,242,245,361,364],[99,145,203,384,385],[87,99,145,254],[87,99,145,170,186,193,201,248,250,252,253,364],[99,145,213,219,236],[99,145,235],[87,99,145,157,159,170,193,201,254,263,361,362,363],[83,87,88,89,90,99,145,195,196,361,404],[99,145,150],[99,145,333,334,335],[99,145,333],[99,145,373],[99,145,375],[99,145,377],[99,145,379],[99,145,382],[99,145,386],[91,93,99,145,361,366,370,372,374,376,378,380,383,387,389,395,396,398,405,406,407],[99,145,388],[99,145,394],[99,145,250],[99,145,397],[99,144,145,227,228,229,230,399,400,401,404],[99,145,193],[87,91,99,145,159,161,170,193,195,196,197,199,201,214,353,360,364,404],[99,112,116,145,186],[99,112,145,175,186],[99,107,145],[99,109,112,145,183,186],[99,145,164,183],[99,107,145,193],[99,109,112,145,164,186],[99,104,105,108,111,145,156,175,186],[99,112,119,145],[99,104,110,145],[99,112,133,134,145],[99,108,112,145,178,186,193],[99,133,145,193],[99,106,107,145,193],[99,112,145],[99,106,107,108,109,110,111,112,113,114,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,134,135,136,137,138,139,145],[99,112,127,145],[99,112,119,120,145],[99,110,112,120,121,145],[99,111,145],[99,104,107,112,145],[99,112,116,120,121,145],[99,116,145],[99,110,112,115,145,186],[99,104,109,112,119,145],[99,145,175],[99,107,112,133,145,191,193],[99,145,405],[87,99,145,414],[99,145,408,416,417,419,420],[87,99,145,395,416],[87,99,145,413,414,422,423,424],[87,99,145,413,414,423],[87,99,145,414,424],[87,99,145,395,414,415,432,433,434],[87,99,145,414,416],[87,99,145,431],[99,145,414,415],[99,145,389,395,416],[87,99,145,416,418]],"fileInfos":[{"version":"c430d44666289dae81f30fa7b2edebf186ecc91a2d4c71266ea6ae76388792e1","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","signature":false,"impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","signature":false,"impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","signature":false,"impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","signature":false,"impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","signature":false,"impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","signature":false,"impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","signature":false,"impliedFormat":1},{"version":"ee7bad0c15b58988daa84371e0b89d313b762ab83cb5b31b8a2d1162e8eb41c2","signature":false,"impliedFormat":1},{"version":"27bdc30a0e32783366a5abeda841bc22757c1797de8681bbe81fbc735eeb1c10","signature":false,"impliedFormat":1},{"version":"8fd575e12870e9944c7e1d62e1f5a73fcf23dd8d3a321f2a2c74c20d022283fe","signature":false,"impliedFormat":1},{"version":"2ab096661c711e4a81cc464fa1e6feb929a54f5340b46b0a07ac6bbf857471f0","signature":false,"impliedFormat":1},{"version":"080941d9f9ff9307f7e27a83bcd888b7c8270716c39af943532438932ec1d0b9","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"2e80ee7a49e8ac312cc11b77f1475804bee36b3b2bc896bead8b6e1266befb43","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"fb0f136d372979348d59b3f5020b4cdb81b5504192b1cacff5d1fbba29378aa1","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"a680117f487a4d2f30ea46f1b4b7f58bef1480456e18ba53ee85c2746eeca012","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"959d36cddf5e7d572a65045b876f2956c973a586da58e5d26cde519184fd9b8a","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"965f36eae237dd74e6cca203a43e9ca801ce38824ead814728a2807b1910117d","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"3925a6c820dcb1a06506c90b1577db1fdbf7705d65b62b99dce4be75c637e26b","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"0a3d63ef2b853447ec4f749d3f368ce642264246e02911fcb1590d8c161b8005","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"8cdf8847677ac7d20486e54dd3fcf09eda95812ac8ace44b4418da1bbbab6eb8","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"df83c2a6c73228b625b0beb6669c7ee2a09c914637e2d35170723ad49c0f5cd4","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"436aaf437562f276ec2ddbee2f2cdedac7664c1e4c1d2c36839ddd582eeb3d0a","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"8e3c06ea092138bf9fa5e874a1fdbc9d54805d074bee1de31b99a11e2fec239d","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"87dc0f382502f5bbce5129bdc0aea21e19a3abbc19259e0b43ae038a9fc4e326","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"b1cb28af0c891c8c96b2d6b7be76bd394fddcfdb4709a20ba05a7c1605eea0f9","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"2fef54945a13095fdb9b84f705f2b5994597640c46afeb2ce78352fab4cb3279","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"ac77cb3e8c6d3565793eb90a8373ee8033146315a3dbead3bde8db5eaf5e5ec6","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"56e4ed5aab5f5920980066a9409bfaf53e6d21d3f8d020c17e4de584d29600ad","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"4ece9f17b3866cc077099c73f4983bddbcb1dc7ddb943227f1ec070f529dedd1","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"0a6282c8827e4b9a95f4bf4f5c205673ada31b982f50572d27103df8ceb8013c","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"1c9319a09485199c1f7b0498f2988d6d2249793ef67edda49d1e584746be9032","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"e3a2a0cee0f03ffdde24d89660eba2685bfbdeae955a6c67e8c4c9fd28928eeb","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"811c71eee4aa0ac5f7adf713323a5c41b0cf6c4e17367a34fbce379e12bbf0a4","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"51ad4c928303041605b4d7ae32e0c1ee387d43a24cd6f1ebf4a2699e1076d4fa","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"60037901da1a425516449b9a20073aa03386cce92f7a1fd902d7602be3a7c2e9","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"d4b1d2c51d058fc21ec2629fff7a76249dec2e36e12960ea056e3ef89174080f","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"22adec94ef7047a6c9d1af3cb96be87a335908bf9ef386ae9fd50eeb37f44c47","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"196cb558a13d4533a5163286f30b0509ce0210e4b316c56c38d4c0fd2fb38405","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"73f78680d4c08509933daf80947902f6ff41b6230f94dd002ae372620adb0f60","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"c5239f5c01bcfa9cd32f37c496cf19c61d69d37e48be9de612b541aac915805b","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"0990a7576222f248f0a3b888adcb7389f957928ce2afb1cd5128169086ff4d29","signature":false,"impliedFormat":1},{"version":"eb5b19b86227ace1d29ea4cf81387279d04bb34051e944bc53df69f58914b788","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"ac51dd7d31333793807a6abaa5ae168512b6131bd41d9c5b98477fc3b7800f9f","signature":false,"impliedFormat":1},{"version":"87d9d29dbc745f182683f63187bf3d53fd8673e5fca38ad5eaab69798ed29fbc","signature":false,"impliedFormat":1},{"version":"035312d4945d13efa134ae482f6dc56a1a9346f7ac3be7ccbad5741058ce87f3","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"cc69795d9954ee4ad57545b10c7bf1a7260d990231b1685c147ea71a6faa265c","signature":false,"impliedFormat":1},{"version":"8bc6c94ff4f2af1f4023b7bb2379b08d3d7dd80c698c9f0b07431ea16101f05f","signature":false,"impliedFormat":1},{"version":"1b61d259de5350f8b1e5db06290d31eaebebc6baafd5f79d314b5af9256d7153","signature":false,"impliedFormat":1},{"version":"57194e1f007f3f2cbef26fa299d4c6b21f4623a2eddc63dfeef79e38e187a36e","signature":false,"impliedFormat":1},{"version":"0f6666b58e9276ac3a38fdc80993d19208442d6027ab885580d93aec76b4ef00","signature":false,"impliedFormat":1},{"version":"05fd364b8ef02fb1e174fbac8b825bdb1e5a36a016997c8e421f5fab0a6da0a0","signature":false,"impliedFormat":1},{"version":"70521b6ab0dcba37539e5303104f29b721bfb2940b2776da4cc818c07e1fefc1","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"ab41ef1f2cdafb8df48be20cd969d875602483859dc194e9c97c8a576892c052","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"d153a11543fd884b596587ccd97aebbeed950b26933ee000f94009f1ab142848","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"21d819c173c0cf7cc3ce57c3276e77fd9a8a01d35a06ad87158781515c9a438a","signature":false,"impliedFormat":1},{"version":"98cffbf06d6bab333473c70a893770dbe990783904002c4f1a960447b4b53dca","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"ba481bca06f37d3f2c137ce343c7d5937029b2468f8e26111f3c9d9963d6568d","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"6d9ef24f9a22a88e3e9b3b3d8c40ab1ddb0853f1bfbd5c843c37800138437b61","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"1db0b7dca579049ca4193d034d835f6bfe73096c73663e5ef9a0b5779939f3d0","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"9798340ffb0d067d69b1ae5b32faa17ab31b82466a3fc00d8f2f2df0c8554aaa","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"f26b11d8d8e4b8028f1c7d618b22274c892e4b0ef5b3678a8ccbad85419aef43","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","signature":false,"impliedFormat":1},{"version":"763fe0f42b3d79b440a9b6e51e9ba3f3f91352469c1e4b3b67bfa4ff6352f3f4","signature":false,"impliedFormat":1},{"version":"25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","signature":false,"impliedFormat":1},{"version":"c464d66b20788266e5353b48dc4aa6bc0dc4a707276df1e7152ab0c9ae21fad8","signature":false,"impliedFormat":1},{"version":"78d0d27c130d35c60b5e5566c9f1e5be77caf39804636bc1a40133919a949f21","signature":false,"impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","signature":false,"impliedFormat":1},{"version":"1d6e127068ea8e104a912e42fc0a110e2aa5a66a356a917a163e8cf9a65e4a75","signature":false,"impliedFormat":1},{"version":"5ded6427296cdf3b9542de4471d2aa8d3983671d4cac0f4bf9c637208d1ced43","signature":false,"impliedFormat":1},{"version":"7f182617db458e98fc18dfb272d40aa2fff3a353c44a89b2c0ccb3937709bfb5","signature":false,"impliedFormat":1},{"version":"cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","signature":false,"impliedFormat":1},{"version":"385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","signature":false,"impliedFormat":1},{"version":"9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","signature":false,"impliedFormat":1},{"version":"0b8a9268adaf4da35e7fa830c8981cfa22adbbe5b3f6f5ab91f6658899e657a7","signature":false,"impliedFormat":1},{"version":"11396ed8a44c02ab9798b7dca436009f866e8dae3c9c25e8c1fbc396880bf1bb","signature":false,"impliedFormat":1},{"version":"ba7bc87d01492633cb5a0e5da8a4a42a1c86270e7b3d2dea5d156828a84e4882","signature":false,"impliedFormat":1},{"version":"4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","signature":false,"impliedFormat":1},{"version":"c21dc52e277bcfc75fac0436ccb75c204f9e1b3fa5e12729670910639f27343e","signature":false,"impliedFormat":1},{"version":"13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","signature":false,"impliedFormat":1},{"version":"9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","signature":false,"impliedFormat":1},{"version":"4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","signature":false,"impliedFormat":1},{"version":"24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","signature":false,"impliedFormat":1},{"version":"ea0148f897b45a76544ae179784c95af1bd6721b8610af9ffa467a518a086a43","signature":false,"impliedFormat":1},{"version":"24c6a117721e606c9984335f71711877293a9651e44f59f3d21c1ea0856f9cc9","signature":false,"impliedFormat":1},{"version":"dd3273ead9fbde62a72949c97dbec2247ea08e0c6952e701a483d74ef92d6a17","signature":false,"impliedFormat":1},{"version":"405822be75ad3e4d162e07439bac80c6bcc6dbae1929e179cf467ec0b9ee4e2e","signature":false,"impliedFormat":1},{"version":"0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","signature":false,"impliedFormat":1},{"version":"e61be3f894b41b7baa1fbd6a66893f2579bfad01d208b4ff61daef21493ef0a8","signature":false,"impliedFormat":1},{"version":"bd0532fd6556073727d28da0edfd1736417a3f9f394877b6d5ef6ad88fba1d1a","signature":false,"impliedFormat":1},{"version":"89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","signature":false,"impliedFormat":1},{"version":"615ba88d0128ed16bf83ef8ccbb6aff05c3ee2db1cc0f89ab50a4939bfc1943f","signature":false,"impliedFormat":1},{"version":"a4d551dbf8746780194d550c88f26cf937caf8d56f102969a110cfaed4b06656","signature":false,"impliedFormat":1},{"version":"8bd86b8e8f6a6aa6c49b71e14c4ffe1211a0e97c80f08d2c8cc98838006e4b88","signature":false,"impliedFormat":1},{"version":"317e63deeb21ac07f3992f5b50cdca8338f10acd4fbb7257ebf56735bf52ab00","signature":false,"impliedFormat":1},{"version":"4732aec92b20fb28c5fe9ad99521fb59974289ed1e45aecb282616202184064f","signature":false,"impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","signature":false,"impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","signature":false,"impliedFormat":1},{"version":"bf67d53d168abc1298888693338cb82854bdb2e69ef83f8a0092093c2d562107","signature":false,"impliedFormat":1},{"version":"b52476feb4a0cbcb25e5931b930fc73cb6643fb1a5060bf8a3dda0eeae5b4b68","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"e2677634fe27e87348825bb041651e22d50a613e2fdf6a4a3ade971d71bac37e","signature":false,"impliedFormat":1},{"version":"7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","signature":false,"impliedFormat":1},{"version":"8c0bcd6c6b67b4b503c11e91a1fb91522ed585900eab2ab1f61bba7d7caa9d6f","signature":false,"impliedFormat":1},{"version":"8cd19276b6590b3ebbeeb030ac271871b9ed0afc3074ac88a94ed2449174b776","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"696eb8d28f5949b87d894b26dc97318ef944c794a9a4e4f62360cd1d1958014b","signature":false,"impliedFormat":1},{"version":"3f8fa3061bd7402970b399300880d55257953ee6d3cd408722cb9ac20126460c","signature":false,"impliedFormat":1},{"version":"35ec8b6760fd7138bbf5809b84551e31028fb2ba7b6dc91d95d098bf212ca8b4","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"5524481e56c48ff486f42926778c0a3cce1cc85dc46683b92b1271865bcf015a","signature":false,"impliedFormat":1},{"version":"68bd56c92c2bd7d2339457eb84d63e7de3bd56a69b25f3576e1568d21a162398","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"3e93b123f7c2944969d291b35fed2af79a6e9e27fdd5faa99748a51c07c02d28","signature":false,"impliedFormat":1},{"version":"9d19808c8c291a9010a6c788e8532a2da70f811adb431c97520803e0ec649991","signature":false,"impliedFormat":1},{"version":"87aad3dd9752067dc875cfaa466fc44246451c0c560b820796bdd528e29bef40","signature":false,"impliedFormat":1},{"version":"4aacb0dd020eeaef65426153686cc639a78ec2885dc72ad220be1d25f1a439df","signature":false,"impliedFormat":1},{"version":"f0bd7e6d931657b59605c44112eaf8b980ba7f957a5051ed21cb93d978cf2f45","signature":false,"impliedFormat":1},{"version":"8db0ae9cb14d9955b14c214f34dae1b9ef2baee2fe4ce794a4cd3ac2531e3255","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"15fc6f7512c86810273af28f224251a5a879e4261b4d4c7e532abfbfc3983134","signature":false,"impliedFormat":1},{"version":"58adba1a8ab2d10b54dc1dced4e41f4e7c9772cbbac40939c0dc8ce2cdb1d442","signature":false,"impliedFormat":1},{"version":"641942a78f9063caa5d6b777c99304b7d1dc7328076038c6d94d8a0b81fc95c1","signature":false,"impliedFormat":1},{"version":"714435130b9015fae551788df2a88038471a5a11eb471f27c4ede86552842bc9","signature":false,"impliedFormat":1},{"version":"855cd5f7eb396f5f1ab1bc0f8580339bff77b68a770f84c6b254e319bbfd1ac7","signature":false,"impliedFormat":1},{"version":"5650cf3dace09e7c25d384e3e6b818b938f68f4e8de96f52d9c5a1b3db068e86","signature":false,"impliedFormat":1},{"version":"1354ca5c38bd3fd3836a68e0f7c9f91f172582ba30ab15bb8c075891b91502b7","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"7e20d899c28ca26a2a7afc98beaa69e63ff7fba0a8bc47b4e3bf3ede5e09e424","signature":false,"impliedFormat":1},{"version":"2d2fcaab481b31a5882065c7951255703ddbe1c0e507af56ea42d79ac3911201","signature":false,"impliedFormat":1},{"version":"a192fe8ec33f75edbc8d8f3ed79f768dfae11ff5735e7fe52bfa69956e46d78d","signature":false,"impliedFormat":1},{"version":"ca867399f7db82df981d6915bcbb2d81131d7d1ef683bc782b59f71dda59bc85","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"372413016d17d804e1d139418aca0c68e47a83fb6669490857f4b318de8cccb3","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"9e043a1bc8fbf2a255bccf9bf27e0f1caf916c3b0518ea34aa72357c0afd42ec","signature":false,"impliedFormat":1},{"version":"b4f70ec656a11d570e1a9edce07d118cd58d9760239e2ece99306ee9dfe61d02","signature":false,"impliedFormat":1},{"version":"3bc2f1e2c95c04048212c569ed38e338873f6a8593930cf5a7ef24ffb38fc3b6","signature":false,"impliedFormat":1},{"version":"6e70e9570e98aae2b825b533aa6292b6abd542e8d9f6e9475e88e1d7ba17c866","signature":false,"impliedFormat":1},{"version":"f9d9d753d430ed050dc1bf2667a1bab711ccbb1c1507183d794cc195a5b085cc","signature":false,"impliedFormat":1},{"version":"9eece5e586312581ccd106d4853e861aaaa1a39f8e3ea672b8c3847eedd12f6e","signature":false,"impliedFormat":1},{"version":"085f552d005479e2e6a7311cdbbe5d8c55c497b4d19274285df161ee9684cd9c","signature":false,"impliedFormat":1},{"version":"37ba7b45141a45ce6e80e66f2a96c8a5ab1bcef0fc2d0f56bb58df96ec67e972","signature":false,"impliedFormat":1},{"version":"45650f47bfb376c8a8ed39d4bcda5902ab899a3150029684ee4c10676d9fbaee","signature":false,"impliedFormat":1},{"version":"007faacc9268357caa21d24169f3f3f2497af3e9241308df2d89f6e6d9bb3f2e","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"74cf591a0f63db318651e0e04cb55f8791385f86e987a67fd4d2eaab8191f730","signature":false,"impliedFormat":1},{"version":"5eab9b3dc9b34f185417342436ec3f106898da5f4801992d8ff38ab3aff346b5","signature":false,"impliedFormat":1},{"version":"12ed4559eba17cd977aa0db658d25c4047067444b51acfdcbf38470630642b23","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"f3ffabc95802521e1e4bcba4c88d8615176dc6e09111d920c7a213bdda6e1d65","signature":false,"impliedFormat":1},{"version":"809821b8a065e3234a55b3a9d7846231ed18d66dd749f2494c66288d890daf7f","signature":false,"impliedFormat":1},{"version":"ae56f65caf3be91108707bd8dfbccc2a57a91feb5daabf7165a06a945545ed26","signature":false,"impliedFormat":1},{"version":"a136d5de521da20f31631a0a96bf712370779d1c05b7015d7019a9b2a0446ca9","signature":false,"impliedFormat":1},{"version":"c3b41e74b9a84b88b1dca61ec39eee25c0dbc8e7d519ba11bb070918cfacf656","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"4737a9dc24d0e68b734e6cfbcea0c15a2cfafeb493485e27905f7856988c6b29","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"36d8d3e7506b631c9582c251a2c0b8a28855af3f76719b12b534c6edf952748d","signature":false,"impliedFormat":1},{"version":"1ca69210cc42729e7ca97d3a9ad48f2e9cb0042bada4075b588ae5387debd318","signature":false,"impliedFormat":1},{"version":"f5ebe66baaf7c552cfa59d75f2bfba679f329204847db3cec385acda245e574e","signature":false,"impliedFormat":1},{"version":"ed59add13139f84da271cafd32e2171876b0a0af2f798d0c663e8eeb867732cf","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"b7c5e2ea4a9749097c347454805e933844ed207b6eefec6b7cfd418b5f5f7b28","signature":false,"impliedFormat":1},{"version":"b1810689b76fd473bd12cc9ee219f8e62f54a7d08019a235d07424afbf074d25","signature":false,"impliedFormat":1},{"version":"8caa5c86be1b793cd5f599e27ecb34252c41e011980f7d61ae4989a149ff6ccc","signature":false,"impliedFormat":1},{"version":"f9fd93190acb1ffe0bc0fb395df979452f8d625071e9ffc8636e4dfb86ab2508","signature":false,"impliedFormat":1},{"version":"5f41fd8732a89e940c58ce22206e3df85745feb8983e2b4c6257fb8cbb118493","signature":false,"impliedFormat":1},{"version":"17ed71200119e86ccef2d96b73b02ce8854b76ad6bd21b5021d4269bec527b5f","signature":false,"impliedFormat":1},{"version":"1cfa8647d7d71cb03847d616bd79320abfc01ddea082a49569fda71ac5ece66b","signature":false,"impliedFormat":1},{"version":"bb7a61dd55dc4b9422d13da3a6bb9cc5e89be888ef23bbcf6558aa9726b89a1c","signature":false,"impliedFormat":1},{"version":"db6d2d9daad8a6d83f281af12ce4355a20b9a3e71b82b9f57cddcca0a8964a96","signature":false,"impliedFormat":1},{"version":"cfe4ef4710c3786b6e23dae7c086c70b4f4835a2e4d77b75d39f9046106e83d3","signature":false,"impliedFormat":1},{"version":"cbea99888785d49bb630dcbb1613c73727f2b5a2cf02e1abcaab7bcf8d6bf3c5","signature":false,"impliedFormat":1},{"version":"3a8bddb66b659f6bd2ff641fc71df8a8165bafe0f4b799cc298be5cd3755bb20","signature":false,"impliedFormat":1},{"version":"a86f82d646a739041d6702101afa82dcb935c416dd93cbca7fd754fd0282ce1f","signature":false,"impliedFormat":1},{"version":"2dad084c67e649f0f354739ec7df7c7df0779a28a4f55c97c6b6883ae850d1ce","signature":false,"impliedFormat":1},{"version":"fa5bbc7ab4130dd8cdc55ea294ec39f76f2bc507a0f75f4f873e38631a836ca7","signature":false,"impliedFormat":1},{"version":"df45ca1176e6ac211eae7ddf51336dc075c5314bc5c253651bae639defd5eec5","signature":false,"impliedFormat":1},{"version":"cf86de1054b843e484a3c9300d62fbc8c97e77f168bbffb131d560ca0474d4a8","signature":false,"impliedFormat":1},{"version":"196c960b12253fde69b204aa4fbf69470b26daf7a430855d7f94107a16495ab0","signature":false,"impliedFormat":1},{"version":"ee15ea5dd7a9fc9f5013832e5843031817a880bf0f24f37a29fd8337981aae07","signature":false,"impliedFormat":1},{"version":"bf24f6d35f7318e246010ffe9924395893c4e96d34324cde77151a73f078b9ad","signature":false,"impliedFormat":1},{"version":"ea53732769832d0f127ae16620bd5345991d26bf0b74e85e41b61b27d74ea90f","signature":false,"impliedFormat":1},{"version":"10595c7ff5094dd5b6a959ccb1c00e6a06441b4e10a87bc09c15f23755d34439","signature":false,"impliedFormat":1},{"version":"9620c1ff645afb4a9ab4044c85c26676f0a93e8c0e4b593aea03a89ccb47b6d0","signature":false,"impliedFormat":1},{"version":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","signature":false,"impliedFormat":1},{"version":"a9af0e608929aaf9ce96bd7a7b99c9360636c31d73670e4af09a09950df97841","signature":false,"impliedFormat":1},{"version":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","signature":false,"impliedFormat":1},{"version":"c86fe861cf1b4c46a0fb7d74dffe596cf679a2e5e8b1456881313170f092e3fa","signature":false,"impliedFormat":1},{"version":"08ed0b3f0166787f84a6606f80aa3b1388c7518d78912571b203817406e471da","signature":false,"impliedFormat":1},{"version":"47e5af2a841356a961f815e7c55d72554db0c11b4cba4d0caab91f8717846a94","signature":false,"impliedFormat":1},{"version":"65f43099ded6073336e697512d9b80f2d4fec3182b7b2316abf712e84104db00","signature":false,"impliedFormat":1},{"version":"f5f541902bf7ae0512a177295de9b6bcd6809ea38307a2c0a18bfca72212f368","signature":false,"impliedFormat":1},{"version":"b0decf4b6da3ebc52ea0c96095bdfaa8503acc4ac8e9081c5f2b0824835dd3bd","signature":false,"impliedFormat":1},{"version":"ca1b882a105a1972f82cc58e3be491e7d750a1eb074ffd13b198269f57ed9e1b","signature":false,"impliedFormat":1},{"version":"fc3e1c87b39e5ba1142f27ec089d1966da168c04a859a4f6aab64dceae162c2b","signature":false,"impliedFormat":1},{"version":"3b414b99a73171e1c4b7b7714e26b87d6c5cb03d200352da5342ab4088a54c85","signature":false,"impliedFormat":1},{"version":"61888522cec948102eba94d831c873200aa97d00d8989fdfd2a3e0ee75ec65a2","signature":false,"impliedFormat":1},{"version":"4e10622f89fea7b05dd9b52fb65e1e2b5cbd96d4cca3d9e1a60bb7f8a9cb86a1","signature":false,"impliedFormat":1},{"version":"74b2a5e5197bd0f2e0077a1ea7c07455bbea67b87b0869d9786d55104006784f","signature":false,"impliedFormat":1},{"version":"59bf32919de37809e101acffc120596a9e45fdbab1a99de5087f31fdc36e2f11","signature":false,"impliedFormat":1},{"version":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","signature":false,"impliedFormat":1},{"version":"faa03dffb64286e8304a2ca96dd1317a77db6bfc7b3fb385163648f67e535d77","signature":false,"impliedFormat":1},{"version":"c40c848daad198266370c1c72a7a8c3d18d2f50727c7859fcfefd3ff69a7f288","signature":false,"impliedFormat":1},{"version":"ac60bbee0d4235643cc52b57768b22de8c257c12bd8c2039860540cab1fa1d82","signature":false,"impliedFormat":1},{"version":"6428e6edd944ce6789afdf43f9376c1f2e4957eea34166177625aaff4c0da1a0","signature":false,"impliedFormat":1},{"version":"ada39cbb2748ab2873b7835c90c8d4620723aedf323550e8489f08220e477c7f","signature":false,"impliedFormat":1},{"version":"6e5f5cee603d67ee1ba6120815497909b73399842254fc1e77a0d5cdc51d8c9c","signature":false,"impliedFormat":1},{"version":"8dba67056cbb27628e9b9a1cba8e57036d359dceded0725c72a3abe4b6c79cd4","signature":false,"impliedFormat":1},{"version":"70f3814c457f54a7efe2d9ce9d2686de9250bb42eb7f4c539bd2280a42e52d33","signature":false,"impliedFormat":1},{"version":"154dd2e22e1e94d5bc4ff7726706bc0483760bae40506bdce780734f11f7ec47","signature":false,"impliedFormat":1},{"version":"ef61792acbfa8c27c9bd113f02731e66229f7d3a169e3c1993b508134f1a58e0","signature":false,"impliedFormat":1},{"version":"9c82171d836c47486074e4ca8e059735bf97b205e70b196535b5efd40cbe1bc5","signature":false,"impliedFormat":1},{"version":"0131e203d8560edb39678abe10db42564a068f98c4ebd1ed9ffe7279c78b3c81","signature":false,"impliedFormat":1},{"version":"f6404e7837b96da3ea4d38c4f1a3812c96c9dcdf264e93d5bdb199f983a3ef4b","signature":false,"impliedFormat":1},{"version":"c5426dbfc1cf90532f66965a7aa8c1136a78d4d0f96d8180ecbfc11d7722f1a5","signature":false,"impliedFormat":1},{"version":"65a15fc47900787c0bd18b603afb98d33ede930bed1798fc984d5ebb78b26cf9","signature":false,"impliedFormat":1},{"version":"9d202701f6e0744adb6314d03d2eb8fc994798fc83d91b691b75b07626a69801","signature":false,"impliedFormat":1},{"version":"de9d2df7663e64e3a91bf495f315a7577e23ba088f2949d5ce9ec96f44fba37d","signature":false,"impliedFormat":1},{"version":"c7af78a2ea7cb1cd009cfb5bdb48cd0b03dad3b54f6da7aab615c2e9e9d570c5","signature":false,"impliedFormat":1},{"version":"1ee45496b5f8bdee6f7abc233355898e5bf9bd51255db65f5ff7ede617ca0027","signature":false,"impliedFormat":1},{"version":"8b8f00491431fe82f060dfe8c7f2180a9fb239f3d851527db909b83230e75882","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"db01d18853469bcb5601b9fc9826931cc84cc1a1944b33cad76fd6f1e3d8c544","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"dba114fb6a32b355a9cfc26ca2276834d72fe0e94cd2c3494005547025015369","signature":false,"impliedFormat":1},{"version":"903e299a28282fa7b714586e28409ed73c3b63f5365519776bf78e8cf173db36","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"fa6c12a7c0f6b84d512f200690bfc74819e99efae69e4c95c4cd30f6884c526e","signature":false,"impliedFormat":1},{"version":"f1c32f9ce9c497da4dc215c3bc84b722ea02497d35f9134db3bb40a8d918b92b","signature":false,"impliedFormat":1},{"version":"b73c319af2cc3ef8f6421308a250f328836531ea3761823b4cabbd133047aefa","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"e433b0337b8106909e7953015e8fa3f2d30797cea27141d1c5b135365bb975a6","signature":false,"impliedFormat":1},{"version":"dd3900b24a6a8745efeb7ad27629c0f8a626470ac229c1d73f1fe29d67e44dca","signature":false,"impliedFormat":1},{"version":"ddff7fc6edbdc5163a09e22bf8df7bef75f75369ebd7ecea95ba55c4386e2441","signature":false,"impliedFormat":1},{"version":"106c6025f1d99fd468fd8bf6e5bda724e11e5905a4076c5d29790b6c3745e50c","signature":false,"impliedFormat":1},{"version":"ec29be0737d39268696edcec4f5e97ce26f449fa9b7afc2f0f99a86def34a418","signature":false,"impliedFormat":1},{"version":"aeab39e8e0b1a3b250434c3b2bb8f4d17bbec2a9dbce5f77e8a83569d3d2cbc2","signature":false,"impliedFormat":1},{"version":"ec6cba1c02c675e4dd173251b156792e8d3b0c816af6d6ad93f1a55d674591aa","signature":false,"impliedFormat":1},{"version":"b620391fe8060cf9bedc176a4d01366e6574d7a71e0ac0ab344a4e76576fcbb8","signature":false,"impliedFormat":1},{"version":"d729408dfde75b451530bcae944cf89ee8277e2a9df04d1f62f2abfd8b03c1e1","signature":false,"impliedFormat":1},{"version":"e15d3c84d5077bb4a3adee4c791022967b764dc41cb8fa3cfa44d4379b2c95f5","signature":false,"impliedFormat":1},{"version":"5f58e28cd22e8fc1ac1b3bc6b431869f1e7d0b39e2c21fbf79b9fa5195a85980","signature":false,"impliedFormat":1},{"version":"e1fc1a1045db5aa09366be2b330e4ce391550041fc3e925f60998ca0b647aa97","signature":false,"impliedFormat":1},{"version":"63533978dcda286422670f6e184ac516805a365fb37a086eeff4309e812f1402","signature":false,"impliedFormat":1},{"version":"43ba4f2fa8c698f5c304d21a3ef596741e8e85a810b7c1f9b692653791d8d97a","signature":false,"impliedFormat":1},{"version":"31fb49ef3aa3d76f0beb644984e01eab0ea222372ea9b49bb6533be5722d756c","signature":false,"impliedFormat":1},{"version":"33cd131e1461157e3e06b06916b5176e7a8ec3fce15a5cfe145e56de744e07d2","signature":false,"impliedFormat":1},{"version":"889ef863f90f4917221703781d9723278db4122d75596b01c429f7c363562b86","signature":false,"impliedFormat":1},{"version":"3556cfbab7b43da96d15a442ddbb970e1f2fc97876d055b6555d86d7ac57dae5","signature":false,"impliedFormat":1},{"version":"437751e0352c6e924ddf30e90849f1d9eb00ca78c94d58d6a37202ec84eb8393","signature":false,"impliedFormat":1},{"version":"48e8af7fdb2677a44522fd185d8c87deff4d36ee701ea003c6c780b1407a1397","signature":false,"impliedFormat":1},{"version":"d11308de5a36c7015bb73adb5ad1c1bdaac2baede4cc831a05cf85efa3cc7f2f","signature":false,"impliedFormat":1},{"version":"38e4684c22ed9319beda6765bab332c724103d3a966c2e5e1c5a49cf7007845f","signature":false,"impliedFormat":1},{"version":"f9812cfc220ecf7557183379531fa409acd249b9e5b9a145d0d52b76c20862de","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"e650298721abc4f6ae851e60ae93ee8199791ceec4b544c3379862f81f43178c","signature":false,"impliedFormat":1},{"version":"2e4f37ffe8862b14d8e24ae8763daaa8340c0df0b859d9a9733def0eee7562d9","signature":false,"impliedFormat":1},{"version":"13283350547389802aa35d9f2188effaeac805499169a06ef5cd77ce2a0bd63f","signature":false,"impliedFormat":1},{"version":"680793958f6a70a44c8d9ae7d46b7a385361c69ac29dcab3ed761edce1c14ab8","signature":false,"impliedFormat":1},{"version":"6ac6715916fa75a1f7ebdfeacac09513b4d904b667d827b7535e84ff59679aff","signature":false,"impliedFormat":1},{"version":"42c169fb8c2d42f4f668c624a9a11e719d5d07dacbebb63cbcf7ef365b0a75b3","signature":false,"impliedFormat":1},{"version":"913ddbba170240070bd5921b8f33ea780021bdf42fbdfcd4fcb2691b1884ddde","signature":false,"impliedFormat":1},{"version":"b4e6d416466999ff40d3fe5ceb95f7a8bfb7ac2262580287ac1a8391e5362431","signature":false,"impliedFormat":1},{"version":"5fe23bd829e6be57d41929ac374ee9551ccc3c44cee893167b7b5b77be708014","signature":false,"impliedFormat":1},{"version":"0a626484617019fcfbfc3c1bc1f9e84e2913f1adb73692aa9075817404fb41a1","signature":false,"impliedFormat":1},{"version":"438c7513b1df91dcef49b13cd7a1c4720f91a36e88c1df731661608b7c055f10","signature":false,"impliedFormat":1},{"version":"cf185cc4a9a6d397f416dd28cca95c227b29f0f27b160060a95c0e5e36cda865","signature":false,"impliedFormat":1},{"version":"0086f3e4ad898fd7ca56bb223098acfacf3fa065595182aaf0f6c4a6a95e6fbd","signature":false,"impliedFormat":1},{"version":"efaa078e392f9abda3ee8ade3f3762ab77f9c50b184e6883063a911742a4c96a","signature":false,"impliedFormat":1},{"version":"54a8bb487e1dc04591a280e7a673cdfb272c83f61e28d8a64cf1ac2e63c35c51","signature":false,"impliedFormat":1},{"version":"021a9498000497497fd693dd315325484c58a71b5929e2bbb91f419b04b24cea","signature":false,"impliedFormat":1},{"version":"9385cdc09850950bc9b59cca445a3ceb6fcca32b54e7b626e746912e489e535e","signature":false,"impliedFormat":1},{"version":"2894c56cad581928bb37607810af011764a2f511f575d28c9f4af0f2ef02d1ab","signature":false,"impliedFormat":1},{"version":"0a72186f94215d020cb386f7dca81d7495ab6c17066eb07d0f44a5bf33c1b21a","signature":false,"impliedFormat":1},{"version":"84124384abae2f6f66b7fbfc03862d0c2c0b71b826f7dbf42c8085d31f1d3f95","signature":false,"impliedFormat":1},{"version":"63a8e96f65a22604eae82737e409d1536e69a467bb738bec505f4f97cce9d878","signature":false,"impliedFormat":1},{"version":"3fd78152a7031315478f159c6a5872c712ece6f01212c78ea82aef21cb0726e2","signature":false,"impliedFormat":1},{"version":"b01bd582a6e41457bc56e6f0f9de4cb17f33f5f3843a7cf8210ac9c18472fb0f","signature":false,"impliedFormat":1},{"version":"58b49e5c1def740360b5ae22ae2405cfac295fee74abd88d74ac4ea42502dc03","signature":false,"impliedFormat":1},{"version":"512fc15cca3a35b8dbbf6e23fe9d07e6f87ad03c895acffd3087ce09f352aad0","signature":false,"impliedFormat":1},{"version":"9a0946d15a005832e432ea0cd4da71b57797efb25b755cc07f32274296d62355","signature":false,"impliedFormat":1},{"version":"a52ff6c0a149e9f370372fc3c715d7f2beee1f3bab7980e271a7ab7d313ec677","signature":false,"impliedFormat":1},{"version":"fd933f824347f9edd919618a76cdb6a0c0085c538115d9a287fa0c7f59957ab3","signature":false,"impliedFormat":1},{"version":"6ac6715916fa75a1f7ebdfeacac09513b4d904b667d827b7535e84ff59679aff","signature":false,"impliedFormat":1},{"version":"6a1aa3e55bdc50503956c5cd09ae4cd72e3072692d742816f65c66ca14f4dfdd","signature":false,"impliedFormat":1},{"version":"ab75cfd9c4f93ffd601f7ca1753d6a9d953bbedfbd7a5b3f0436ac8a1de60dfa","signature":false,"impliedFormat":1},{"version":"f95180f03d827525ca4f990f49e17ec67198c316dd000afbe564655141f725cd","signature":false,"impliedFormat":1},{"version":"b73cbf0a72c8800cf8f96a9acfe94f3ad32ca71342a8908b8ae484d61113f647","signature":false,"impliedFormat":1},{"version":"bae6dd176832f6423966647382c0d7ba9e63f8c167522f09a982f086cd4e8b23","signature":false,"impliedFormat":1},{"version":"1364f64d2fb03bbb514edc42224abd576c064f89be6a990136774ecdd881a1da","signature":false,"impliedFormat":1},{"version":"c9958eb32126a3843deedda8c22fb97024aa5d6dd588b90af2d7f2bfac540f23","signature":false,"impliedFormat":1},{"version":"950fb67a59be4c2dbe69a5786292e60a5cb0e8612e0e223537784c731af55db1","signature":false,"impliedFormat":1},{"version":"e927c2c13c4eaf0a7f17e6022eee8519eb29ef42c4c13a31e81a611ab8c95577","signature":false,"impliedFormat":1},{"version":"07ca44e8d8288e69afdec7a31fa408ce6ab90d4f3d620006701d5544646da6aa","signature":false,"impliedFormat":1},{"version":"70246ad95ad8a22bdfe806cb5d383a26c0c6e58e7207ab9c431f1cb175aca657","signature":false,"impliedFormat":1},{"version":"f00f3aa5d64ff46e600648b55a79dcd1333458f7a10da2ed594d9f0a44b76d0b","signature":false,"impliedFormat":1},{"version":"772d8d5eb158b6c92412c03228bd9902ccb1457d7a705b8129814a5d1a6308fc","signature":false,"impliedFormat":1},{"version":"4e4475fba4ed93a72f167b061cd94a2e171b82695c56de9899275e880e06ba41","signature":false,"impliedFormat":1},{"version":"97c5f5d580ab2e4decd0a3135204050f9b97cd7908c5a8fbc041eadede79b2fa","signature":false,"impliedFormat":1},{"version":"c99a3a5f2215d5b9d735aa04cec6e61ed079d8c0263248e298ffe4604d4d0624","signature":false,"impliedFormat":1},{"version":"49b2375c586882c3ac7f57eba86680ff9742a8d8cb2fe25fe54d1b9673690d41","signature":false,"impliedFormat":1},{"version":"802e797bcab5663b2c9f63f51bdf67eff7c41bc64c0fd65e6da3e7941359e2f7","signature":false,"impliedFormat":1},{"version":"847e160d709c74cc714fbe1f99c41d3425b74cd47b1be133df1623cd87014089","signature":false,"impliedFormat":1},{"version":"9fee04f1e1afa50524862289b9f0b0fdc3735b80e2a0d684cec3b9ff3d94cecc","signature":false,"impliedFormat":1},{"version":"5cdc27fbc5c166fc5c763a30ac21cbac9859dc5ba795d3230db6d4e52a1965bb","signature":false,"impliedFormat":1},{"version":"6459054aabb306821a043e02b89d54da508e3a6966601a41e71c166e4ea1474f","signature":false,"impliedFormat":1},{"version":"f416c9c3eee9d47ff49132c34f96b9180e50485d435d5748f0e8b72521d28d2e","signature":false,"impliedFormat":1},{"version":"05c97cddbaf99978f83d96de2d8af86aded9332592f08ce4a284d72d0952c391","signature":false,"impliedFormat":1},{"version":"14e5cdec6f8ae82dfd0694e64903a0a54abdfe37e1d966de3d4128362acbf35f","signature":false,"impliedFormat":1},{"version":"bbc183d2d69f4b59fd4dd8799ffdf4eb91173d1c4ad71cce91a3811c021bf80c","signature":false,"impliedFormat":1},{"version":"7b6ff760c8a240b40dab6e4419b989f06a5b782f4710d2967e67c695ef3e93c4","signature":false,"impliedFormat":1},{"version":"8dbc4134a4b3623fc476be5f36de35c40f2768e2e3d9ed437e0d5f1c4cd850f6","signature":false,"impliedFormat":1},{"version":"4e06330a84dec7287f7ebdd64978f41a9f70a668d3b5edc69d5d4a50b9b376bb","signature":false,"impliedFormat":1},{"version":"65bfa72967fbe9fc33353e1ac03f0480aa2e2ea346d61ff3ea997dfd850f641a","signature":false,"impliedFormat":1},{"version":"c06f0bb92d1a1a5a6c6e4b5389a5664d96d09c31673296cb7da5fe945d54d786","signature":false,"impliedFormat":1},{"version":"f974e4a06953682a2c15d5bd5114c0284d5abf8bc0fe4da25cb9159427b70072","signature":false,"impliedFormat":1},{"version":"872caaa31423f4345983d643e4649fb30f548e9883a334d6d1c5fff68ede22d4","signature":false,"impliedFormat":1},{"version":"94404c4a878fe291e7578a2a80264c6f18e9f1933fbb57e48f0eb368672e389c","signature":false,"impliedFormat":1},{"version":"5c1b7f03aa88be854bc15810bfd5bd5a1943c5a7620e1c53eddd2a013996343e","signature":false,"impliedFormat":1},{"version":"09dfc64fcd6a2785867f2368419859a6cc5a8d4e73cbe2538f205b1642eb0f51","signature":false,"impliedFormat":1},{"version":"bcf6f0a323653e72199105a9316d91463ad4744c546d1271310818b8cef7c608","signature":false,"impliedFormat":1},{"version":"01aa917531e116485beca44a14970834687b857757159769c16b228eb1e49c5f","signature":false,"impliedFormat":1},{"version":"351475f9c874c62f9b45b1f0dc7e2704e80dfd5f1af83a3a9f841f9dfe5b2912","signature":false,"impliedFormat":1},{"version":"ac457ad39e531b7649e7b40ee5847606eac64e236efd76c5d12db95bf4eacd17","signature":false,"impliedFormat":1},{"version":"187a6fdbdecb972510b7555f3caacb44b58415da8d5825d03a583c4b73fde4cf","signature":false,"impliedFormat":1},{"version":"d4c3250105a612202289b3a266bb7e323db144f6b9414f9dea85c531c098b811","signature":false,"impliedFormat":1},{"version":"95b444b8c311f2084f0fb51c616163f950fb2e35f4eaa07878f313a2d36c98a4","signature":false,"impliedFormat":1},{"version":"741067675daa6d4334a2dc80a4452ca3850e89d5852e330db7cb2b5f867173b1","signature":false,"impliedFormat":1},{"version":"f8acecec1114f11690956e007d920044799aefeb3cece9e7f4b1f8a1d542b2c9","signature":false,"impliedFormat":1},{"version":"178071ccd043967a58c5d1a032db0ddf9bd139e7920766b537d9783e88eb615e","signature":false,"impliedFormat":1},{"version":"3a17f09634c50cce884721f54fd9e7b98e03ac505889c560876291fcf8a09e90","signature":false,"impliedFormat":1},{"version":"32531dfbb0cdc4525296648f53b2b5c39b64282791e2a8c765712e49e6461046","signature":false,"impliedFormat":1},{"version":"0ce1b2237c1c3df49748d61568160d780d7b26693bd9feb3acb0744a152cd86d","signature":false,"impliedFormat":1},{"version":"e489985388e2c71d3542612685b4a7db326922b57ac880f299da7026a4e8a117","signature":false,"impliedFormat":1},{"version":"5cad4158616d7793296dd41e22e1257440910ea8d01c7b75045d4dfb20c5a41a","signature":false,"impliedFormat":1},{"version":"04d3aad777b6af5bd000bfc409907a159fe77e190b9d368da4ba649cdc28d39e","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"74efc1d6523bd57eb159c18d805db4ead810626bc5bc7002a2c7f483044b2e0f","signature":false,"impliedFormat":1},{"version":"19252079538942a69be1645e153f7dbbc1ef56b4f983c633bf31fe26aeac32cd","signature":false,"impliedFormat":1},{"version":"bc11f3ac00ac060462597add171220aed628c393f2782ac75dd29ff1e0db871c","signature":false,"impliedFormat":1},{"version":"616775f16134fa9d01fc677ad3f76e68c051a056c22ab552c64cc281a9686790","signature":false,"impliedFormat":1},{"version":"65c24a8baa2cca1de069a0ba9fba82a173690f52d7e2d0f1f7542d59d5eb4db0","signature":false,"impliedFormat":1},{"version":"f9fe6af238339a0e5f7563acee3178f51db37f32a2e7c09f85273098cee7ec49","signature":false,"impliedFormat":1},{"version":"3b0b1d352b8d2e47f1c4df4fb0678702aee071155b12ef0185fce9eb4fa4af1e","signature":false,"impliedFormat":1},{"version":"77e71242e71ebf8528c5802993697878f0533db8f2299b4d36aa015bae08a79c","signature":false,"impliedFormat":1},{"version":"a344403e7a7384e0e7093942533d309194ad0a53eca2a3100c0b0ab4d3932773","signature":false,"impliedFormat":1},{"version":"b7fff2d004c5879cae335db8f954eb1d61242d9f2d28515e67902032723caeab","signature":false,"impliedFormat":1},{"version":"5f3dc10ae646f375776b4e028d2bed039a93eebbba105694d8b910feebbe8b9c","signature":false,"impliedFormat":1},{"version":"bb18bf4a61a17b4a6199eb3938ecfa4a59eb7c40843ad4a82b975ab6f7e3d925","signature":false,"impliedFormat":1},{"version":"4545c1a1ceca170d5d83452dd7c4994644c35cf676a671412601689d9a62da35","signature":false,"impliedFormat":1},{"version":"e9b6fc05f536dfddcdc65dbcf04e09391b1c968ab967382e48924f5cb90d88e1","signature":false,"impliedFormat":1},{"version":"a2d648d333cf67b9aeac5d81a1a379d563a8ffa91ddd61c6179f68de724260ff","signature":false,"impliedFormat":1},{"version":"2b664c3cc544d0e35276e1fb2d4989f7d4b4027ffc64da34ec83a6ccf2e5c528","signature":false,"impliedFormat":1},{"version":"a3f41ed1b4f2fc3049394b945a68ae4fdefd49fa1739c32f149d32c0545d67f5","signature":false,"impliedFormat":1},{"version":"3cd8f0464e0939b47bfccbb9bb474a6d87d57210e304029cd8eb59c63a81935d","signature":false,"impliedFormat":1},{"version":"47699512e6d8bebf7be488182427189f999affe3addc1c87c882d36b7f2d0b0e","signature":false,"impliedFormat":1},{"version":"3026abd48e5e312f2328629ede6e0f770d21c3cd32cee705c450e589d015ee09","signature":false,"impliedFormat":1},{"version":"8b140b398a6afbd17cc97c38aea5274b2f7f39b1ae5b62952cfe65bf493e3e75","signature":false,"impliedFormat":1},{"version":"7663d2c19ce5ef8288c790edba3d45af54e58c84f1b37b1249f6d49d962f3d91","signature":false,"impliedFormat":1},{"version":"5cce3b975cdb72b57ae7de745b3c5de5790781ee88bcb41ba142f07c0fa02e97","signature":false,"impliedFormat":1},{"version":"00bd6ebe607246b45296aa2b805bd6a58c859acecda154bfa91f5334d7c175c6","signature":false,"impliedFormat":1},{"version":"ad036a85efcd9e5b4f7dd5c1a7362c8478f9a3b6c3554654ca24a29aa850a9c5","signature":false,"impliedFormat":1},{"version":"fedebeae32c5cdd1a85b4e0504a01996e4a8adf3dfa72876920d3dd6e42978e7","signature":false,"impliedFormat":1},{"version":"0d28b974a7605c4eda20c943b3fa9ae16cb452c1666fc9b8c341b879992c7612","signature":false,"impliedFormat":1},{"version":"cdf21eee8007e339b1b9945abf4a7b44930b1d695cc528459e68a3adc39a622e","signature":false,"impliedFormat":1},{"version":"db036c56f79186da50af66511d37d9fe77fa6793381927292d17f81f787bb195","signature":false,"impliedFormat":1},{"version":"87ac2fb61e629e777f4d161dff534c2023ee15afd9cb3b1589b9b1f014e75c58","signature":false,"impliedFormat":1},{"version":"13c8b4348db91e2f7d694adc17e7438e6776bc506d5c8f5de9ad9989707fa3fe","signature":false,"impliedFormat":1},{"version":"3c1051617aa50b38e9efaabce25e10a5dd9b1f42e372ef0e8a674076a68742ed","signature":false,"impliedFormat":1},{"version":"07a3e20cdcb0f1182f452c0410606711fbea922ca76929a41aacb01104bc0d27","signature":false,"impliedFormat":1},{"version":"1de80059b8078ea5749941c9f863aa970b4735bdbb003be4925c853a8b6b4450","signature":false,"impliedFormat":1},{"version":"1d079c37fa53e3c21ed3fa214a27507bda9991f2a41458705b19ed8c2b61173d","signature":false,"impliedFormat":1},{"version":"4cd4b6b1279e9d744a3825cbd7757bbefe7f0708f3f1069179ad535f19e8ed2c","signature":false,"impliedFormat":1},{"version":"5835a6e0d7cd2738e56b671af0e561e7c1b4fb77751383672f4b009f4e161d70","signature":false,"impliedFormat":1},{"version":"c0eeaaa67c85c3bb6c52b629ebbfd3b2292dc67e8c0ffda2fc6cd2f78dc471e6","signature":false,"impliedFormat":1},{"version":"4b7f74b772140395e7af67c4841be1ab867c11b3b82a51b1aeb692822b76c872","signature":false,"impliedFormat":1},{"version":"27be6622e2922a1b412eb057faa854831b95db9db5035c3f6d4b677b902ab3b7","signature":false,"impliedFormat":1},{"version":"b95a6f019095dd1d48fd04965b50dfd63e5743a6e75478343c46d2582a5132bf","signature":false,"impliedFormat":99},{"version":"c2008605e78208cfa9cd70bd29856b72dda7ad89df5dc895920f8e10bcb9cd0a","signature":false,"impliedFormat":99},{"version":"b97cb5616d2ab82a98ec9ada7b9e9cabb1f5da880ec50ea2b8dc5baa4cbf3c16","signature":false,"impliedFormat":99},{"version":"d23df9ff06ae8bf1dcb7cc933e97ae7da418ac77749fecee758bb43a8d69f840","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"040c71dde2c406f869ad2f41e8d4ce579cc60c8dbe5aa0dd8962ac943b846572","signature":false,"affectsGlobalScope":true,"impliedFormat":1},{"version":"3586f5ea3cc27083a17bd5c9059ede9421d587286d5a47f4341a4c2d00e4fa91","signature":false,"impliedFormat":1},{"version":"a6df929821e62f4719551f7955b9f42c0cd53c1370aec2dd322e24196a7dfe33","signature":false,"impliedFormat":1},{"version":"b789bf89eb19c777ed1e956dbad0925ca795701552d22e68fd130a032008b9f9","signature":false,"impliedFormat":1},{"version":"9dd9d642cdb87d4d5b3173217e0c45429b3e47a6f5cf5fb0ead6c644ec5fed01","signature":false},{"version":"3abc57cf86dc493adadc03e206d2efc070bbc9e4f394f9a5c9fa56c467cf724d","signature":false,"affectsGlobalScope":true},{"version":"ce99ae8ab80cdc65e63c946ec05e7b7c0f847b8153555139add78d25f76dc83a","signature":false},{"version":"8849c270a045799bc72a03daf90f670b67878f3dfc9ef1c58e15e96dd643bbed","signature":false},{"version":"a2c4db206ae03d68c7590d45ad931e270d754779b70d20ff590ac134403b6531","signature":false},{"version":"5b0db3eecb54b662a0df219dbfce655675980715bd48a0010ea3b019d22d2f3b","signature":false},{"version":"117179c3e83bcb6135ab23f4c7f23c2873c111e2fd4fea91df6c4cce620ec977","signature":false},{"version":"370f98a39917baa5b5c1484f9e87d6544f568d9e90c5ddfcda4c2bdf86f16e18","signature":false},{"version":"4aae7433cc74dbe0abd1192e71755184b9a6a0869fbcf366056e5c09d400fe77","signature":false},{"version":"49ff09ed71411be1575b68fe206b06916a482fa8456a408359a4d6345f070cea","signature":false},{"version":"16b684acd5e3aee1cdaf4a1f4cbe64ea61f0c2b14a0d169f4d4ec9fe69fbe782","signature":false},{"version":"cd95d3123cad05acf27a414d747e4b01fee415a2d416981bf6d4516a7deba0f0","signature":false},{"version":"8eb784418acc7d4f19daa1562081dafc15068e83b4ecb6ad9261a3399bd5178d","signature":false},{"version":"ed6c9408ae349131ec76a5fcb56ee135c0539e727dedca9dd94bd02908aa28e5","signature":false},{"version":"468befcf257c922cd347e4269478bb5e85aab038419bf95d03d7b790fe31f3a8","signature":false},{"version":"0f84ec980137d904f174aee09c4a08a8a49dae6ab4f94ec781dbb19b241d6a06","signature":false},{"version":"e9a214ed959bf00c2c0ebc1c9969d64b605b8c920fbf67d32544b486feaa0ba8","signature":false},{"version":"91d0faaa789750b12a3cb62f2f3086a8661d1fc600d06fae1928da349f403fea","signature":false},{"version":"3191f65ae3ee3d047c8f29e175ecf390574250dc5f37cca1db96bad08f1f661c","signature":false},{"version":"f2673a1cbb563c41e19f6a5743d75483888892c3c05fc89fab27c86c64f515a3","signature":false},{"version":"6392353adcff7db02a3f5dcacb5637b791dbbcb76125aac3075da2519af9785a","signature":false,"impliedFormat":99},{"version":"1f3952b74b8c766a2e602a0ba2db19d3d872d00bab4e01746c6b7229c585086c","signature":false,"impliedFormat":99},{"version":"e67238b39f3733e91e1000f5abf105c096cf61ca75eb1671086f7ec68689f646","signature":false},{"version":"92ff2ee2addc582f09b4c2cc6d19f7010c1dc46a801493a67e816dad1728a702","signature":false},{"version":"8bd310bf0ef673cb7cf4161acf37b52870a644d54adb3880c9fcc93c8920f44f","signature":false},{"version":"a49f9c839d86efb90ca4d9c244b18fc9b304a0da9e748282b88f2a44b74c09aa","signature":false},{"version":"7c653e5a71dfd19c9795aad97844792bd453c09c9318507d2c37398a3b8da62f","signature":false},{"version":"2ab5d412ffa57dbca06de472201ddaea1c41b8a515c74667b7059bf334cbb20f","signature":false},{"version":"034d31e472e4e70878fdac24f6314c3355b5b065c3eba828a75f824a83c20341","signature":false},{"version":"3c0c4a0730704889504deb1457bd552134b43f6e2367cfa0d1378b881e779c81","signature":false},{"version":"76e93d96bc19a32eb66e4fd28c96e4d3ded687202893eabf550f835230add683","signature":false},{"version":"3913d85082a4eda81a195bacbd18a93aeb39103bf930ad397c69e1f7521ddf8d","signature":false},{"version":"623de97f632c3c7091a19759e01b1764a3a64aac3ae2ea890c410cc37fd4258e","signature":false},{"version":"ba9ca691d5427129c4c651d308fc027aa3bccdb6484ec90f016a4f2a77f9e7b9","signature":false},{"version":"2c04659a5a9897aee5307e3aad32283ee831ffc7918fcc2a4b7f50065ccfc25b","signature":false},{"version":"96d14f21b7652903852eef49379d04dbda28c16ed36468f8c9fa08f7c14c9538","signature":false,"impliedFormat":1}],"root":[[410,429],[432,444]],"options":{"allowJs":true,"composite":false,"declarationMap":false,"emitDeclarationOnly":false,"esModuleInterop":true,"jsx":1,"module":99,"skipLibCheck":true,"strict":true,"tsBuildInfoFile":"./.tsbuildinfo"},"referencedMap":[[438,1],[439,2],[440,3],[437,4],[441,5],[442,6],[443,7],[444,8],[410,9],[363,10],[445,10],[142,11],[143,11],[144,12],[99,13],[145,14],[146,15],[147,16],[94,10],[97,17],[95,10],[96,10],[148,18],[149,19],[150,20],[151,21],[152,22],[153,23],[154,23],[155,24],[156,25],[157,26],[158,27],[100,10],[98,10],[159,28],[160,29],[161,30],[193,31],[162,32],[163,33],[164,34],[165,35],[166,36],[167,37],[168,38],[169,39],[170,40],[171,41],[172,41],[173,42],[174,10],[175,43],[177,44],[176,45],[178,46],[179,47],[180,48],[181,49],[182,50],[183,51],[184,52],[185,53],[186,54],[187,55],[188,56],[189,57],[190,58],[101,10],[102,10],[103,10],[141,59],[191,60],[192,61],[86,10],[198,62],[199,63],[197,64],[195,65],[196,66],[84,10],[87,67],[286,64],[85,10],[431,68],[430,10],[93,69],[366,70],[370,71],[372,72],[219,73],[233,74],[337,75],[265,10],[340,76],[301,77],[310,78],[338,79],[220,80],[264,10],[266,81],[339,82],[240,83],[221,84],[245,83],[234,83],[204,83],[292,85],[293,86],[209,10],[289,87],[294,88],[381,89],[287,88],[382,90],[271,10],[290,91],[394,92],[393,93],[296,88],[392,10],[390,10],[391,94],[291,64],[278,95],[279,96],[288,97],[305,98],[306,99],[295,100],[273,101],[274,102],[385,103],[388,104],[252,105],[251,106],[250,107],[397,64],[249,108],[225,10],[400,10],[403,10],[402,64],[404,109],[200,10],[331,10],[232,110],[202,111],[354,10],[355,10],[357,10],[360,112],[356,10],[358,113],[359,113],[218,10],[231,10],[365,114],[373,115],[377,116],[214,117],[281,118],[280,10],[272,101],[300,119],[298,120],[297,10],[299,10],[304,121],[276,122],[213,123],[238,124],[328,125],[205,126],[212,127],[201,75],[342,128],[352,129],[341,10],[351,130],[239,10],[223,131],[319,132],[318,10],[325,133],[327,134],[320,135],[324,136],[326,133],[323,135],[322,133],[321,135],[261,137],[246,137],[313,138],[247,138],[207,139],[206,10],[317,140],[316,141],[315,142],[314,143],[208,144],[285,145],[302,146],[284,147],[309,148],[311,149],[308,147],[241,144],[194,10],[329,150],[267,151],[303,10],[350,152],[270,153],[345,154],[211,10],[346,155],[348,156],[349,157],[332,10],[344,126],[243,158],[330,159],[353,160],[215,10],[217,10],[222,161],[312,162],[210,163],[216,10],[269,164],[268,165],[224,166],[277,167],[275,168],[226,169],[228,170],[401,10],[227,171],[229,172],[368,10],[367,10],[369,10],[399,10],[230,173],[283,64],[92,10],[307,174],[253,10],[263,175],[242,10],[375,64],[384,176],[260,64],[379,88],[259,177],[362,178],[258,176],[203,10],[386,179],[256,64],[257,64],[248,10],[262,10],[255,180],[254,181],[244,182],[237,100],[347,10],[236,183],[235,10],[371,10],[282,64],[364,184],[83,10],[91,185],[88,64],[89,10],[90,10],[343,186],[336,187],[335,10],[334,188],[333,10],[374,189],[376,190],[378,191],[380,192],[383,193],[409,194],[387,194],[408,195],[389,196],[395,197],[396,198],[398,199],[405,200],[407,10],[406,201],[361,202],[81,10],[82,10],[13,10],[14,10],[16,10],[15,10],[2,10],[17,10],[18,10],[19,10],[20,10],[21,10],[22,10],[23,10],[24,10],[3,10],[25,10],[26,10],[4,10],[27,10],[31,10],[28,10],[29,10],[30,10],[32,10],[33,10],[34,10],[5,10],[35,10],[36,10],[37,10],[38,10],[6,10],[42,10],[39,10],[40,10],[41,10],[43,10],[7,10],[44,10],[49,10],[50,10],[45,10],[46,10],[47,10],[48,10],[8,10],[54,10],[51,10],[52,10],[53,10],[55,10],[9,10],[56,10],[57,10],[58,10],[60,10],[59,10],[61,10],[62,10],[10,10],[63,10],[64,10],[65,10],[11,10],[66,10],[67,10],[68,10],[69,10],[70,10],[1,10],[71,10],[72,10],[12,10],[76,10],[74,10],[79,10],[78,10],[73,10],[77,10],[75,10],[80,10],[119,203],[129,204],[118,203],[139,205],[110,206],[109,207],[138,201],[132,208],[137,209],[112,210],[126,211],[111,212],[135,213],[107,214],[106,201],[136,215],[108,216],[113,217],[114,10],[117,217],[104,10],[140,218],[130,219],[121,220],[122,221],[124,222],[120,223],[123,224],[133,201],[115,225],[116,226],[125,227],[105,228],[128,219],[127,217],[131,10],[134,229],[412,230],[426,231],[421,232],[427,233],[425,234],[428,235],[429,236],[435,237],[436,238],[417,233],[433,239],[418,231],[432,239],[422,240],[420,241],[434,239],[424,240],[423,240],[419,242],[416,231],[413,64],[414,10],[415,10],[411,10]],"changeFileSet":[438,439,440,437,441,442,443,444,410,363,445,142,143,144,99,145,146,147,94,97,95,96,148,149,150,151,152,153,154,155,156,157,158,100,98,159,160,161,193,162,163,164,165,166,167,168,169,170,171,172,173,174,175,177,176,178,179,180,181,182,183,184,185,186,187,188,189,190,101,102,103,141,191,192,86,198,199,197,195,196,84,87,286,85,431,430,93,366,370,372,219,233,337,265,340,301,310,338,220,264,266,339,240,221,245,234,204,292,293,209,289,294,381,287,382,271,290,394,393,296,392,390,391,291,278,279,288,305,306,295,273,274,385,388,252,251,250,397,249,225,400,403,402,404,200,331,232,202,354,355,357,360,356,358,359,218,231,365,373,377,214,281,280,272,300,298,297,299,304,276,213,238,328,205,212,201,342,352,341,351,239,223,319,318,325,327,320,324,326,323,322,321,261,246,313,247,207,206,317,316,315,314,208,285,302,284,309,311,308,241,194,329,267,303,350,270,345,211,346,348,349,332,344,243,330,353,215,217,222,312,210,216,269,268,224,277,275,226,228,401,227,229,368,367,369,399,230,283,92,307,253,263,242,375,384,260,379,259,362,258,203,386,256,257,248,262,255,254,244,237,347,236,235,371,282,364,83,91,88,89,90,343,336,335,334,333,374,376,378,380,383,409,387,408,389,395,396,398,405,407,406,361,81,82,13,14,16,15,2,17,18,19,20,21,22,23,24,3,25,26,4,27,31,28,29,30,32,33,34,5,35,36,37,38,6,42,39,40,41,43,7,44,49,50,45,46,47,48,8,54,51,52,53,55,9,56,57,58,60,59,61,62,10,63,64,65,11,66,67,68,69,70,1,71,72,12,76,74,79,78,73,77,75,80,119,129,118,139,110,109,138,132,137,112,126,111,135,107,106,136,108,113,114,117,104,140,130,121,122,124,120,123,133,115,116,125,105,128,127,131,134,412,426,421,427,425,428,429,435,436,417,433,418,432,422,420,434,424,423,419,416,413,414,415,411],"version":"5.9.3"} \ No newline at end of file diff --git a/frontend/.next/cache/webpack/edge-server-production/index.pack b/frontend/.next/cache/webpack/edge-server-production/index.pack index 312ec006689d7a783d26a21b524bcbdf25bbbdf5..146b5b442642c85f613a2b77f466bd3da562fda7 100644 GIT binary patch delta 761 zcmYjP%TE(w5YNY>&}A!1GNrtfM^Y%zrQ1><#wDAW_&7)@N+3#NO1nT!*@bQ^@E52+ z4ee-*7mNpEyr5DN#%qtdRMwZN_>N?!i-yn;WF2r(J zsu1u_xsJ?h=#+&av-FV}QUm^OjOMJ`WBW41dd|-A{Dc}B2}nNcC3RSIay-Y6cZbz( zWklq;2F^B#cZ-Zpk=M8m$8E1i_J>u;8t{iCO0aPbo6W{IHZ{aVb;w)SCj|zipeoup zC+EZswy_yiB^>lh)_%_bO`sAQ8Ie7*;`fOT&Y|TG_`Ql(2`E%Y(>Z=D*{*2knz(p} zVJW-dCCtJLn1@%e0I%T{oo@fTZ4wx(hI2G^3Dj zA)DwfZ^3O7gU|DISZmUg@B1nT;!aam8cFPxSUpQN_I@`DpJ8jc3n%qDv@-&_idlSo z#HFo)eAHNsC`-ekI!V5~mRiTbWW?(3Cw;h~K0Z~_MMw%hY|QAD!|zil!}vVGA-`;; zBn1(FU>=?^cMaub>TxurD>^W%DTv>WM6ctw5N8mOkHBeOx!ACanK^*uR~f5H#= Y0$Z>FUm*eC@JS73?EGmP#g_S&Hqh_PhC0&zpFXdodf(_w%yL#K3Tkd;dx zJVJYn#)J(E-16wc1q*p-5fl?iOoH#cfapD-#IzC-dyj}_Y#sp zQrAJYaGgJo$?_nE%pBQ6iNAy=%)ykEBOB;~cJdr0XFDF4?~_b2e6BpE%DSv;dfeD% z`XDa4IkL_^Ok;+oMmCb+V6ha{)d6OiZJRa5CNyQhd&9UX2B<)V)KFZKmBEDO9W=x< zw22DBBUy^72}AK}>X;%5)JOe3pHFCMZN>+jvnC}PDa)0o$0VzJNM!iye1Q(rQHt`EM=i+e5(Mz(7)KzlSS(c5w4JDzTS4Ca^2YAk z>x>t|Mc`KI4hzh8;T}xFG)&=qbqG6oD4c=mR9z=tt>u1{wSLepDK| z(ZR6C^_3R514sHP<}j0G3xLF3m6zyc9Im=09Ci1g*0{hV7xB1fwD=RefjzwKaaq2= ad-w|9-~;T#N66t54;EFZmAA0#l=UZu7Vr}Q diff --git a/frontend/.next/react-loadable-manifest.json b/frontend/.next/react-loadable-manifest.json index 9e26dfee..974ff53f 100644 --- a/frontend/.next/react-loadable-manifest.json +++ b/frontend/.next/react-loadable-manifest.json @@ -1 +1,20 @@ -{} \ No newline at end of file +{ + "components/capital-flow.tsx -> echarts": { + "id": 9614, + "files": [ + "static/chunks/614.2cf8795c6fba79f8.js" + ] + }, + "components/kline-chart.tsx -> echarts": { + "id": 9614, + "files": [ + "static/chunks/614.2cf8795c6fba79f8.js" + ] + }, + "components/score-radar.tsx -> echarts": { + "id": 9614, + "files": [ + "static/chunks/614.2cf8795c6fba79f8.js" + ] + } +} \ No newline at end of file diff --git a/frontend/.next/server/app-paths-manifest.json b/frontend/.next/server/app-paths-manifest.json index 15f0208a..0a445c82 100644 --- a/frontend/.next/server/app-paths-manifest.json +++ b/frontend/.next/server/app-paths-manifest.json @@ -1,6 +1,11 @@ { + "/_not-found/page": "app/_not-found/page.js", + "/login/page": "app/login/page.js", + "/api/chat/stream/route": "app/api/chat/stream/route.js", "/page": "app/page.js", - "/sectors/page": "app/sectors/page.js", "/recommendations/page": "app/recommendations/page.js", - "/chat/page": "app/chat/page.js" + "/sectors/page": "app/sectors/page.js", + "/chat/page": "app/chat/page.js", + "/stock/[code]/page": "app/stock/[code]/page.js", + "/users/page": "app/users/page.js" } \ No newline at end of file diff --git a/frontend/.next/server/app/recommendations/page.js b/frontend/.next/server/app/recommendations/page.js index ebc3ae28..7b9903b1 100644 --- a/frontend/.next/server/app/recommendations/page.js +++ b/frontend/.next/server/app/recommendations/page.js @@ -1,205 +1 @@ -/* - * 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/recommendations/page"; -exports.ids = ["app/recommendations/page"]; -exports.modules = { - -/***/ "../../client/components/action-async-storage.external": -/*!*******************************************************************************!*\ - !*** external "next/dist/client/components/action-async-storage.external.js" ***! - \*******************************************************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = require("next/dist/client/components/action-async-storage.external.js"); - -/***/ }), - -/***/ "../../client/components/request-async-storage.external": -/*!********************************************************************************!*\ - !*** external "next/dist/client/components/request-async-storage.external.js" ***! - \********************************************************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = require("next/dist/client/components/request-async-storage.external.js"); - -/***/ }), - -/***/ "../../client/components/static-generation-async-storage.external": -/*!******************************************************************************************!*\ - !*** external "next/dist/client/components/static-generation-async-storage.external.js" ***! - \******************************************************************************************/ -/***/ ((module) => { - -"use strict"; -module.exports = require("next/dist/client/components/static-generation-async-storage.external.js"); - -/***/ }), - -/***/ "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"); - -/***/ }), - -/***/ "(rsc)/./node_modules/next/dist/build/webpack/loaders/next-app-loader.js?name=app%2Frecommendations%2Fpage&page=%2Frecommendations%2Fpage&appPaths=%2Frecommendations%2Fpage&pagePath=private-next-app-dir%2Frecommendations%2Fpage.tsx&appDir=%2FUsers%2Faaron%2Fsource_code%2Fastock-agent%2Ffrontend%2Fsrc%2Fapp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=%2FUsers%2Faaron%2Fsource_code%2Fastock-agent%2Ffrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!": -/*!****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\ - !*** ./node_modules/next/dist/build/webpack/loaders/next-app-loader.js?name=app%2Frecommendations%2Fpage&page=%2Frecommendations%2Fpage&appPaths=%2Frecommendations%2Fpage&pagePath=private-next-app-dir%2Frecommendations%2Fpage.tsx&appDir=%2FUsers%2Faaron%2Fsource_code%2Fastock-agent%2Ffrontend%2Fsrc%2Fapp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=%2FUsers%2Faaron%2Fsource_code%2Fastock-agent%2Ffrontend&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 */ originalPathname: () => (/* binding */ originalPathname),\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_future_route_modules_app_page_module_compiled__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! next/dist/server/future/route-modules/app-page/module.compiled */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/module.compiled.js?d969\");\n/* harmony import */ var next_dist_server_future_route_modules_app_page_module_compiled__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(next_dist_server_future_route_modules_app_page_module_compiled__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var next_dist_server_future_route_kind__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! next/dist/server/future/route-kind */ \"(rsc)/./node_modules/next/dist/server/future/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\",\"originalPathname\",\"__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__);\n\"TURBOPACK { transition: next-ssr }\";\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: [\n 'recommendations',\n {\n children: ['__PAGE__', {}, {\n page: [() => Promise.resolve(/*! import() eager */).then(__webpack_require__.bind(__webpack_require__, /*! ./src/app/recommendations/page.tsx */ \"(rsc)/./src/app/recommendations/page.tsx\")), \"/Users/aaron/source_code/astock-agent/frontend/src/app/recommendations/page.tsx\"],\n \n }]\n },\n {\n \n \n }\n ]\n },\n {\n 'layout': [() => Promise.resolve(/*! import() eager */).then(__webpack_require__.bind(__webpack_require__, /*! ./src/app/layout.tsx */ \"(rsc)/./src/app/layout.tsx\")), \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\"],\n'not-found': [() => 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)), \"next/dist/client/components/not-found-error\"],\n \n }\n ]\n }.children;\nconst pages = [\"/Users/aaron/source_code/astock-agent/frontend/src/app/recommendations/page.tsx\"];\n\n\nconst __next_app_require__ = __webpack_require__\nconst __next_app_load_chunk__ = () => Promise.resolve()\nconst originalPathname = \"/recommendations/page\";\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_future_route_modules_app_page_module_compiled__WEBPACK_IMPORTED_MODULE_0__.AppPageRouteModule({\n definition: {\n kind: next_dist_server_future_route_kind__WEBPACK_IMPORTED_MODULE_1__.RouteKind.APP_PAGE,\n page: \"/recommendations/page\",\n pathname: \"/recommendations\",\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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2J1aWxkL3dlYnBhY2svbG9hZGVycy9uZXh0LWFwcC1sb2FkZXIuanM/bmFtZT1hcHAlMkZyZWNvbW1lbmRhdGlvbnMlMkZwYWdlJnBhZ2U9JTJGcmVjb21tZW5kYXRpb25zJTJGcGFnZSZhcHBQYXRocz0lMkZyZWNvbW1lbmRhdGlvbnMlMkZwYWdlJnBhZ2VQYXRoPXByaXZhdGUtbmV4dC1hcHAtZGlyJTJGcmVjb21tZW5kYXRpb25zJTJGcGFnZS50c3gmYXBwRGlyPSUyRlVzZXJzJTJGYWFyb24lMkZzb3VyY2VfY29kZSUyRmFzdG9jay1hZ2VudCUyRmZyb250ZW5kJTJGc3JjJTJGYXBwJnBhZ2VFeHRlbnNpb25zPXRzeCZwYWdlRXh0ZW5zaW9ucz10cyZwYWdlRXh0ZW5zaW9ucz1qc3gmcGFnZUV4dGVuc2lvbnM9anMmcm9vdERpcj0lMkZVc2VycyUyRmFhcm9uJTJGc291cmNlX2NvZGUlMkZhc3RvY2stYWdlbnQlMkZmcm9udGVuZCZpc0Rldj10cnVlJnRzY29uZmlnUGF0aD10c2NvbmZpZy5qc29uJmJhc2VQYXRoPSZhc3NldFByZWZpeD0mbmV4dENvbmZpZ091dHB1dD0mcHJlZmVycmVkUmVnaW9uPSZtaWRkbGV3YXJlQ29uZmlnPWUzMCUzRCEiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGFBQWEsc0JBQXNCO0FBQ2lFO0FBQ3JDO0FBQy9EO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlDQUFpQztBQUNqQyx1QkFBdUIsZ0xBQW9IO0FBQzNJO0FBQ0EsU0FBUztBQUNULE9BQU87QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0EseUJBQXlCLG9KQUFzRztBQUMvSCxvQkFBb0IsME5BQWdGO0FBQ3BHO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUN1QjtBQUM2RDtBQUNwRiw2QkFBNkIsbUJBQW1CO0FBQ2hEO0FBQ087QUFDQTtBQUNQO0FBQ0E7QUFDQTtBQUN1RDtBQUN2RDtBQUNPLHdCQUF3Qiw4R0FBa0I7QUFDakQ7QUFDQSxjQUFjLHlFQUFTO0FBQ3ZCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQSxDQUFDOztBQUVEIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vYXN0b2NrLWFnZW50LWZyb250ZW5kLz9hMWFmIl0sInNvdXJjZXNDb250ZW50IjpbIlwiVFVSQk9QQUNLIHsgdHJhbnNpdGlvbjogbmV4dC1zc3IgfVwiO1xuaW1wb3J0IHsgQXBwUGFnZVJvdXRlTW9kdWxlIH0gZnJvbSBcIm5leHQvZGlzdC9zZXJ2ZXIvZnV0dXJlL3JvdXRlLW1vZHVsZXMvYXBwLXBhZ2UvbW9kdWxlLmNvbXBpbGVkXCI7XG5pbXBvcnQgeyBSb3V0ZUtpbmQgfSBmcm9tIFwibmV4dC9kaXN0L3NlcnZlci9mdXR1cmUvcm91dGUta2luZFwiO1xuLy8gV2UgaW5qZWN0IHRoZSB0cmVlIGFuZCBwYWdlcyBoZXJlIHNvIHRoYXQgd2UgY2FuIHVzZSB0aGVtIGluIHRoZSByb3V0ZVxuLy8gbW9kdWxlLlxuY29uc3QgdHJlZSA9IHtcbiAgICAgICAgY2hpbGRyZW46IFtcbiAgICAgICAgJycsXG4gICAgICAgIHtcbiAgICAgICAgY2hpbGRyZW46IFtcbiAgICAgICAgJ3JlY29tbWVuZGF0aW9ucycsXG4gICAgICAgIHtcbiAgICAgICAgY2hpbGRyZW46IFsnX19QQUdFX18nLCB7fSwge1xuICAgICAgICAgIHBhZ2U6IFsoKSA9PiBpbXBvcnQoLyogd2VicGFja01vZGU6IFwiZWFnZXJcIiAqLyBcIi9Vc2Vycy9hYXJvbi9zb3VyY2VfY29kZS9hc3RvY2stYWdlbnQvZnJvbnRlbmQvc3JjL2FwcC9yZWNvbW1lbmRhdGlvbnMvcGFnZS50c3hcIiksIFwiL1VzZXJzL2Fhcm9uL3NvdXJjZV9jb2RlL2FzdG9jay1hZ2VudC9mcm9udGVuZC9zcmMvYXBwL3JlY29tbWVuZGF0aW9ucy9wYWdlLnRzeFwiXSxcbiAgICAgICAgICBcbiAgICAgICAgfV1cbiAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgXG4gICAgICAgIFxuICAgICAgfVxuICAgICAgXVxuICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAnbGF5b3V0JzogWygpID0+IGltcG9ydCgvKiB3ZWJwYWNrTW9kZTogXCJlYWdlclwiICovIFwiL1VzZXJzL2Fhcm9uL3NvdXJjZV9jb2RlL2FzdG9jay1hZ2VudC9mcm9udGVuZC9zcmMvYXBwL2xheW91dC50c3hcIiksIFwiL1VzZXJzL2Fhcm9uL3NvdXJjZV9jb2RlL2FzdG9jay1hZ2VudC9mcm9udGVuZC9zcmMvYXBwL2xheW91dC50c3hcIl0sXG4nbm90LWZvdW5kJzogWygpID0+IGltcG9ydCgvKiB3ZWJwYWNrTW9kZTogXCJlYWdlclwiICovIFwibmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL25vdC1mb3VuZC1lcnJvclwiKSwgXCJuZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvbm90LWZvdW5kLWVycm9yXCJdLFxuICAgICAgICBcbiAgICAgIH1cbiAgICAgIF1cbiAgICAgIH0uY2hpbGRyZW47XG5jb25zdCBwYWdlcyA9IFtcIi9Vc2Vycy9hYXJvbi9zb3VyY2VfY29kZS9hc3RvY2stYWdlbnQvZnJvbnRlbmQvc3JjL2FwcC9yZWNvbW1lbmRhdGlvbnMvcGFnZS50c3hcIl07XG5leHBvcnQgeyB0cmVlLCBwYWdlcyB9O1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBHbG9iYWxFcnJvciB9IGZyb20gXCJuZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvZXJyb3ItYm91bmRhcnlcIjtcbmNvbnN0IF9fbmV4dF9hcHBfcmVxdWlyZV9fID0gX193ZWJwYWNrX3JlcXVpcmVfX1xuY29uc3QgX19uZXh0X2FwcF9sb2FkX2NodW5rX18gPSAoKSA9PiBQcm9taXNlLnJlc29sdmUoKVxuZXhwb3J0IGNvbnN0IG9yaWdpbmFsUGF0aG5hbWUgPSBcIi9yZWNvbW1lbmRhdGlvbnMvcGFnZVwiO1xuZXhwb3J0IGNvbnN0IF9fbmV4dF9hcHBfXyA9IHtcbiAgICByZXF1aXJlOiBfX25leHRfYXBwX3JlcXVpcmVfXyxcbiAgICBsb2FkQ2h1bms6IF9fbmV4dF9hcHBfbG9hZF9jaHVua19fXG59O1xuZXhwb3J0ICogZnJvbSBcIm5leHQvZGlzdC9zZXJ2ZXIvYXBwLXJlbmRlci9lbnRyeS1iYXNlXCI7XG4vLyBDcmVhdGUgYW5kIGV4cG9ydCB0aGUgcm91dGUgbW9kdWxlIHRoYXQgd2lsbCBiZSBjb25zdW1lZC5cbmV4cG9ydCBjb25zdCByb3V0ZU1vZHVsZSA9IG5ldyBBcHBQYWdlUm91dGVNb2R1bGUoe1xuICAgIGRlZmluaXRpb246IHtcbiAgICAgICAga2luZDogUm91dGVLaW5kLkFQUF9QQUdFLFxuICAgICAgICBwYWdlOiBcIi9yZWNvbW1lbmRhdGlvbnMvcGFnZVwiLFxuICAgICAgICBwYXRobmFtZTogXCIvcmVjb21tZW5kYXRpb25zXCIsXG4gICAgICAgIC8vIFRoZSBmb2xsb3dpbmcgYXJlbid0IHVzZWQgaW4gcHJvZHVjdGlvbi5cbiAgICAgICAgYnVuZGxlUGF0aDogXCJcIixcbiAgICAgICAgZmlsZW5hbWU6IFwiXCIsXG4gICAgICAgIGFwcFBhdGhzOiBbXVxuICAgIH0sXG4gICAgdXNlcmxhbmQ6IHtcbiAgICAgICAgbG9hZGVyVHJlZTogdHJlZVxuICAgIH1cbn0pO1xuXG4vLyMgc291cmNlTWFwcGluZ1VSTD1hcHAtcGFnZS5qcy5tYXAiXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/next/dist/build/webpack/loaders/next-app-loader.js?name=app%2Frecommendations%2Fpage&page=%2Frecommendations%2Fpage&appPaths=%2Frecommendations%2Fpage&pagePath=private-next-app-dir%2Frecommendations%2Fpage.tsx&appDir=%2FUsers%2Faaron%2Fsource_code%2Fastock-agent%2Ffrontend%2Fsrc%2Fapp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=%2FUsers%2Faaron%2Fsource_code%2Fastock-agent%2Ffrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/next/dist/build/webpack/loaders/next-flight-client-entry-loader.js?modules=%7B%22request%22%3A%22%2FUsers%2Faaron%2Fsource_code%2Fastock-agent%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fapp-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Faaron%2Fsource_code%2Fastock-agent%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fclient-page.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Faaron%2Fsource_code%2Fastock-agent%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Ferror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Faaron%2Fsource_code%2Fastock-agent%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Flayout-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Faaron%2Fsource_code%2Fastock-agent%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fnot-found-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Faaron%2Fsource_code%2Fastock-agent%2Ffrontend%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%2Faaron%2Fsource_code%2Fastock-agent%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fapp-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Faaron%2Fsource_code%2Fastock-agent%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fclient-page.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Faaron%2Fsource_code%2Fastock-agent%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Ferror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Faaron%2Fsource_code%2Fastock-agent%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Flayout-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Faaron%2Fsource_code%2Fastock-agent%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fnot-found-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Faaron%2Fsource_code%2Fastock-agent%2Ffrontend%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/app-router.js */ \"(ssr)/./node_modules/next/dist/client/components/app-router.js\", 23));\n;\nPromise.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/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/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/not-found-boundary.js */ \"(ssr)/./node_modules/next/dist/client/components/not-found-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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2J1aWxkL3dlYnBhY2svbG9hZGVycy9uZXh0LWZsaWdodC1jbGllbnQtZW50cnktbG9hZGVyLmpzP21vZHVsZXM9JTdCJTIycmVxdWVzdCUyMiUzQSUyMiUyRlVzZXJzJTJGYWFyb24lMkZzb3VyY2VfY29kZSUyRmFzdG9jay1hZ2VudCUyRmZyb250ZW5kJTJGbm9kZV9tb2R1bGVzJTJGbmV4dCUyRmRpc3QlMkZjbGllbnQlMkZjb21wb25lbnRzJTJGYXBwLXJvdXRlci5qcyUyMiUyQyUyMmlkcyUyMiUzQSU1QiU1RCU3RCZtb2R1bGVzPSU3QiUyMnJlcXVlc3QlMjIlM0ElMjIlMkZVc2VycyUyRmFhcm9uJTJGc291cmNlX2NvZGUlMkZhc3RvY2stYWdlbnQlMkZmcm9udGVuZCUyRm5vZGVfbW9kdWxlcyUyRm5leHQlMkZkaXN0JTJGY2xpZW50JTJGY29tcG9uZW50cyUyRmNsaWVudC1wYWdlLmpzJTIyJTJDJTIyaWRzJTIyJTNBJTVCJTVEJTdEJm1vZHVsZXM9JTdCJTIycmVxdWVzdCUyMiUzQSUyMiUyRlVzZXJzJTJGYWFyb24lMkZzb3VyY2VfY29kZSUyRmFzdG9jay1hZ2VudCUyRmZyb250ZW5kJTJGbm9kZV9tb2R1bGVzJTJGbmV4dCUyRmRpc3QlMkZjbGllbnQlMkZjb21wb25lbnRzJTJGZXJyb3ItYm91bmRhcnkuanMlMjIlMkMlMjJpZHMlMjIlM0ElNUIlNUQlN0QmbW9kdWxlcz0lN0IlMjJyZXF1ZXN0JTIyJTNBJTIyJTJGVXNlcnMlMkZhYXJvbiUyRnNvdXJjZV9jb2RlJTJGYXN0b2NrLWFnZW50JTJGZnJvbnRlbmQlMkZub2RlX21vZHVsZXMlMkZuZXh0JTJGZGlzdCUyRmNsaWVudCUyRmNvbXBvbmVudHMlMkZsYXlvdXQtcm91dGVyLmpzJTIyJTJDJTIyaWRzJTIyJTNBJTVCJTVEJTdEJm1vZHVsZXM9JTdCJTIycmVxdWVzdCUyMiUzQSUyMiUyRlVzZXJzJTJGYWFyb24lMkZzb3VyY2VfY29kZSUyRmFzdG9jay1hZ2VudCUyRmZyb250ZW5kJTJGbm9kZV9tb2R1bGVzJTJGbmV4dCUyRmRpc3QlMkZjbGllbnQlMkZjb21wb25lbnRzJTJGbm90LWZvdW5kLWJvdW5kYXJ5LmpzJTIyJTJDJTIyaWRzJTIyJTNBJTVCJTVEJTdEJm1vZHVsZXM9JTdCJTIycmVxdWVzdCUyMiUzQSUyMiUyRlVzZXJzJTJGYWFyb24lMkZzb3VyY2VfY29kZSUyRmFzdG9jay1hZ2VudCUyRmZyb250ZW5kJTJGbm9kZV9tb2R1bGVzJTJGbmV4dCUyRmRpc3QlMkZjbGllbnQlMkZjb21wb25lbnRzJTJGcmVuZGVyLWZyb20tdGVtcGxhdGUtY29udGV4dC5qcyUyMiUyQyUyMmlkcyUyMiUzQSU1QiU1RCU3RCZzZXJ2ZXI9dHJ1ZSEiLCJtYXBwaW5ncyI6IkFBQUEsa09BQTBJO0FBQzFJO0FBQ0Esb09BQTJJO0FBQzNJO0FBQ0EsME9BQThJO0FBQzlJO0FBQ0Esd09BQTZJO0FBQzdJO0FBQ0Esa1BBQWtKO0FBQ2xKO0FBQ0Esc1FBQTRKIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vYXN0b2NrLWFnZW50LWZyb250ZW5kLz8zMTdlIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCgvKiB3ZWJwYWNrTW9kZTogXCJlYWdlclwiICovIFwiL1VzZXJzL2Fhcm9uL3NvdXJjZV9jb2RlL2FzdG9jay1hZ2VudC9mcm9udGVuZC9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL2FwcC1yb3V0ZXIuanNcIik7XG47XG5pbXBvcnQoLyogd2VicGFja01vZGU6IFwiZWFnZXJcIiAqLyBcIi9Vc2Vycy9hYXJvbi9zb3VyY2VfY29kZS9hc3RvY2stYWdlbnQvZnJvbnRlbmQvbm9kZV9tb2R1bGVzL25leHQvZGlzdC9jbGllbnQvY29tcG9uZW50cy9jbGllbnQtcGFnZS5qc1wiKTtcbjtcbmltcG9ydCgvKiB3ZWJwYWNrTW9kZTogXCJlYWdlclwiICovIFwiL1VzZXJzL2Fhcm9uL3NvdXJjZV9jb2RlL2FzdG9jay1hZ2VudC9mcm9udGVuZC9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL2Vycm9yLWJvdW5kYXJ5LmpzXCIpO1xuO1xuaW1wb3J0KC8qIHdlYnBhY2tNb2RlOiBcImVhZ2VyXCIgKi8gXCIvVXNlcnMvYWFyb24vc291cmNlX2NvZGUvYXN0b2NrLWFnZW50L2Zyb250ZW5kL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvbGF5b3V0LXJvdXRlci5qc1wiKTtcbjtcbmltcG9ydCgvKiB3ZWJwYWNrTW9kZTogXCJlYWdlclwiICovIFwiL1VzZXJzL2Fhcm9uL3NvdXJjZV9jb2RlL2FzdG9jay1hZ2VudC9mcm9udGVuZC9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL25vdC1mb3VuZC1ib3VuZGFyeS5qc1wiKTtcbjtcbmltcG9ydCgvKiB3ZWJwYWNrTW9kZTogXCJlYWdlclwiICovIFwiL1VzZXJzL2Fhcm9uL3NvdXJjZV9jb2RlL2FzdG9jay1hZ2VudC9mcm9udGVuZC9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlbmRlci1mcm9tLXRlbXBsYXRlLWNvbnRleHQuanNcIik7XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\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%2Faaron%2Fsource_code%2Fastock-agent%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fapp-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Faaron%2Fsource_code%2Fastock-agent%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fclient-page.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Faaron%2Fsource_code%2Fastock-agent%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Ferror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Faaron%2Fsource_code%2Fastock-agent%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Flayout-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Faaron%2Fsource_code%2Fastock-agent%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fnot-found-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Faaron%2Fsource_code%2Fastock-agent%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Frender-from-template-context.js%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%2Faaron%2Fsource_code%2Fastock-agent%2Ffrontend%2Fsrc%2Fapp%2Fglobals.css%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%2Faaron%2Fsource_code%2Fastock-agent%2Ffrontend%2Fsrc%2Fapp%2Fglobals.css%22%2C%22ids%22%3A%5B%5D%7D&server=true! ***! - \**************************************************************************************************************************************************************************************************************************************************/ -/***/ (() => { - - - -/***/ }), - -/***/ "(ssr)/./node_modules/next/dist/build/webpack/loaders/next-flight-client-entry-loader.js?modules=%7B%22request%22%3A%22%2FUsers%2Faaron%2Fsource_code%2Fastock-agent%2Ffrontend%2Fsrc%2Fapp%2Frecommendations%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%2Faaron%2Fsource_code%2Fastock-agent%2Ffrontend%2Fsrc%2Fapp%2Frecommendations%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__, /*! ./src/app/recommendations/page.tsx */ \"(ssr)/./src/app/recommendations/page.tsx\"));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2J1aWxkL3dlYnBhY2svbG9hZGVycy9uZXh0LWZsaWdodC1jbGllbnQtZW50cnktbG9hZGVyLmpzP21vZHVsZXM9JTdCJTIycmVxdWVzdCUyMiUzQSUyMiUyRlVzZXJzJTJGYWFyb24lMkZzb3VyY2VfY29kZSUyRmFzdG9jay1hZ2VudCUyRmZyb250ZW5kJTJGc3JjJTJGYXBwJTJGcmVjb21tZW5kYXRpb25zJTJGcGFnZS50c3glMjIlMkMlMjJpZHMlMjIlM0ElNUIlNUQlN0Qmc2VydmVyPXRydWUhIiwibWFwcGluZ3MiOiJBQUFBLGdMQUFvSCIsInNvdXJjZXMiOlsid2VicGFjazovL2FzdG9jay1hZ2VudC1mcm9udGVuZC8/ZTFlMCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQoLyogd2VicGFja01vZGU6IFwiZWFnZXJcIiAqLyBcIi9Vc2Vycy9hYXJvbi9zb3VyY2VfY29kZS9hc3RvY2stYWdlbnQvZnJvbnRlbmQvc3JjL2FwcC9yZWNvbW1lbmRhdGlvbnMvcGFnZS50c3hcIik7XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\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%2Faaron%2Fsource_code%2Fastock-agent%2Ffrontend%2Fsrc%2Fapp%2Frecommendations%2Fpage.tsx%22%2C%22ids%22%3A%5B%5D%7D&server=true!\n"); - -/***/ }), - -/***/ "(ssr)/./src/app/recommendations/page.tsx": -/*!******************************************!*\ - !*** ./src/app/recommendations/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 */ RecommendationsPage)\n/* harmony export */ });\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-dev-runtime */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react-jsx-dev-runtime.js\");\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _lib_api__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/lib/api */ \"(ssr)/./src/lib/api.ts\");\n/* harmony import */ var _components_stock_card__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/components/stock-card */ \"(ssr)/./src/components/stock-card.tsx\");\n/* harmony import */ var _hooks_use_websocket__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @/hooks/use-websocket */ \"(ssr)/./src/hooks/use-websocket.ts\");\n/* __next_internal_client_entry_do_not_use__ default auto */ \n\n\n\n\nfunction RecommendationsPage() {\n const [data, setData] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n const [filter, setFilter] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(\"all\");\n const [llmEnabled, setLlmEnabled] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false);\n const loadData = (0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)(async ()=>{\n try {\n const [result, health] = await Promise.all([\n (0,_lib_api__WEBPACK_IMPORTED_MODULE_2__.fetchAPI)(\"/api/recommendations/latest\"),\n (0,_lib_api__WEBPACK_IMPORTED_MODULE_2__.fetchAPI)(\"/api/health\")\n ]);\n setData(result);\n setLlmEnabled(health.llm_enabled);\n } catch (e) {\n console.error(\"加载推荐失败:\", e);\n }\n }, []);\n (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(()=>{\n loadData();\n }, [\n loadData\n ]);\n (0,_hooks_use_websocket__WEBPACK_IMPORTED_MODULE_4__.useWebSocket)((0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)(()=>{\n loadData();\n }, [\n loadData\n ]));\n const recs = data?.recommendations ?? [];\n const filtered = filter === \"all\" ? recs : filter === \"buy\" ? recs.filter((r)=>r.signal === \"BUY\") : recs.filter((r)=>r.level === filter);\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"max-w-7xl mx-auto px-4 md:px-8 pt-6 pb-20 md:pb-10\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex items-center justify-between mb-5 animate-fade-in-up\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"h1\", {\n className: \"text-lg font-bold tracking-tight\",\n children: \"推荐列表\"\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/recommendations/page.tsx\",\n lineNumber: 50,\n columnNumber: 11\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n className: \"text-xs text-text-muted mt-0.5\",\n children: [\n \"共 \",\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"font-mono tabular-nums\",\n children: filtered.length\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/recommendations/page.tsx\",\n lineNumber: 52,\n columnNumber: 15\n }, this),\n \" 只\"\n ]\n }, void 0, true, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/recommendations/page.tsx\",\n lineNumber: 51,\n columnNumber: 11\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/recommendations/page.tsx\",\n lineNumber: 49,\n columnNumber: 9\n }, this)\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/recommendations/page.tsx\",\n lineNumber: 48,\n columnNumber: 7\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex gap-2 mb-5 overflow-x-auto pb-1 animate-fade-in-up delay-75\",\n children: [\n {\n key: \"all\",\n label: \"全部\"\n },\n {\n key: \"buy\",\n label: \"买入信号\"\n },\n {\n key: \"强烈推荐\",\n label: \"强烈推荐\"\n },\n {\n key: \"推荐\",\n label: \"推荐\"\n },\n {\n key: \"观望\",\n label: \"观望\"\n }\n ].map(({ key, label })=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"button\", {\n onClick: ()=>setFilter(key),\n className: `text-xs px-4 py-1.5 rounded-xl whitespace-nowrap transition-all duration-200 font-medium ${filter === key ? \"bg-gradient-to-r from-amber-500/25 to-amber-600/20 text-amber-400 border border-amber-500/15\" : \"bg-white/[0.03] text-text-muted hover:text-text-secondary hover:bg-white/[0.06] border border-transparent\"}`,\n children: label\n }, key, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/recommendations/page.tsx\",\n lineNumber: 66,\n columnNumber: 11\n }, this))\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/recommendations/page.tsx\",\n lineNumber: 58,\n columnNumber: 7\n }, this),\n filtered.length === 0 ? /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"glass-card-static p-12 text-center animate-fade-in-up\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"text-text-muted text-sm mb-1\",\n children: [\n \"暂无\",\n filter === \"all\" ? \"\" : \"符合条件的\",\n \"推荐\"\n ]\n }, void 0, true, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/recommendations/page.tsx\",\n lineNumber: 82,\n columnNumber: 11\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"text-text-muted/50 text-xs\",\n children: \"尝试切换筛选条件或触发新的扫描\"\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/recommendations/page.tsx\",\n lineNumber: 83,\n columnNumber: 11\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/recommendations/page.tsx\",\n lineNumber: 81,\n columnNumber: 9\n }, this) : /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4\",\n children: filtered.map((rec, i)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"animate-fade-in-up\",\n style: {\n animationDelay: `${i * 60}ms`\n },\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_stock_card__WEBPACK_IMPORTED_MODULE_3__[\"default\"], {\n rec: rec,\n showLLMLoading: llmEnabled\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/recommendations/page.tsx\",\n lineNumber: 89,\n columnNumber: 15\n }, this)\n }, rec.ts_code, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/recommendations/page.tsx\",\n lineNumber: 88,\n columnNumber: 13\n }, this))\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/recommendations/page.tsx\",\n lineNumber: 86,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/recommendations/page.tsx\",\n lineNumber: 46,\n columnNumber: 5\n }, this);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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Ozs7Ozs7Ozs7QUFRakMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9hc3RvY2stYWdlbnQtZnJvbnRlbmQvLi9zcmMvYXBwL3JlY29tbWVuZGF0aW9ucy9wYWdlLnRzeD80OWE1Il0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIGNsaWVudFwiO1xuXG5pbXBvcnQgeyB1c2VFZmZlY3QsIHVzZVN0YXRlLCB1c2VDYWxsYmFjayB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHsgZmV0Y2hBUEkgfSBmcm9tIFwiQC9saWIvYXBpXCI7XG5pbXBvcnQgdHlwZSB7IExhdGVzdFJlc3VsdCB9IGZyb20gXCJAL2xpYi9hcGlcIjtcbmltcG9ydCBTdG9ja0NhcmQgZnJvbSBcIkAvY29tcG9uZW50cy9zdG9jay1jYXJkXCI7XG5pbXBvcnQgeyB1c2VXZWJTb2NrZXQgfSBmcm9tIFwiQC9ob29rcy91c2Utd2Vic29ja2V0XCI7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIFJlY29tbWVuZGF0aW9uc1BhZ2UoKSB7XG4gIGNvbnN0IFtkYXRhLCBzZXREYXRhXSA9IHVzZVN0YXRlPExhdGVzdFJlc3VsdCB8IG51bGw+KG51bGwpO1xuICBjb25zdCBbZmlsdGVyLCBzZXRGaWx0ZXJdID0gdXNlU3RhdGU8c3RyaW5nPihcImFsbFwiKTtcbiAgY29uc3QgW2xsbUVuYWJsZWQsIHNldExsbUVuYWJsZWRdID0gdXNlU3RhdGUoZmFsc2UpO1xuXG4gIGNvbnN0IGxvYWREYXRhID0gdXNlQ2FsbGJhY2soYXN5bmMgKCkgPT4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBbcmVzdWx0LCBoZWFsdGhdID0gYXdhaXQgUHJvbWlzZS5hbGwoW1xuICAgICAgICBmZXRjaEFQSTxMYXRlc3RSZXN1bHQ+KFwiL2FwaS9yZWNvbW1lbmRhdGlvbnMvbGF0ZXN0XCIpLFxuICAgICAgICBmZXRjaEFQSTx7IGxsbV9lbmFibGVkOiBib29sZWFuIH0+KFwiL2FwaS9oZWFsdGhcIiksXG4gICAgICBdKTtcbiAgICAgIHNldERhdGEocmVzdWx0KTtcbiAgICAgIHNldExsbUVuYWJsZWQoaGVhbHRoLmxsbV9lbmFibGVkKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBjb25zb2xlLmVycm9yKFwi5Yqg6L295o6o6I2Q5aSx6LSlOlwiLCBlKTtcbiAgICB9XG4gIH0sIFtdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGxvYWREYXRhKCk7XG4gIH0sIFtsb2FkRGF0YV0pO1xuXG4gIHVzZVdlYlNvY2tldChcbiAgICB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgICBsb2FkRGF0YSgpO1xuICAgIH0sIFtsb2FkRGF0YV0pXG4gICk7XG5cbiAgY29uc3QgcmVjcyA9IGRhdGE/LnJlY29tbWVuZGF0aW9ucyA/PyBbXTtcbiAgY29uc3QgZmlsdGVyZWQgPVxuICAgIGZpbHRlciA9PT0gXCJhbGxcIlxuICAgICAgPyByZWNzXG4gICAgICA6IGZpbHRlciA9PT0gXCJidXlcIlxuICAgICAgPyByZWNzLmZpbHRlcigocikgPT4gci5zaWduYWwgPT09IFwiQlVZXCIpXG4gICAgICA6IHJlY3MuZmlsdGVyKChyKSA9PiByLmxldmVsID09PSBmaWx0ZXIpO1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9XCJtYXgtdy03eGwgbXgtYXV0byBweC00IG1kOnB4LTggcHQtNiBwYi0yMCBtZDpwYi0xMFwiPlxuICAgICAgey8qIEhlYWRlciAqL31cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1iZXR3ZWVuIG1iLTUgYW5pbWF0ZS1mYWRlLWluLXVwXCI+XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAgPGgxIGNsYXNzTmFtZT1cInRleHQtbGcgZm9udC1ib2xkIHRyYWNraW5nLXRpZ2h0XCI+5o6o6I2Q5YiX6KGoPC9oMT5cbiAgICAgICAgICA8cCBjbGFzc05hbWU9XCJ0ZXh0LXhzIHRleHQtdGV4dC1tdXRlZCBtdC0wLjVcIj5cbiAgICAgICAgICAgIOWFsSA8c3BhbiBjbGFzc05hbWU9XCJmb250LW1vbm8gdGFidWxhci1udW1zXCI+e2ZpbHRlcmVkLmxlbmd0aH08L3NwYW4+IOWPqlxuICAgICAgICAgIDwvcD5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cblxuICAgICAgey8qIEZpbHRlciB0YWJzICovfVxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJmbGV4IGdhcC0yIG1iLTUgb3ZlcmZsb3cteC1hdXRvIHBiLTEgYW5pbWF0ZS1mYWRlLWluLXVwIGRlbGF5LTc1XCI+XG4gICAgICAgIHtbXG4gICAgICAgICAgeyBrZXk6IFwiYWxsXCIsIGxhYmVsOiBcIuWFqOmDqFwiIH0sXG4gICAgICAgICAgeyBrZXk6IFwiYnV5XCIsIGxhYmVsOiBcIuS5sOWFpeS/oeWPt1wiIH0sXG4gICAgICAgICAgeyBrZXk6IFwi5by654OI5o6o6I2QXCIsIGxhYmVsOiBcIuW8uueDiOaOqOiNkFwiIH0sXG4gICAgICAgICAgeyBrZXk6IFwi5o6o6I2QXCIsIGxhYmVsOiBcIuaOqOiNkFwiIH0sXG4gICAgICAgICAgeyBrZXk6IFwi6KeC5pybXCIsIGxhYmVsOiBcIuinguacm1wiIH0sXG4gICAgICAgIF0ubWFwKCh7IGtleSwgbGFiZWwgfSkgPT4gKFxuICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIGtleT17a2V5fVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4gc2V0RmlsdGVyKGtleSl9XG4gICAgICAgICAgICBjbGFzc05hbWU9e2B0ZXh0LXhzIHB4LTQgcHktMS41IHJvdW5kZWQteGwgd2hpdGVzcGFjZS1ub3dyYXAgdHJhbnNpdGlvbi1hbGwgZHVyYXRpb24tMjAwIGZvbnQtbWVkaXVtICR7XG4gICAgICAgICAgICAgIGZpbHRlciA9PT0ga2V5XG4gICAgICAgICAgICAgICAgPyBcImJnLWdyYWRpZW50LXRvLXIgZnJvbS1hbWJlci01MDAvMjUgdG8tYW1iZXItNjAwLzIwIHRleHQtYW1iZXItNDAwIGJvcmRlciBib3JkZXItYW1iZXItNTAwLzE1XCJcbiAgICAgICAgICAgICAgICA6IFwiYmctd2hpdGUvWzAuMDNdIHRleHQtdGV4dC1tdXRlZCBob3Zlcjp0ZXh0LXRleHQtc2Vjb25kYXJ5IGhvdmVyOmJnLXdoaXRlL1swLjA2XSBib3JkZXIgYm9yZGVyLXRyYW5zcGFyZW50XCJcbiAgICAgICAgICAgIH1gfVxuICAgICAgICAgID5cbiAgICAgICAgICAgIHtsYWJlbH1cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgKSl9XG4gICAgICA8L2Rpdj5cblxuICAgICAge2ZpbHRlcmVkLmxlbmd0aCA9PT0gMCA/IChcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJnbGFzcy1jYXJkLXN0YXRpYyBwLTEyIHRleHQtY2VudGVyIGFuaW1hdGUtZmFkZS1pbi11cFwiPlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwidGV4dC10ZXh0LW11dGVkIHRleHQtc20gbWItMVwiPuaaguaXoHtmaWx0ZXIgPT09IFwiYWxsXCIgPyBcIlwiIDogXCLnrKblkIjmnaHku7bnmoRcIn3mjqjojZA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInRleHQtdGV4dC1tdXRlZC81MCB0ZXh0LXhzXCI+5bCd6K+V5YiH5o2i562b6YCJ5p2h5Lu25oiW6Kem5Y+R5paw55qE5omr5o+PPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgKSA6IChcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJncmlkIGdyaWQtY29scy0xIG1kOmdyaWQtY29scy0yIGxnOmdyaWQtY29scy0zIGdhcC00XCI+XG4gICAgICAgICAge2ZpbHRlcmVkLm1hcCgocmVjLCBpKSA9PiAoXG4gICAgICAgICAgICA8ZGl2IGtleT17cmVjLnRzX2NvZGV9IGNsYXNzTmFtZT1cImFuaW1hdGUtZmFkZS1pbi11cFwiIHN0eWxlPXt7IGFuaW1hdGlvbkRlbGF5OiBgJHtpICogNjB9bXNgIH19PlxuICAgICAgICAgICAgICA8U3RvY2tDYXJkIHJlYz17cmVjfSBzaG93TExNTG9hZGluZz17bGxtRW5hYmxlZH0gLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICkpfVxuICAgICAgICA8L2Rpdj5cbiAgICAgICl9XG4gICAgPC9kaXY+XG4gICk7XG59XG4iXSwibmFtZXMiOlsidXNlRWZmZWN0IiwidXNlU3RhdGUiLCJ1c2VDYWxsYmFjayIsImZldGNoQVBJIiwiU3RvY2tDYXJkIiwidXNlV2ViU29ja2V0IiwiUmVjb21tZW5kYXRpb25zUGFnZSIsImRhdGEiLCJzZXREYXRhIiwiZmlsdGVyIiwic2V0RmlsdGVyIiwibGxtRW5hYmxlZCIsInNldExsbUVuYWJsZWQiLCJsb2FkRGF0YSIsInJlc3VsdCIsImhlYWx0aCIsIlByb21pc2UiLCJhbGwiLCJsbG1fZW5hYmxlZCIsImUiLCJjb25zb2xlIiwiZXJyb3IiLCJyZWNzIiwicmVjb21tZW5kYXRpb25zIiwiZmlsdGVyZWQiLCJyIiwic2lnbmFsIiwibGV2ZWwiLCJkaXYiLCJjbGFzc05hbWUiLCJoMSIsInAiLCJzcGFuIiwibGVuZ3RoIiwia2V5IiwibGFiZWwiLCJtYXAiLCJidXR0b24iLCJvbkNsaWNrIiwicmVjIiwiaSIsInN0eWxlIiwiYW5pbWF0aW9uRGVsYXkiLCJzaG93TExNTG9hZGluZyIsInRzX2NvZGUiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./src/app/recommendations/page.tsx\n"); - -/***/ }), - -/***/ "(ssr)/./src/components/stock-card.tsx": -/*!***************************************!*\ - !*** ./src/components/stock-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 */ \"default\": () => (/* binding */ StockCard)\n/* harmony export */ });\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-dev-runtime */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react-jsx-dev-runtime.js\");\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _lib_utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @/lib/utils */ \"(ssr)/./src/lib/utils.ts\");\n/* __next_internal_client_entry_do_not_use__ default auto */ \n\nfunction StockCard({ rec, showLLMLoading = false }) {\n const badge = (0,_lib_utils__WEBPACK_IMPORTED_MODULE_1__.getLevelBadge)(rec.level);\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"a\", {\n href: `/stock/${rec.ts_code}`,\n className: \"block glass-card p-5 group\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex items-start justify-between mb-3\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex items-center gap-2\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"font-semibold text-sm tracking-tight\",\n children: rec.name\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 18,\n columnNumber: 13\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: `text-xs px-2 py-0.5 rounded-full font-medium ${badge.bg} ${badge.text}`,\n children: rec.level\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 19,\n columnNumber: 13\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 17,\n columnNumber: 11\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"text-xs text-text-muted mt-1 font-mono tabular-nums\",\n children: [\n rec.ts_code,\n \" \",\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"text-text-muted/40 mx-1\",\n children: \"\\xb7\"\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 24,\n columnNumber: 27\n }, this),\n \" \",\n rec.sector\n ]\n }, void 0, true, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 23,\n columnNumber: 11\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 16,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"text-right\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: `text-xl font-bold font-mono tabular-nums tracking-tight ${(0,_lib_utils__WEBPACK_IMPORTED_MODULE_1__.getScoreColor)(rec.score)}`,\n children: rec.score\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 28,\n columnNumber: 11\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: `text-xs font-semibold tracking-wider ${(0,_lib_utils__WEBPACK_IMPORTED_MODULE_1__.getSignalColor)(rec.signal)}`,\n children: rec.signal === \"BUY\" ? \"买入\" : rec.signal === \"SELL\" ? \"卖出\" : \"持有\"\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 31,\n columnNumber: 11\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 27,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 15,\n columnNumber: 7\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"grid grid-cols-4 gap-2 mb-4\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(ScoreBar, {\n label: \"市场\",\n value: rec.market_temp_score\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 39,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(ScoreBar, {\n label: \"板块\",\n value: rec.sector_score\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 40,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(ScoreBar, {\n label: \"资金\",\n value: rec.capital_score\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 41,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(ScoreBar, {\n label: \"技术\",\n value: rec.technical_score\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 42,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 38,\n columnNumber: 7\n }, this),\n rec.entry_price && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex justify-between text-xs mb-3 bg-white/[0.03] rounded-xl px-4 py-2.5 border border-white/[0.04]\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"text-text-muted\",\n children: \"买入 \"\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 49,\n columnNumber: 13\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"text-red-400 font-mono tabular-nums\",\n children: rec.entry_price\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 50,\n columnNumber: 13\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 48,\n columnNumber: 11\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"text-text-muted\",\n children: \"目标 \"\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 53,\n columnNumber: 13\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"text-amber-400 font-mono tabular-nums\",\n children: rec.target_price\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 54,\n columnNumber: 13\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 52,\n columnNumber: 11\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"text-text-muted\",\n children: \"止损 \"\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 57,\n columnNumber: 13\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"text-emerald-400 font-mono tabular-nums\",\n children: rec.stop_loss\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 58,\n columnNumber: 13\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 56,\n columnNumber: 11\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 47,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"space-y-1.5\",\n children: rec.reasons.map((r, i)=>/*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"text-xs text-text-secondary flex items-start gap-2\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"w-1 h-1 rounded-full bg-amber-500/60 mt-[7px] shrink-0\"\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 67,\n columnNumber: 13\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"leading-relaxed\",\n children: r\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 68,\n columnNumber: 13\n }, this)\n ]\n }, i, true, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 66,\n columnNumber: 11\n }, this))\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 64,\n columnNumber: 7\n }, this),\n rec.llm_analysis ? /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"mt-3 bg-accent-cyan/[0.06] border border-accent-cyan/[0.12] rounded-xl px-4 py-3\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"text-xs text-accent-cyan/80 font-semibold tracking-wider mb-1.5\",\n children: \"AI 分析\"\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 76,\n columnNumber: 11\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"text-xs text-text-secondary leading-relaxed\",\n children: rec.llm_analysis\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 77,\n columnNumber: 11\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 75,\n columnNumber: 9\n }, this) : showLLMLoading ? /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"mt-3 text-xs text-text-muted flex items-center gap-2\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"inline-block w-3 h-3 border border-accent-cyan/30 border-t-accent-cyan/80 rounded-full animate-spin\"\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 83,\n columnNumber: 11\n }, this),\n \"AI 分析中...\"\n ]\n }, void 0, true, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 82,\n columnNumber: 9\n }, this) : null,\n rec.risk_note && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"mt-3 text-xs text-amber-500/60 bg-amber-500/[0.04] border border-amber-500/[0.08] rounded-lg px-3 py-1.5\",\n children: rec.risk_note\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 90,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"mt-3 flex items-center gap-1 text-xs text-text-muted opacity-0 group-hover:opacity-100 transition-opacity duration-300\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n children: \"查看详情\"\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 97,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"svg\", {\n width: \"10\",\n height: \"10\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n stroke: \"currentColor\",\n strokeWidth: \"2\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"path\", {\n d: \"M5 12h14M12 5l7 7-7 7\"\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 99,\n columnNumber: 11\n }, this)\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 98,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 96,\n columnNumber: 7\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 10,\n columnNumber: 5\n }, this);\n}\nfunction ScoreBar({ label, value }) {\n const width = Math.min(value, 100);\n const gradientClass = value >= 70 ? \"score-bar-gradient-high\" : value >= 50 ? \"score-bar-gradient-mid\" : \"score-bar-gradient-low\";\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex justify-between text-xs text-text-muted mb-1\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"font-medium\",\n children: label\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 112,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"font-mono tabular-nums\",\n children: value.toFixed(0)\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 113,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 111,\n columnNumber: 7\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"h-1.5 bg-white/[0.04] rounded-full overflow-hidden\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: `h-full rounded-full transition-all duration-700 ease-out ${gradientClass}`,\n style: {\n width: `${width}%`\n }\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 116,\n columnNumber: 9\n }, this)\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 115,\n columnNumber: 7\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/components/stock-card.tsx\",\n lineNumber: 110,\n columnNumber: 5\n }, this);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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Olsid2VicGFjazovL2FzdG9jay1hZ2VudC1mcm9udGVuZC8uL3NyYy9jb21wb25lbnRzL3N0b2NrLWNhcmQudHN4PzE4Y2YiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2UgY2xpZW50XCI7XG5cbmltcG9ydCB7IGdldExldmVsQmFkZ2UsIGdldFNpZ25hbENvbG9yLCBnZXRTY29yZUNvbG9yIH0gZnJvbSBcIkAvbGliL3V0aWxzXCI7XG5pbXBvcnQgdHlwZSB7IFJlY29tbWVuZGF0aW9uRGF0YSB9IGZyb20gXCJAL2xpYi9hcGlcIjtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gU3RvY2tDYXJkKHsgcmVjLCBzaG93TExNTG9hZGluZyA9IGZhbHNlIH06IHsgcmVjOiBSZWNvbW1lbmRhdGlvbkRhdGE7IHNob3dMTE1Mb2FkaW5nPzogYm9vbGVhbiB9KSB7XG4gIGNvbnN0IGJhZGdlID0gZ2V0TGV2ZWxCYWRnZShyZWMubGV2ZWwpO1xuXG4gIHJldHVybiAoXG4gICAgPGFcbiAgICAgIGhyZWY9e2Avc3RvY2svJHtyZWMudHNfY29kZX1gfVxuICAgICAgY2xhc3NOYW1lPVwiYmxvY2sgZ2xhc3MtY2FyZCBwLTUgZ3JvdXBcIlxuICAgID5cbiAgICAgIHsvKiBIZWFkZXI6IE5hbWUgKyBTY29yZSAqL31cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmxleCBpdGVtcy1zdGFydCBqdXN0aWZ5LWJldHdlZW4gbWItM1wiPlxuICAgICAgICA8ZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTJcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cImZvbnQtc2VtaWJvbGQgdGV4dC1zbSB0cmFja2luZy10aWdodFwiPntyZWMubmFtZX08L3NwYW4+XG4gICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9e2B0ZXh0LXhzIHB4LTIgcHktMC41IHJvdW5kZWQtZnVsbCBmb250LW1lZGl1bSAke2JhZGdlLmJnfSAke2JhZGdlLnRleHR9YH0+XG4gICAgICAgICAgICAgIHtyZWMubGV2ZWx9XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0ZXh0LXhzIHRleHQtdGV4dC1tdXRlZCBtdC0xIGZvbnQtbW9ubyB0YWJ1bGFyLW51bXNcIj5cbiAgICAgICAgICAgIHtyZWMudHNfY29kZX0gPHNwYW4gY2xhc3NOYW1lPVwidGV4dC10ZXh0LW11dGVkLzQwIG14LTFcIj7Ctzwvc3Bhbj4ge3JlYy5zZWN0b3J9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInRleHQtcmlnaHRcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17YHRleHQteGwgZm9udC1ib2xkIGZvbnQtbW9ubyB0YWJ1bGFyLW51bXMgdHJhY2tpbmctdGlnaHQgJHtnZXRTY29yZUNvbG9yKHJlYy5zY29yZSl9YH0+XG4gICAgICAgICAgICB7cmVjLnNjb3JlfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXtgdGV4dC14cyBmb250LXNlbWlib2xkIHRyYWNraW5nLXdpZGVyICR7Z2V0U2lnbmFsQ29sb3IocmVjLnNpZ25hbCl9YH0+XG4gICAgICAgICAgICB7cmVjLnNpZ25hbCA9PT0gXCJCVVlcIiA/IFwi5Lmw5YWlXCIgOiByZWMuc2lnbmFsID09PSBcIlNFTExcIiA/IFwi5Y2W5Ye6XCIgOiBcIuaMgeaciVwifVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICB7LyogRm91ciBkaW1lbnNpb24gc2NvcmUgYmFycyAqL31cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZ3JpZCBncmlkLWNvbHMtNCBnYXAtMiBtYi00XCI+XG4gICAgICAgIDxTY29yZUJhciBsYWJlbD1cIuW4guWculwiIHZhbHVlPXtyZWMubWFya2V0X3RlbXBfc2NvcmV9IC8+XG4gICAgICAgIDxTY29yZUJhciBsYWJlbD1cIuadv+Wdl1wiIHZhbHVlPXtyZWMuc2VjdG9yX3Njb3JlfSAvPlxuICAgICAgICA8U2NvcmVCYXIgbGFiZWw9XCLotYTph5FcIiB2YWx1ZT17cmVjLmNhcGl0YWxfc2NvcmV9IC8+XG4gICAgICAgIDxTY29yZUJhciBsYWJlbD1cIuaKgOacr1wiIHZhbHVlPXtyZWMudGVjaG5pY2FsX3Njb3JlfSAvPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIHsvKiBQcmljZSByZWZlcmVuY2UgKi99XG4gICAgICB7cmVjLmVudHJ5X3ByaWNlICYmIChcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmbGV4IGp1c3RpZnktYmV0d2VlbiB0ZXh0LXhzIG1iLTMgYmctd2hpdGUvWzAuMDNdIHJvdW5kZWQteGwgcHgtNCBweS0yLjUgYm9yZGVyIGJvcmRlci13aGl0ZS9bMC4wNF1cIj5cbiAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwidGV4dC10ZXh0LW11dGVkXCI+5Lmw5YWlIDwvc3Bhbj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cInRleHQtcmVkLTQwMCBmb250LW1vbm8gdGFidWxhci1udW1zXCI+e3JlYy5lbnRyeV9wcmljZX08L3NwYW4+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cInRleHQtdGV4dC1tdXRlZFwiPuebruaghyA8L3NwYW4+XG4gICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJ0ZXh0LWFtYmVyLTQwMCBmb250LW1vbm8gdGFidWxhci1udW1zXCI+e3JlYy50YXJnZXRfcHJpY2V9PC9zcGFuPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJ0ZXh0LXRleHQtbXV0ZWRcIj7mraLmjZ8gPC9zcGFuPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwidGV4dC1lbWVyYWxkLTQwMCBmb250LW1vbm8gdGFidWxhci1udW1zXCI+e3JlYy5zdG9wX2xvc3N9PC9zcGFuPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICl9XG5cbiAgICAgIHsvKiBSZWFzb25zICovfVxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJzcGFjZS15LTEuNVwiPlxuICAgICAgICB7cmVjLnJlYXNvbnMubWFwKChyLCBpKSA9PiAoXG4gICAgICAgICAgPGRpdiBrZXk9e2l9IGNsYXNzTmFtZT1cInRleHQteHMgdGV4dC10ZXh0LXNlY29uZGFyeSBmbGV4IGl0ZW1zLXN0YXJ0IGdhcC0yXCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJ3LTEgaC0xIHJvdW5kZWQtZnVsbCBiZy1hbWJlci01MDAvNjAgbXQtWzdweF0gc2hyaW5rLTBcIiAvPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwibGVhZGluZy1yZWxheGVkXCI+e3J9PC9zcGFuPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICApKX1cbiAgICAgIDwvZGl2PlxuXG4gICAgICB7LyogQUkgQW5hbHlzaXMgKi99XG4gICAgICB7cmVjLmxsbV9hbmFseXNpcyA/IChcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJtdC0zIGJnLWFjY2VudC1jeWFuL1swLjA2XSBib3JkZXIgYm9yZGVyLWFjY2VudC1jeWFuL1swLjEyXSByb3VuZGVkLXhsIHB4LTQgcHktM1wiPlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwidGV4dC14cyB0ZXh0LWFjY2VudC1jeWFuLzgwIGZvbnQtc2VtaWJvbGQgdHJhY2tpbmctd2lkZXIgbWItMS41XCI+QUkg5YiG5p6QPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0ZXh0LXhzIHRleHQtdGV4dC1zZWNvbmRhcnkgbGVhZGluZy1yZWxheGVkXCI+XG4gICAgICAgICAgICB7cmVjLmxsbV9hbmFseXNpc31cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICApIDogc2hvd0xMTUxvYWRpbmcgPyAoXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibXQtMyB0ZXh0LXhzIHRleHQtdGV4dC1tdXRlZCBmbGV4IGl0ZW1zLWNlbnRlciBnYXAtMlwiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cImlubGluZS1ibG9jayB3LTMgaC0zIGJvcmRlciBib3JkZXItYWNjZW50LWN5YW4vMzAgYm9yZGVyLXQtYWNjZW50LWN5YW4vODAgcm91bmRlZC1mdWxsIGFuaW1hdGUtc3BpblwiIC8+XG4gICAgICAgICAgQUkg5YiG5p6Q5LitLi4uXG4gICAgICAgIDwvZGl2PlxuICAgICAgKSA6IG51bGx9XG5cbiAgICAgIHsvKiBSaXNrIG5vdGUgKi99XG4gICAgICB7cmVjLnJpc2tfbm90ZSAmJiAoXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibXQtMyB0ZXh0LXhzIHRleHQtYW1iZXItNTAwLzYwIGJnLWFtYmVyLTUwMC9bMC4wNF0gYm9yZGVyIGJvcmRlci1hbWJlci01MDAvWzAuMDhdIHJvdW5kZWQtbGcgcHgtMyBweS0xLjVcIj5cbiAgICAgICAgICB7cmVjLnJpc2tfbm90ZX1cbiAgICAgICAgPC9kaXY+XG4gICAgICApfVxuXG4gICAgICB7LyogSG92ZXIgaW5kaWNhdG9yICovfVxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJtdC0zIGZsZXggaXRlbXMtY2VudGVyIGdhcC0xIHRleHQteHMgdGV4dC10ZXh0LW11dGVkIG9wYWNpdHktMCBncm91cC1ob3ZlcjpvcGFjaXR5LTEwMCB0cmFuc2l0aW9uLW9wYWNpdHkgZHVyYXRpb24tMzAwXCI+XG4gICAgICAgIDxzcGFuPuafpeeci+ivpuaDhTwvc3Bhbj5cbiAgICAgICAgPHN2ZyB3aWR0aD1cIjEwXCIgaGVpZ2h0PVwiMTBcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2VXaWR0aD1cIjJcIiBzdHJva2VMaW5lY2FwPVwicm91bmRcIiBzdHJva2VMaW5lam9pbj1cInJvdW5kXCI+XG4gICAgICAgICAgPHBhdGggZD1cIk01IDEyaDE0TTEyIDVsNyA3LTcgN1wiIC8+XG4gICAgICAgIDwvc3ZnPlxuICAgICAgPC9kaXY+XG4gICAgPC9hPlxuICApO1xufVxuXG5mdW5jdGlvbiBTY29yZUJhcih7IGxhYmVsLCB2YWx1ZSB9OiB7IGxhYmVsOiBzdHJpbmc7IHZhbHVlOiBudW1iZXIgfSkge1xuICBjb25zdCB3aWR0aCA9IE1hdGgubWluKHZhbHVlLCAxMDApO1xuICBjb25zdCBncmFkaWVudENsYXNzID0gdmFsdWUgPj0gNzAgPyBcInNjb3JlLWJhci1ncmFkaWVudC1oaWdoXCIgOiB2YWx1ZSA+PSA1MCA/IFwic2NvcmUtYmFyLWdyYWRpZW50LW1pZFwiIDogXCJzY29yZS1iYXItZ3JhZGllbnQtbG93XCI7XG4gIHJldHVybiAoXG4gICAgPGRpdj5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmxleCBqdXN0aWZ5LWJldHdlZW4gdGV4dC14cyB0ZXh0LXRleHQtbXV0ZWQgbWItMVwiPlxuICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJmb250LW1lZGl1bVwiPntsYWJlbH08L3NwYW4+XG4gICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cImZvbnQtbW9ubyB0YWJ1bGFyLW51bXNcIj57dmFsdWUudG9GaXhlZCgwKX08L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiaC0xLjUgYmctd2hpdGUvWzAuMDRdIHJvdW5kZWQtZnVsbCBvdmVyZmxvdy1oaWRkZW5cIj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzTmFtZT17YGgtZnVsbCByb3VuZGVkLWZ1bGwgdHJhbnNpdGlvbi1hbGwgZHVyYXRpb24tNzAwIGVhc2Utb3V0ICR7Z3JhZGllbnRDbGFzc31gfVxuICAgICAgICAgIHN0eWxlPXt7IHdpZHRoOiBgJHt3aWR0aH0lYCB9fVxuICAgICAgICAvPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICk7XG59XG4iXSwibmFtZXMiOlsiZ2V0TGV2ZWxCYWRnZSIsImdldFNpZ25hbENvbG9yIiwiZ2V0U2NvcmVDb2xvciIsIlN0b2NrQ2FyZCIsInJlYyIsInNob3dMTE1Mb2FkaW5nIiwiYmFkZ2UiLCJsZXZlbCIsImEiLCJocmVmIiwidHNfY29kZSIsImNsYXNzTmFtZSIsImRpdiIsInNwYW4iLCJuYW1lIiwiYmciLCJ0ZXh0Iiwic2VjdG9yIiwic2NvcmUiLCJzaWduYWwiLCJTY29yZUJhciIsImxhYmVsIiwidmFsdWUiLCJtYXJrZXRfdGVtcF9zY29yZSIsInNlY3Rvcl9zY29yZSIsImNhcGl0YWxfc2NvcmUiLCJ0ZWNobmljYWxfc2NvcmUiLCJlbnRyeV9wcmljZSIsInRhcmdldF9wcmljZSIsInN0b3BfbG9zcyIsInJlYXNvbnMiLCJtYXAiLCJyIiwiaSIsImxsbV9hbmFseXNpcyIsInJpc2tfbm90ZSIsInN2ZyIsIndpZHRoIiwiaGVpZ2h0Iiwidmlld0JveCIsImZpbGwiLCJzdHJva2UiLCJzdHJva2VXaWR0aCIsInN0cm9rZUxpbmVjYXAiLCJzdHJva2VMaW5lam9pbiIsInBhdGgiLCJkIiwiTWF0aCIsIm1pbiIsImdyYWRpZW50Q2xhc3MiLCJ0b0ZpeGVkIiwic3R5bGUiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./src/components/stock-card.tsx\n"); - -/***/ }), - -/***/ "(ssr)/./src/hooks/use-websocket.ts": -/*!************************************!*\ - !*** ./src/hooks/use-websocket.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 */ useWebSocket: () => (/* binding */ useWebSocket)\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);\n/* __next_internal_client_entry_do_not_use__ useWebSocket auto */ \nfunction useWebSocket(onMessage) {\n const [connected, setConnected] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false);\n const wsRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);\n const reconnectTimer = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)();\n const connect = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(()=>{\n const protocol = window.location.protocol === \"https:\" ? \"wss:\" : \"ws:\";\n const ws = new WebSocket(`${protocol}//${window.location.host}/ws`);\n ws.onopen = ()=>{\n setConnected(true);\n // 心跳\n const heartbeat = setInterval(()=>{\n if (ws.readyState === WebSocket.OPEN) ws.send(\"ping\");\n }, 30000);\n ws.addEventListener(\"close\", ()=>clearInterval(heartbeat));\n };\n ws.onmessage = (event)=>{\n if (event.data === \"pong\") return;\n try {\n const data = JSON.parse(event.data);\n onMessage?.(data);\n } catch {\n // ignore\n }\n };\n ws.onclose = ()=>{\n setConnected(false);\n reconnectTimer.current = setTimeout(connect, 5000);\n };\n ws.onerror = ()=>ws.close();\n wsRef.current = ws;\n }, [\n onMessage\n ]);\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(()=>{\n connect();\n return ()=>{\n clearTimeout(reconnectTimer.current);\n wsRef.current?.close();\n };\n }, [\n connect\n ]);\n return {\n connected\n };\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9zcmMvaG9va3MvdXNlLXdlYnNvY2tldC50cyIsIm1hcHBpbmdzIjoiOzs7Ozs7a0VBRWlFO0FBTzFELFNBQVNJLGFBQWFDLFNBQXFDO0lBQ2hFLE1BQU0sQ0FBQ0MsV0FBV0MsYUFBYSxHQUFHTCwrQ0FBUUEsQ0FBQztJQUMzQyxNQUFNTSxRQUFRUCw2Q0FBTUEsQ0FBbUI7SUFDdkMsTUFBTVEsaUJBQWlCUiw2Q0FBTUE7SUFFN0IsTUFBTVMsVUFBVVAsa0RBQVdBLENBQUM7UUFDMUIsTUFBTVEsV0FBV0MsT0FBT0MsUUFBUSxDQUFDRixRQUFRLEtBQUssV0FBVyxTQUFTO1FBQ2xFLE1BQU1HLEtBQUssSUFBSUMsVUFBVSxDQUFDLEVBQUVKLFNBQVMsRUFBRSxFQUFFQyxPQUFPQyxRQUFRLENBQUNHLElBQUksQ0FBQyxHQUFHLENBQUM7UUFFbEVGLEdBQUdHLE1BQU0sR0FBRztZQUNWVixhQUFhO1lBQ2IsS0FBSztZQUNMLE1BQU1XLFlBQVlDLFlBQVk7Z0JBQzVCLElBQUlMLEdBQUdNLFVBQVUsS0FBS0wsVUFBVU0sSUFBSSxFQUFFUCxHQUFHUSxJQUFJLENBQUM7WUFDaEQsR0FBRztZQUNIUixHQUFHUyxnQkFBZ0IsQ0FBQyxTQUFTLElBQU1DLGNBQWNOO1FBQ25EO1FBRUFKLEdBQUdXLFNBQVMsR0FBRyxDQUFDQztZQUNkLElBQUlBLE1BQU1DLElBQUksS0FBSyxRQUFRO1lBQzNCLElBQUk7Z0JBQ0YsTUFBTUEsT0FBT0MsS0FBS0MsS0FBSyxDQUFDSCxNQUFNQyxJQUFJO2dCQUNsQ3RCLFlBQVlzQjtZQUNkLEVBQUUsT0FBTTtZQUNOLFNBQVM7WUFDWDtRQUNGO1FBRUFiLEdBQUdnQixPQUFPLEdBQUc7WUFDWHZCLGFBQWE7WUFDYkUsZUFBZXNCLE9BQU8sR0FBR0MsV0FBV3RCLFNBQVM7UUFDL0M7UUFFQUksR0FBR21CLE9BQU8sR0FBRyxJQUFNbkIsR0FBR29CLEtBQUs7UUFDM0IxQixNQUFNdUIsT0FBTyxHQUFHakI7SUFDbEIsR0FBRztRQUFDVDtLQUFVO0lBRWRMLGdEQUFTQSxDQUFDO1FBQ1JVO1FBQ0EsT0FBTztZQUNMeUIsYUFBYTFCLGVBQWVzQixPQUFPO1lBQ25DdkIsTUFBTXVCLE9BQU8sRUFBRUc7UUFDakI7SUFDRixHQUFHO1FBQUN4QjtLQUFRO0lBRVosT0FBTztRQUFFSjtJQUFVO0FBQ3JCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vYXN0b2NrLWFnZW50LWZyb250ZW5kLy4vc3JjL2hvb2tzL3VzZS13ZWJzb2NrZXQudHM/NzkzMSJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBjbGllbnRcIjtcblxuaW1wb3J0IHsgdXNlRWZmZWN0LCB1c2VSZWYsIHVzZVN0YXRlLCB1c2VDYWxsYmFjayB9IGZyb20gXCJyZWFjdFwiO1xuXG5pbnRlcmZhY2UgV1NNZXNzYWdlIHtcbiAgdHlwZTogc3RyaW5nO1xuICBba2V5OiBzdHJpbmddOiB1bmtub3duO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdXNlV2ViU29ja2V0KG9uTWVzc2FnZT86IChkYXRhOiBXU01lc3NhZ2UpID0+IHZvaWQpIHtcbiAgY29uc3QgW2Nvbm5lY3RlZCwgc2V0Q29ubmVjdGVkXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3Qgd3NSZWYgPSB1c2VSZWY8V2ViU29ja2V0IHwgbnVsbD4obnVsbCk7XG4gIGNvbnN0IHJlY29ubmVjdFRpbWVyID0gdXNlUmVmPE5vZGVKUy5UaW1lb3V0PigpO1xuXG4gIGNvbnN0IGNvbm5lY3QgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgY29uc3QgcHJvdG9jb2wgPSB3aW5kb3cubG9jYXRpb24ucHJvdG9jb2wgPT09IFwiaHR0cHM6XCIgPyBcIndzczpcIiA6IFwid3M6XCI7XG4gICAgY29uc3Qgd3MgPSBuZXcgV2ViU29ja2V0KGAke3Byb3RvY29sfS8vJHt3aW5kb3cubG9jYXRpb24uaG9zdH0vd3NgKTtcblxuICAgIHdzLm9ub3BlbiA9ICgpID0+IHtcbiAgICAgIHNldENvbm5lY3RlZCh0cnVlKTtcbiAgICAgIC8vIOW/g+i3s1xuICAgICAgY29uc3QgaGVhcnRiZWF0ID0gc2V0SW50ZXJ2YWwoKCkgPT4ge1xuICAgICAgICBpZiAod3MucmVhZHlTdGF0ZSA9PT0gV2ViU29ja2V0Lk9QRU4pIHdzLnNlbmQoXCJwaW5nXCIpO1xuICAgICAgfSwgMzAwMDApO1xuICAgICAgd3MuYWRkRXZlbnRMaXN0ZW5lcihcImNsb3NlXCIsICgpID0+IGNsZWFySW50ZXJ2YWwoaGVhcnRiZWF0KSk7XG4gICAgfTtcblxuICAgIHdzLm9ubWVzc2FnZSA9IChldmVudCkgPT4ge1xuICAgICAgaWYgKGV2ZW50LmRhdGEgPT09IFwicG9uZ1wiKSByZXR1cm47XG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCBkYXRhID0gSlNPTi5wYXJzZShldmVudC5kYXRhKTtcbiAgICAgICAgb25NZXNzYWdlPy4oZGF0YSk7XG4gICAgICB9IGNhdGNoIHtcbiAgICAgICAgLy8gaWdub3JlXG4gICAgICB9XG4gICAgfTtcblxuICAgIHdzLm9uY2xvc2UgPSAoKSA9PiB7XG4gICAgICBzZXRDb25uZWN0ZWQoZmFsc2UpO1xuICAgICAgcmVjb25uZWN0VGltZXIuY3VycmVudCA9IHNldFRpbWVvdXQoY29ubmVjdCwgNTAwMCk7XG4gICAgfTtcblxuICAgIHdzLm9uZXJyb3IgPSAoKSA9PiB3cy5jbG9zZSgpO1xuICAgIHdzUmVmLmN1cnJlbnQgPSB3cztcbiAgfSwgW29uTWVzc2FnZV0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgY29ubmVjdCgpO1xuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBjbGVhclRpbWVvdXQocmVjb25uZWN0VGltZXIuY3VycmVudCk7XG4gICAgICB3c1JlZi5jdXJyZW50Py5jbG9zZSgpO1xuICAgIH07XG4gIH0sIFtjb25uZWN0XSk7XG5cbiAgcmV0dXJuIHsgY29ubmVjdGVkIH07XG59XG4iXSwibmFtZXMiOlsidXNlRWZmZWN0IiwidXNlUmVmIiwidXNlU3RhdGUiLCJ1c2VDYWxsYmFjayIsInVzZVdlYlNvY2tldCIsIm9uTWVzc2FnZSIsImNvbm5lY3RlZCIsInNldENvbm5lY3RlZCIsIndzUmVmIiwicmVjb25uZWN0VGltZXIiLCJjb25uZWN0IiwicHJvdG9jb2wiLCJ3aW5kb3ciLCJsb2NhdGlvbiIsIndzIiwiV2ViU29ja2V0IiwiaG9zdCIsIm9ub3BlbiIsImhlYXJ0YmVhdCIsInNldEludGVydmFsIiwicmVhZHlTdGF0ZSIsIk9QRU4iLCJzZW5kIiwiYWRkRXZlbnRMaXN0ZW5lciIsImNsZWFySW50ZXJ2YWwiLCJvbm1lc3NhZ2UiLCJldmVudCIsImRhdGEiLCJKU09OIiwicGFyc2UiLCJvbmNsb3NlIiwiY3VycmVudCIsInNldFRpbWVvdXQiLCJvbmVycm9yIiwiY2xvc2UiLCJjbGVhclRpbWVvdXQiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./src/hooks/use-websocket.ts\n"); - -/***/ }), - -/***/ "(ssr)/./src/lib/api.ts": -/*!************************!*\ - !*** ./src/lib/api.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 */ fetchAPI: () => (/* binding */ fetchAPI),\n/* harmony export */ postAPI: () => (/* binding */ postAPI),\n/* harmony export */ streamChat: () => (/* binding */ streamChat)\n/* harmony export */ });\nconst API_BASE = \"\";\nasync function fetchAPI(path) {\n const res = await fetch(`${API_BASE}${path}`);\n if (!res.ok) throw new Error(`API error: ${res.status}`);\n return res.json();\n}\nasync function postAPI(path, body) {\n const res = await fetch(`${API_BASE}${path}`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: body ? JSON.stringify(body) : undefined\n });\n if (!res.ok) throw new Error(`API error: ${res.status}`);\n return res.json();\n}\nasync function* streamChat(messages) {\n const res = await fetch(`${API_BASE}/api/chat/stream`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\"\n },\n body: JSON.stringify({\n messages\n })\n });\n if (!res.ok) throw new Error(`Chat API error: ${res.status}`);\n if (!res.body) throw new Error(\"No response body\");\n const reader = res.body.getReader();\n const decoder = new TextDecoder();\n let buffer = \"\";\n while(true){\n const { done, value } = await reader.read();\n if (done) break;\n buffer += decoder.decode(value, {\n stream: true\n });\n const lines = buffer.split(\"\\n\");\n buffer = lines.pop() || \"\";\n for (const line of lines){\n if (line.startsWith(\"data: \")) {\n const data = line.slice(6).trim();\n if (data === \"[DONE]\") return;\n try {\n const parsed = JSON.parse(data);\n yield parsed;\n } catch {\n // ignore malformed lines\n }\n }\n }\n }\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9zcmMvbGliL2FwaS50cyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxNQUFNQSxXQUFXO0FBRVYsZUFBZUMsU0FBWUMsSUFBWTtJQUM1QyxNQUFNQyxNQUFNLE1BQU1DLE1BQU0sQ0FBQyxFQUFFSixTQUFTLEVBQUVFLEtBQUssQ0FBQztJQUM1QyxJQUFJLENBQUNDLElBQUlFLEVBQUUsRUFBRSxNQUFNLElBQUlDLE1BQU0sQ0FBQyxXQUFXLEVBQUVILElBQUlJLE1BQU0sQ0FBQyxDQUFDO0lBQ3ZELE9BQU9KLElBQUlLLElBQUk7QUFDakI7QUFFTyxlQUFlQyxRQUFXUCxJQUFZLEVBQUVRLElBQWM7SUFDM0QsTUFBTVAsTUFBTSxNQUFNQyxNQUFNLENBQUMsRUFBRUosU0FBUyxFQUFFRSxLQUFLLENBQUMsRUFBRTtRQUM1Q1MsUUFBUTtRQUNSQyxTQUFTO1lBQUUsZ0JBQWdCO1FBQW1CO1FBQzlDRixNQUFNQSxPQUFPRyxLQUFLQyxTQUFTLENBQUNKLFFBQVFLO0lBQ3RDO0lBQ0EsSUFBSSxDQUFDWixJQUFJRSxFQUFFLEVBQUUsTUFBTSxJQUFJQyxNQUFNLENBQUMsV0FBVyxFQUFFSCxJQUFJSSxNQUFNLENBQUMsQ0FBQztJQUN2RCxPQUFPSixJQUFJSyxJQUFJO0FBQ2pCO0FBcUVPLGdCQUFnQlEsV0FDckJDLFFBQXVCO0lBRXZCLE1BQU1kLE1BQU0sTUFBTUMsTUFBTSxDQUFDLEVBQUVKLFNBQVMsZ0JBQWdCLENBQUMsRUFBRTtRQUNyRFcsUUFBUTtRQUNSQyxTQUFTO1lBQUUsZ0JBQWdCO1FBQW1CO1FBQzlDRixNQUFNRyxLQUFLQyxTQUFTLENBQUM7WUFBRUc7UUFBUztJQUNsQztJQUVBLElBQUksQ0FBQ2QsSUFBSUUsRUFBRSxFQUFFLE1BQU0sSUFBSUMsTUFBTSxDQUFDLGdCQUFnQixFQUFFSCxJQUFJSSxNQUFNLENBQUMsQ0FBQztJQUM1RCxJQUFJLENBQUNKLElBQUlPLElBQUksRUFBRSxNQUFNLElBQUlKLE1BQU07SUFFL0IsTUFBTVksU0FBU2YsSUFBSU8sSUFBSSxDQUFDUyxTQUFTO0lBQ2pDLE1BQU1DLFVBQVUsSUFBSUM7SUFDcEIsSUFBSUMsU0FBUztJQUViLE1BQU8sS0FBTTtRQUNYLE1BQU0sRUFBRUMsSUFBSSxFQUFFQyxLQUFLLEVBQUUsR0FBRyxNQUFNTixPQUFPTyxJQUFJO1FBQ3pDLElBQUlGLE1BQU07UUFFVkQsVUFBVUYsUUFBUU0sTUFBTSxDQUFDRixPQUFPO1lBQUVHLFFBQVE7UUFBSztRQUMvQyxNQUFNQyxRQUFRTixPQUFPTyxLQUFLLENBQUM7UUFDM0JQLFNBQVNNLE1BQU1FLEdBQUcsTUFBTTtRQUV4QixLQUFLLE1BQU1DLFFBQVFILE1BQU87WUFDeEIsSUFBSUcsS0FBS0MsVUFBVSxDQUFDLFdBQVc7Z0JBQzdCLE1BQU1DLE9BQU9GLEtBQUtHLEtBQUssQ0FBQyxHQUFHQyxJQUFJO2dCQUMvQixJQUFJRixTQUFTLFVBQVU7Z0JBQ3ZCLElBQUk7b0JBQ0YsTUFBTUcsU0FBU3ZCLEtBQUt3QixLQUFLLENBQUNKO29CQUMxQixNQUFNRztnQkFDUixFQUFFLE9BQU07Z0JBQ04seUJBQXlCO2dCQUMzQjtZQUNGO1FBQ0Y7SUFDRjtBQUNGIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vYXN0b2NrLWFnZW50LWZyb250ZW5kLy4vc3JjL2xpYi9hcGkudHM/MmZhYiJdLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBBUElfQkFTRSA9IFwiXCI7XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBmZXRjaEFQSTxUPihwYXRoOiBzdHJpbmcpOiBQcm9taXNlPFQ+IHtcbiAgY29uc3QgcmVzID0gYXdhaXQgZmV0Y2goYCR7QVBJX0JBU0V9JHtwYXRofWApO1xuICBpZiAoIXJlcy5vaykgdGhyb3cgbmV3IEVycm9yKGBBUEkgZXJyb3I6ICR7cmVzLnN0YXR1c31gKTtcbiAgcmV0dXJuIHJlcy5qc29uKCk7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3N0QVBJPFQ+KHBhdGg6IHN0cmluZywgYm9keT86IHVua25vd24pOiBQcm9taXNlPFQ+IHtcbiAgY29uc3QgcmVzID0gYXdhaXQgZmV0Y2goYCR7QVBJX0JBU0V9JHtwYXRofWAsIHtcbiAgICBtZXRob2Q6IFwiUE9TVFwiLFxuICAgIGhlYWRlcnM6IHsgXCJDb250ZW50LVR5cGVcIjogXCJhcHBsaWNhdGlvbi9qc29uXCIgfSxcbiAgICBib2R5OiBib2R5ID8gSlNPTi5zdHJpbmdpZnkoYm9keSkgOiB1bmRlZmluZWQsXG4gIH0pO1xuICBpZiAoIXJlcy5vaykgdGhyb3cgbmV3IEVycm9yKGBBUEkgZXJyb3I6ICR7cmVzLnN0YXR1c31gKTtcbiAgcmV0dXJuIHJlcy5qc29uKCk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTWFya2V0VGVtcGVyYXR1cmVEYXRhIHtcbiAgdHJhZGVfZGF0ZTogc3RyaW5nO1xuICB0ZW1wZXJhdHVyZTogbnVtYmVyO1xuICB1cF9jb3VudDogbnVtYmVyO1xuICBkb3duX2NvdW50OiBudW1iZXI7XG4gIGxpbWl0X3VwX2NvdW50OiBudW1iZXI7XG4gIGxpbWl0X2Rvd25fY291bnQ/OiBudW1iZXI7XG4gIG1heF9zdHJlYWs/OiBudW1iZXI7XG4gIGJyb2tlbl9yYXRlPzogbnVtYmVyO1xuICBpbmRleF9hYm92ZV9tYTIwPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJbmRleE92ZXJ2aWV3IHtcbiAgbmFtZTogc3RyaW5nO1xuICBjb2RlOiBzdHJpbmc7XG4gIGNsb3NlOiBudW1iZXI7XG4gIHBjdF9jaGc6IG51bWJlcjtcbiAgdm9sdW1lOiBudW1iZXI7XG4gIHJlYWx0aW1lOiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJlY29tbWVuZGF0aW9uRGF0YSB7XG4gIHRzX2NvZGU6IHN0cmluZztcbiAgbmFtZTogc3RyaW5nO1xuICBzZWN0b3I6IHN0cmluZztcbiAgc2NvcmU6IG51bWJlcjtcbiAgbGV2ZWw6IHN0cmluZztcbiAgc2lnbmFsOiBzdHJpbmc7XG4gIG1hcmtldF90ZW1wX3Njb3JlOiBudW1iZXI7XG4gIHNlY3Rvcl9zY29yZTogbnVtYmVyO1xuICBjYXBpdGFsX3Njb3JlOiBudW1iZXI7XG4gIHRlY2huaWNhbF9zY29yZTogbnVtYmVyO1xuICBlbnRyeV9wcmljZTogbnVtYmVyIHwgbnVsbDtcbiAgdGFyZ2V0X3ByaWNlOiBudW1iZXIgfCBudWxsO1xuICBzdG9wX2xvc3M6IG51bWJlciB8IG51bGw7XG4gIHJlYXNvbnM6IHN0cmluZ1tdO1xuICByaXNrX25vdGU6IHN0cmluZztcbiAgbGxtX2FuYWx5c2lzPzogc3RyaW5nO1xuICBzY2FuX3Nlc3Npb246IHN0cmluZztcbiAgY3JlYXRlZF9hdDogc3RyaW5nIHwgbnVsbDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTZWN0b3JEYXRhIHtcbiAgc2VjdG9yX2NvZGU6IHN0cmluZztcbiAgc2VjdG9yX25hbWU6IHN0cmluZztcbiAgcGN0X2NoYW5nZTogbnVtYmVyO1xuICBjYXBpdGFsX2luZmxvdzogbnVtYmVyO1xuICBsaW1pdF91cF9jb3VudDogbnVtYmVyO1xuICBkYXlzX2NvbnRpbnVvdXM6IG51bWJlcjtcbiAgaGVhdF9zY29yZTogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIExhdGVzdFJlc3VsdCB7XG4gIG1hcmtldF90ZW1wZXJhdHVyZTogTWFya2V0VGVtcGVyYXR1cmVEYXRhIHwgbnVsbDtcbiAgcmVjb21tZW5kYXRpb25zOiBSZWNvbW1lbmRhdGlvbkRhdGFbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDaGF0TWVzc2FnZSB7XG4gIHJvbGU6IFwidXNlclwiIHwgXCJhc3Npc3RhbnRcIjtcbiAgY29udGVudDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN0cmVhbUV2ZW50IHtcbiAgdHlwZTogXCJjb250ZW50XCIgfCBcInN0YXR1c1wiO1xuICBjb250ZW50OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiogc3RyZWFtQ2hhdChcbiAgbWVzc2FnZXM6IENoYXRNZXNzYWdlW11cbik6IEFzeW5jR2VuZXJhdG9yPFN0cmVhbUV2ZW50LCB2b2lkLCB1bmRlZmluZWQ+IHtcbiAgY29uc3QgcmVzID0gYXdhaXQgZmV0Y2goYCR7QVBJX0JBU0V9L2FwaS9jaGF0L3N0cmVhbWAsIHtcbiAgICBtZXRob2Q6IFwiUE9TVFwiLFxuICAgIGhlYWRlcnM6IHsgXCJDb250ZW50LVR5cGVcIjogXCJhcHBsaWNhdGlvbi9qc29uXCIgfSxcbiAgICBib2R5OiBKU09OLnN0cmluZ2lmeSh7IG1lc3NhZ2VzIH0pLFxuICB9KTtcblxuICBpZiAoIXJlcy5vaykgdGhyb3cgbmV3IEVycm9yKGBDaGF0IEFQSSBlcnJvcjogJHtyZXMuc3RhdHVzfWApO1xuICBpZiAoIXJlcy5ib2R5KSB0aHJvdyBuZXcgRXJyb3IoXCJObyByZXNwb25zZSBib2R5XCIpO1xuXG4gIGNvbnN0IHJlYWRlciA9IHJlcy5ib2R5LmdldFJlYWRlcigpO1xuICBjb25zdCBkZWNvZGVyID0gbmV3IFRleHREZWNvZGVyKCk7XG4gIGxldCBidWZmZXIgPSBcIlwiO1xuXG4gIHdoaWxlICh0cnVlKSB7XG4gICAgY29uc3QgeyBkb25lLCB2YWx1ZSB9ID0gYXdhaXQgcmVhZGVyLnJlYWQoKTtcbiAgICBpZiAoZG9uZSkgYnJlYWs7XG5cbiAgICBidWZmZXIgKz0gZGVjb2Rlci5kZWNvZGUodmFsdWUsIHsgc3RyZWFtOiB0cnVlIH0pO1xuICAgIGNvbnN0IGxpbmVzID0gYnVmZmVyLnNwbGl0KFwiXFxuXCIpO1xuICAgIGJ1ZmZlciA9IGxpbmVzLnBvcCgpIHx8IFwiXCI7XG5cbiAgICBmb3IgKGNvbnN0IGxpbmUgb2YgbGluZXMpIHtcbiAgICAgIGlmIChsaW5lLnN0YXJ0c1dpdGgoXCJkYXRhOiBcIikpIHtcbiAgICAgICAgY29uc3QgZGF0YSA9IGxpbmUuc2xpY2UoNikudHJpbSgpO1xuICAgICAgICBpZiAoZGF0YSA9PT0gXCJbRE9ORV1cIikgcmV0dXJuO1xuICAgICAgICB0cnkge1xuICAgICAgICAgIGNvbnN0IHBhcnNlZCA9IEpTT04ucGFyc2UoZGF0YSkgYXMgU3RyZWFtRXZlbnQ7XG4gICAgICAgICAgeWllbGQgcGFyc2VkO1xuICAgICAgICB9IGNhdGNoIHtcbiAgICAgICAgICAvLyBpZ25vcmUgbWFsZm9ybWVkIGxpbmVzXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJBUElfQkFTRSIsImZldGNoQVBJIiwicGF0aCIsInJlcyIsImZldGNoIiwib2siLCJFcnJvciIsInN0YXR1cyIsImpzb24iLCJwb3N0QVBJIiwiYm9keSIsIm1ldGhvZCIsImhlYWRlcnMiLCJKU09OIiwic3RyaW5naWZ5IiwidW5kZWZpbmVkIiwic3RyZWFtQ2hhdCIsIm1lc3NhZ2VzIiwicmVhZGVyIiwiZ2V0UmVhZGVyIiwiZGVjb2RlciIsIlRleHREZWNvZGVyIiwiYnVmZmVyIiwiZG9uZSIsInZhbHVlIiwicmVhZCIsImRlY29kZSIsInN0cmVhbSIsImxpbmVzIiwic3BsaXQiLCJwb3AiLCJsaW5lIiwic3RhcnRzV2l0aCIsImRhdGEiLCJzbGljZSIsInRyaW0iLCJwYXJzZWQiLCJwYXJzZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./src/lib/api.ts\n"); - -/***/ }), - -/***/ "(ssr)/./src/lib/utils.ts": -/*!**************************!*\ - !*** ./src/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 */ formatNumber: () => (/* binding */ formatNumber),\n/* harmony export */ getLevelBadge: () => (/* binding */ getLevelBadge),\n/* harmony export */ getScoreColor: () => (/* binding */ getScoreColor),\n/* harmony export */ getSignalColor: () => (/* binding */ getSignalColor),\n/* harmony export */ getTempColor: () => (/* binding */ getTempColor),\n/* harmony export */ getTempLabel: () => (/* binding */ getTempLabel)\n/* harmony export */ });\nfunction cn(...classes) {\n return classes.filter(Boolean).join(\" \");\n}\nfunction formatNumber(n) {\n if (Math.abs(n) >= 10000) return (n / 10000).toFixed(2) + \"亿\";\n if (Math.abs(n) >= 1) return n.toFixed(2) + \"万\";\n return n.toFixed(2);\n}\nfunction getScoreColor(score) {\n if (score >= 80) return \"text-red-400\";\n if (score >= 60) return \"text-orange-400\";\n if (score >= 40) return \"text-yellow-400\";\n return \"text-gray-400\";\n}\nfunction getLevelBadge(level) {\n switch(level){\n case \"强烈推荐\":\n return {\n bg: \"bg-red-500/20\",\n text: \"text-red-400\"\n };\n case \"推荐\":\n return {\n bg: \"bg-orange-500/20\",\n text: \"text-orange-400\"\n };\n case \"观望\":\n return {\n bg: \"bg-yellow-500/20\",\n text: \"text-yellow-400\"\n };\n default:\n return {\n bg: \"bg-gray-500/20\",\n text: \"text-gray-400\"\n };\n }\n}\nfunction getSignalColor(signal) {\n if (signal === \"BUY\") return \"text-red-400\";\n if (signal === \"SELL\") return \"text-green-400\";\n return \"text-gray-400\";\n}\nfunction getTempColor(temp) {\n if (temp >= 70) return \"#ff6b6b\";\n if (temp >= 50) return \"#f59e0b\";\n if (temp >= 30) return \"#fbbf24\";\n return \"#34d399\";\n}\nfunction getTempLabel(temp) {\n if (temp >= 70) return \"火热\";\n if (temp >= 50) return \"温和\";\n if (temp >= 30) return \"偏冷\";\n return \"冰点\";\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9zcmMvbGliL3V0aWxzLnRzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBTyxTQUFTQSxHQUFHLEdBQUdDLE9BQThDO0lBQ2xFLE9BQU9BLFFBQVFDLE1BQU0sQ0FBQ0MsU0FBU0MsSUFBSSxDQUFDO0FBQ3RDO0FBRU8sU0FBU0MsYUFBYUMsQ0FBUztJQUNwQyxJQUFJQyxLQUFLQyxHQUFHLENBQUNGLE1BQU0sT0FBTyxPQUFPLENBQUNBLElBQUksS0FBSSxFQUFHRyxPQUFPLENBQUMsS0FBSztJQUMxRCxJQUFJRixLQUFLQyxHQUFHLENBQUNGLE1BQU0sR0FBRyxPQUFPQSxFQUFFRyxPQUFPLENBQUMsS0FBSztJQUM1QyxPQUFPSCxFQUFFRyxPQUFPLENBQUM7QUFDbkI7QUFFTyxTQUFTQyxjQUFjQyxLQUFhO0lBQ3pDLElBQUlBLFNBQVMsSUFBSSxPQUFPO0lBQ3hCLElBQUlBLFNBQVMsSUFBSSxPQUFPO0lBQ3hCLElBQUlBLFNBQVMsSUFBSSxPQUFPO0lBQ3hCLE9BQU87QUFDVDtBQUVPLFNBQVNDLGNBQWNDLEtBQWE7SUFDekMsT0FBUUE7UUFDTixLQUFLO1lBQ0gsT0FBTztnQkFBRUMsSUFBSTtnQkFBaUJDLE1BQU07WUFBZTtRQUNyRCxLQUFLO1lBQ0gsT0FBTztnQkFBRUQsSUFBSTtnQkFBb0JDLE1BQU07WUFBa0I7UUFDM0QsS0FBSztZQUNILE9BQU87Z0JBQUVELElBQUk7Z0JBQW9CQyxNQUFNO1lBQWtCO1FBQzNEO1lBQ0UsT0FBTztnQkFBRUQsSUFBSTtnQkFBa0JDLE1BQU07WUFBZ0I7SUFDekQ7QUFDRjtBQUVPLFNBQVNDLGVBQWVDLE1BQWM7SUFDM0MsSUFBSUEsV0FBVyxPQUFPLE9BQU87SUFDN0IsSUFBSUEsV0FBVyxRQUFRLE9BQU87SUFDOUIsT0FBTztBQUNUO0FBRU8sU0FBU0MsYUFBYUMsSUFBWTtJQUN2QyxJQUFJQSxRQUFRLElBQUksT0FBTztJQUN2QixJQUFJQSxRQUFRLElBQUksT0FBTztJQUN2QixJQUFJQSxRQUFRLElBQUksT0FBTztJQUN2QixPQUFPO0FBQ1Q7QUFFTyxTQUFTQyxhQUFhRCxJQUFZO0lBQ3ZDLElBQUlBLFFBQVEsSUFBSSxPQUFPO0lBQ3ZCLElBQUlBLFFBQVEsSUFBSSxPQUFPO0lBQ3ZCLElBQUlBLFFBQVEsSUFBSSxPQUFPO0lBQ3ZCLE9BQU87QUFDVCIsInNvdXJjZXMiOlsid2VicGFjazovL2FzdG9jay1hZ2VudC1mcm9udGVuZC8uL3NyYy9saWIvdXRpbHMudHM/N2MxYyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gY24oLi4uY2xhc3NlczogKHN0cmluZyB8IGZhbHNlIHwgdW5kZWZpbmVkIHwgbnVsbClbXSkge1xuICByZXR1cm4gY2xhc3Nlcy5maWx0ZXIoQm9vbGVhbikuam9pbihcIiBcIik7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXROdW1iZXIobjogbnVtYmVyKTogc3RyaW5nIHtcbiAgaWYgKE1hdGguYWJzKG4pID49IDEwMDAwKSByZXR1cm4gKG4gLyAxMDAwMCkudG9GaXhlZCgyKSArIFwi5Lq/XCI7XG4gIGlmIChNYXRoLmFicyhuKSA+PSAxKSByZXR1cm4gbi50b0ZpeGVkKDIpICsgXCLkuIdcIjtcbiAgcmV0dXJuIG4udG9GaXhlZCgyKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFNjb3JlQ29sb3Ioc2NvcmU6IG51bWJlcik6IHN0cmluZyB7XG4gIGlmIChzY29yZSA+PSA4MCkgcmV0dXJuIFwidGV4dC1yZWQtNDAwXCI7XG4gIGlmIChzY29yZSA+PSA2MCkgcmV0dXJuIFwidGV4dC1vcmFuZ2UtNDAwXCI7XG4gIGlmIChzY29yZSA+PSA0MCkgcmV0dXJuIFwidGV4dC15ZWxsb3ctNDAwXCI7XG4gIHJldHVybiBcInRleHQtZ3JheS00MDBcIjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldExldmVsQmFkZ2UobGV2ZWw6IHN0cmluZyk6IHsgYmc6IHN0cmluZzsgdGV4dDogc3RyaW5nIH0ge1xuICBzd2l0Y2ggKGxldmVsKSB7XG4gICAgY2FzZSBcIuW8uueDiOaOqOiNkFwiOlxuICAgICAgcmV0dXJuIHsgYmc6IFwiYmctcmVkLTUwMC8yMFwiLCB0ZXh0OiBcInRleHQtcmVkLTQwMFwiIH07XG4gICAgY2FzZSBcIuaOqOiNkFwiOlxuICAgICAgcmV0dXJuIHsgYmc6IFwiYmctb3JhbmdlLTUwMC8yMFwiLCB0ZXh0OiBcInRleHQtb3JhbmdlLTQwMFwiIH07XG4gICAgY2FzZSBcIuinguacm1wiOlxuICAgICAgcmV0dXJuIHsgYmc6IFwiYmcteWVsbG93LTUwMC8yMFwiLCB0ZXh0OiBcInRleHQteWVsbG93LTQwMFwiIH07XG4gICAgZGVmYXVsdDpcbiAgICAgIHJldHVybiB7IGJnOiBcImJnLWdyYXktNTAwLzIwXCIsIHRleHQ6IFwidGV4dC1ncmF5LTQwMFwiIH07XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFNpZ25hbENvbG9yKHNpZ25hbDogc3RyaW5nKTogc3RyaW5nIHtcbiAgaWYgKHNpZ25hbCA9PT0gXCJCVVlcIikgcmV0dXJuIFwidGV4dC1yZWQtNDAwXCI7XG4gIGlmIChzaWduYWwgPT09IFwiU0VMTFwiKSByZXR1cm4gXCJ0ZXh0LWdyZWVuLTQwMFwiO1xuICByZXR1cm4gXCJ0ZXh0LWdyYXktNDAwXCI7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRUZW1wQ29sb3IodGVtcDogbnVtYmVyKTogc3RyaW5nIHtcbiAgaWYgKHRlbXAgPj0gNzApIHJldHVybiBcIiNmZjZiNmJcIjtcbiAgaWYgKHRlbXAgPj0gNTApIHJldHVybiBcIiNmNTllMGJcIjtcbiAgaWYgKHRlbXAgPj0gMzApIHJldHVybiBcIiNmYmJmMjRcIjtcbiAgcmV0dXJuIFwiIzM0ZDM5OVwiO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0VGVtcExhYmVsKHRlbXA6IG51bWJlcik6IHN0cmluZyB7XG4gIGlmICh0ZW1wID49IDcwKSByZXR1cm4gXCLngavng61cIjtcbiAgaWYgKHRlbXAgPj0gNTApIHJldHVybiBcIua4qeWSjFwiO1xuICBpZiAodGVtcCA+PSAzMCkgcmV0dXJuIFwi5YGP5Ya3XCI7XG4gIHJldHVybiBcIuWGsOeCuVwiO1xufVxuIl0sIm5hbWVzIjpbImNuIiwiY2xhc3NlcyIsImZpbHRlciIsIkJvb2xlYW4iLCJqb2luIiwiZm9ybWF0TnVtYmVyIiwibiIsIk1hdGgiLCJhYnMiLCJ0b0ZpeGVkIiwiZ2V0U2NvcmVDb2xvciIsInNjb3JlIiwiZ2V0TGV2ZWxCYWRnZSIsImxldmVsIiwiYmciLCJ0ZXh0IiwiZ2V0U2lnbmFsQ29sb3IiLCJzaWduYWwiLCJnZXRUZW1wQ29sb3IiLCJ0ZW1wIiwiZ2V0VGVtcExhYmVsIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./src/lib/utils.ts\n"); - -/***/ }), - -/***/ "(rsc)/./src/app/globals.css": -/*!*****************************!*\ - !*** ./src/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__ = (\"aa0465df8293\");\nif (false) {}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9zcmMvYXBwL2dsb2JhbHMuY3NzIiwibWFwcGluZ3MiOiI7Ozs7QUFBQSxpRUFBZSxjQUFjO0FBQzdCLElBQUksS0FBVSxFQUFFLEVBQXVCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vYXN0b2NrLWFnZW50LWZyb250ZW5kLy4vc3JjL2FwcC9nbG9iYWxzLmNzcz9mZTNiIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBkZWZhdWx0IFwiYWEwNDY1ZGY4MjkzXCJcbmlmIChtb2R1bGUuaG90KSB7IG1vZHVsZS5ob3QuYWNjZXB0KCkgfVxuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(rsc)/./src/app/globals.css\n"); - -/***/ }), - -/***/ "(rsc)/./src/app/layout.tsx": -/*!****************************!*\ - !*** ./src/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 */ metadata: () => (/* binding */ metadata),\n/* harmony export */ viewport: () => (/* binding */ viewport)\n/* harmony export */ });\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-dev-runtime */ \"(rsc)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/rsc/react-jsx-dev-runtime.js\");\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _globals_css__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./globals.css */ \"(rsc)/./src/app/globals.css\");\n\n\nconst metadata = {\n title: \"Dragon AI Agent\",\n description: \"基于资金驱动的四层漏斗模型,盘中实时分析推荐A股\"\n};\nconst viewport = {\n width: \"device-width\",\n initialScale: 1,\n maximumScale: 1,\n userScalable: false\n};\nfunction RootLayout({ children }) {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"html\", {\n lang: \"zh-CN\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"body\", {\n className: \"min-h-screen bg-bg-primary text-text-primary font-display\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex min-h-screen\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"aside\", {\n className: \"hidden md:flex flex-col w-60 glass-sidebar fixed inset-y-0 left-0 z-40\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"px-6 pt-7 pb-5\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex items-center gap-3\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"w-8 h-8 rounded-lg bg-gradient-to-br from-amber-500 to-amber-600 flex items-center justify-center text-sm font-bold text-white shadow-glow-sm\",\n children: \"D\"\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 31,\n columnNumber: 17\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"h1\", {\n className: \"text-sm font-semibold tracking-tight\",\n children: \"Dragon AI Agent\"\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 35,\n columnNumber: 19\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"p\", {\n className: \"text-xs text-text-muted mt-0.5 font-light tracking-wide\",\n children: \"资金驱动 \\xb7 四层漏斗模型\"\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 36,\n columnNumber: 19\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 34,\n columnNumber: 17\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 30,\n columnNumber: 15\n }, this)\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 29,\n columnNumber: 13\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"mx-5 h-px bg-gradient-to-r from-transparent via-white/[0.06] to-transparent\"\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 42,\n columnNumber: 13\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"nav\", {\n className: \"flex-1 py-5 px-3 space-y-1\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(SideNavItem, {\n href: \"/\",\n icon: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(DashboardIcon, {}, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 46,\n columnNumber: 43\n }, void 0),\n label: \"总览\"\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 46,\n columnNumber: 15\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(SideNavItem, {\n href: \"/recommendations\",\n icon: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(TargetIcon, {}, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 47,\n columnNumber: 58\n }, void 0),\n label: \"推荐列表\"\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 47,\n columnNumber: 15\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(SideNavItem, {\n href: \"/sectors\",\n icon: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(FireIcon, {}, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 48,\n columnNumber: 50\n }, void 0),\n label: \"板块分析\"\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 48,\n columnNumber: 15\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(SideNavItem, {\n href: \"/chat\",\n icon: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(ChatIcon, {}, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 49,\n columnNumber: 47\n }, void 0),\n label: \"AI 对话\"\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 49,\n columnNumber: 15\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 45,\n columnNumber: 13\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"px-6 py-5 border-t border-white/[0.04]\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"text-xs text-text-muted leading-relaxed\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex items-center gap-1.5 mb-1\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"w-1 h-1 rounded-full bg-emerald-500\"\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 56,\n columnNumber: 19\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n children: \"Tushare Pro + 腾讯行情\"\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 57,\n columnNumber: 19\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 55,\n columnNumber: 17\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex items-center gap-1.5\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"w-1 h-1 rounded-full bg-accent-cyan\"\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 60,\n columnNumber: 19\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n children: \"AI 引擎: DeepSeek\"\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 61,\n columnNumber: 19\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 59,\n columnNumber: 17\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 54,\n columnNumber: 15\n }, this)\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 53,\n columnNumber: 13\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 27,\n columnNumber: 11\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"main\", {\n className: \"flex-1 md:ml-60 pb-16 md:pb-0 min-h-screen\",\n children: children\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 68,\n columnNumber: 11\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 25,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(MobileNav, {}, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 74,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 23,\n columnNumber: 7\n }, this)\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 22,\n columnNumber: 5\n }, this);\n}\nfunction MobileNav() {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"nav\", {\n className: \"fixed bottom-0 left-0 right-0 md:hidden z-50 bg-bg-secondary/95 backdrop-blur-xl border-t border-white/[0.04]\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex justify-around py-2 pb-[max(0.5rem,env(safe-area-inset-bottom))]\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(MobileNavItem, {\n href: \"/\",\n label: \"总览\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(DashboardIcon, {}, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 85,\n columnNumber: 11\n }, this)\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 84,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(MobileNavItem, {\n href: \"/recommendations\",\n label: \"推荐\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(TargetIcon, {}, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 88,\n columnNumber: 11\n }, this)\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 87,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(MobileNavItem, {\n href: \"/sectors\",\n label: \"板块\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(FireIcon, {}, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 91,\n columnNumber: 11\n }, this)\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 90,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(MobileNavItem, {\n href: \"/chat\",\n label: \"对话\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(ChatIcon, {}, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 94,\n columnNumber: 11\n }, this)\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 93,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 83,\n columnNumber: 7\n }, this)\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 82,\n columnNumber: 5\n }, this);\n}\nfunction MobileNavItem({ href, label, children }) {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"a\", {\n href: href,\n className: \"flex flex-col items-center gap-1 text-text-muted hover:text-text-primary transition-colors active:scale-95\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"text-lg\",\n children: children\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 107,\n columnNumber: 7\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"text-xs font-medium\",\n children: label\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 108,\n columnNumber: 7\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 103,\n columnNumber: 5\n }, this);\n}\nfunction SideNavItem({ href, icon, label }) {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"a\", {\n href: href,\n className: \"flex items-center gap-3 px-4 py-2.5 rounded-xl text-sm text-text-secondary hover:text-text-primary hover:bg-white/[0.04] transition-all duration-200\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"text-base opacity-70\",\n children: icon\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 119,\n columnNumber: 7\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"font-medium\",\n children: label\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 120,\n columnNumber: 7\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 115,\n columnNumber: 5\n }, this);\n}\n/* SVG Icons - clean, minimal */ function DashboardIcon() {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"svg\", {\n width: \"18\",\n height: \"18\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n stroke: \"currentColor\",\n strokeWidth: \"1.8\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"rect\", {\n x: \"3\",\n y: \"3\",\n width: \"7\",\n height: \"7\",\n rx: \"1.5\"\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 129,\n columnNumber: 7\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"rect\", {\n x: \"14\",\n y: \"3\",\n width: \"7\",\n height: \"7\",\n rx: \"1.5\"\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 130,\n columnNumber: 7\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"rect\", {\n x: \"3\",\n y: \"14\",\n width: \"7\",\n height: \"7\",\n rx: \"1.5\"\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 131,\n columnNumber: 7\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"rect\", {\n x: \"14\",\n y: \"14\",\n width: \"7\",\n height: \"7\",\n rx: \"1.5\"\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 132,\n columnNumber: 7\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 128,\n columnNumber: 5\n }, this);\n}\nfunction TargetIcon() {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"svg\", {\n width: \"18\",\n height: \"18\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n stroke: \"currentColor\",\n strokeWidth: \"1.8\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"circle\", {\n cx: \"12\",\n cy: \"12\",\n r: \"10\"\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 140,\n columnNumber: 7\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"circle\", {\n cx: \"12\",\n cy: \"12\",\n r: \"6\"\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 141,\n columnNumber: 7\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"circle\", {\n cx: \"12\",\n cy: \"12\",\n r: \"2\"\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 142,\n columnNumber: 7\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 139,\n columnNumber: 5\n }, this);\n}\nfunction FireIcon() {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"svg\", {\n width: \"18\",\n height: \"18\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n stroke: \"currentColor\",\n strokeWidth: \"1.8\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"path\", {\n d: \"M12 2c.5 2.5-.5 5-2 7 1 0 2.5.5 3 2.5.5-2 2-3 3-4-1 3-1 6-4 8.5-1.5 1-3.5 1.5-5 1-1.5-.5-2.5-2-2.5-3.5 0-3 3-5 5-7.5C10 5 11 3.5 12 2z\"\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 150,\n columnNumber: 7\n }, this)\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 149,\n columnNumber: 5\n }, this);\n}\nfunction ChatIcon() {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"svg\", {\n width: \"18\",\n height: \"18\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n stroke: \"currentColor\",\n strokeWidth: \"1.8\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"path\", {\n d: \"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z\"\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 158,\n columnNumber: 7\n }, this)\n }, void 0, false, {\n fileName: \"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx\",\n lineNumber: 157,\n columnNumber: 5\n }, this);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,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QixRQUFPO1FBQUtDLFNBQVE7UUFBWUMsTUFBSztRQUFPQyxRQUFPO1FBQWVDLGFBQVk7UUFBTUMsZUFBYztRQUFRQyxnQkFBZTtrQkFDdkksNEVBQUNTO1lBQUtDLEdBQUU7Ozs7Ozs7Ozs7O0FBR2Q7QUFFQSxTQUFTdkI7SUFDUCxxQkFDRSw4REFBQ007UUFBSTVCLE9BQU07UUFBSzZCLFFBQU87UUFBS0MsU0FBUTtRQUFZQyxNQUFLO1FBQU9DLFFBQU87UUFBZUMsYUFBWTtRQUFNQyxlQUFjO1FBQVFDLGdCQUFlO2tCQUN2SSw0RUFBQ1M7WUFBS0MsR0FBRTs7Ozs7Ozs7Ozs7QUFHZCIsInNvdXJjZXMiOlsid2VicGFjazovL2FzdG9jay1hZ2VudC1mcm9udGVuZC8uL3NyYy9hcHAvbGF5b3V0LnRzeD81N2E5Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgTWV0YWRhdGEsIFZpZXdwb3J0IH0gZnJvbSBcIm5leHRcIjtcbmltcG9ydCBcIi4vZ2xvYmFscy5jc3NcIjtcblxuZXhwb3J0IGNvbnN0IG1ldGFkYXRhOiBNZXRhZGF0YSA9IHtcbiAgdGl0bGU6IFwiRHJhZ29uIEFJIEFnZW50XCIsXG4gIGRlc2NyaXB0aW9uOiBcIuWfuuS6jui1hOmHkempseWKqOeahOWbm+Wxgua8j+aWl+aooeWei++8jOebmOS4reWunuaXtuWIhuaekOaOqOiNkEHogqFcIixcbn07XG5cbmV4cG9ydCBjb25zdCB2aWV3cG9ydDogVmlld3BvcnQgPSB7XG4gIHdpZHRoOiBcImRldmljZS13aWR0aFwiLFxuICBpbml0aWFsU2NhbGU6IDEsXG4gIG1heGltdW1TY2FsZTogMSxcbiAgdXNlclNjYWxhYmxlOiBmYWxzZSxcbn07XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIFJvb3RMYXlvdXQoe1xuICBjaGlsZHJlbixcbn06IHtcbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZTtcbn0pIHtcbiAgcmV0dXJuIChcbiAgICA8aHRtbCBsYW5nPVwiemgtQ05cIj5cbiAgICAgIDxib2R5IGNsYXNzTmFtZT1cIm1pbi1oLXNjcmVlbiBiZy1iZy1wcmltYXJ5IHRleHQtdGV4dC1wcmltYXJ5IGZvbnQtZGlzcGxheVwiPlxuICAgICAgICB7LyogRGVza3RvcDogc2lkZWJhciArIG1haW4gKi99XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmxleCBtaW4taC1zY3JlZW5cIj5cbiAgICAgICAgICB7LyogRGVza3RvcCBzaWRlYmFyICovfVxuICAgICAgICAgIDxhc2lkZSBjbGFzc05hbWU9XCJoaWRkZW4gbWQ6ZmxleCBmbGV4LWNvbCB3LTYwIGdsYXNzLXNpZGViYXIgZml4ZWQgaW5zZXQteS0wIGxlZnQtMCB6LTQwXCI+XG4gICAgICAgICAgICB7LyogQnJhbmQgKi99XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInB4LTYgcHQtNyBwYi01XCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTNcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInctOCBoLTggcm91bmRlZC1sZyBiZy1ncmFkaWVudC10by1iciBmcm9tLWFtYmVyLTUwMCB0by1hbWJlci02MDAgZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgdGV4dC1zbSBmb250LWJvbGQgdGV4dC13aGl0ZSBzaGFkb3ctZ2xvdy1zbVwiPlxuICAgICAgICAgICAgICAgICAgRFxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgICA8aDEgY2xhc3NOYW1lPVwidGV4dC1zbSBmb250LXNlbWlib2xkIHRyYWNraW5nLXRpZ2h0XCI+RHJhZ29uIEFJIEFnZW50PC9oMT5cbiAgICAgICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT1cInRleHQteHMgdGV4dC10ZXh0LW11dGVkIG10LTAuNSBmb250LWxpZ2h0IHRyYWNraW5nLXdpZGVcIj7otYTph5HpqbHliqggwrcg5Zub5bGC5ryP5paX5qih5Z6LPC9wPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICB7LyogRGl2aWRlciAqL31cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibXgtNSBoLXB4IGJnLWdyYWRpZW50LXRvLXIgZnJvbS10cmFuc3BhcmVudCB2aWEtd2hpdGUvWzAuMDZdIHRvLXRyYW5zcGFyZW50XCIgLz5cblxuICAgICAgICAgICAgey8qIE5hdiAqL31cbiAgICAgICAgICAgIDxuYXYgY2xhc3NOYW1lPVwiZmxleC0xIHB5LTUgcHgtMyBzcGFjZS15LTFcIj5cbiAgICAgICAgICAgICAgPFNpZGVOYXZJdGVtIGhyZWY9XCIvXCIgaWNvbj17PERhc2hib2FyZEljb24gLz59IGxhYmVsPVwi5oC76KeIXCIgLz5cbiAgICAgICAgICAgICAgPFNpZGVOYXZJdGVtIGhyZWY9XCIvcmVjb21tZW5kYXRpb25zXCIgaWNvbj17PFRhcmdldEljb24gLz59IGxhYmVsPVwi5o6o6I2Q5YiX6KGoXCIgLz5cbiAgICAgICAgICAgICAgPFNpZGVOYXZJdGVtIGhyZWY9XCIvc2VjdG9yc1wiIGljb249ezxGaXJlSWNvbiAvPn0gbGFiZWw9XCLmnb/lnZfliIbmnpBcIiAvPlxuICAgICAgICAgICAgICA8U2lkZU5hdkl0ZW0gaHJlZj1cIi9jaGF0XCIgaWNvbj17PENoYXRJY29uIC8+fSBsYWJlbD1cIkFJIOWvueivnVwiIC8+XG4gICAgICAgICAgICA8L25hdj5cblxuICAgICAgICAgICAgey8qIEZvb3RlciAqL31cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicHgtNiBweS01IGJvcmRlci10IGJvcmRlci13aGl0ZS9bMC4wNF1cIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0ZXh0LXhzIHRleHQtdGV4dC1tdXRlZCBsZWFkaW5nLXJlbGF4ZWRcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZsZXggaXRlbXMtY2VudGVyIGdhcC0xLjUgbWItMVwiPlxuICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwidy0xIGgtMSByb3VuZGVkLWZ1bGwgYmctZW1lcmFsZC01MDBcIiAvPlxuICAgICAgICAgICAgICAgICAgPHNwYW4+VHVzaGFyZSBQcm8gKyDohb7orq/ooYzmg4U8L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmbGV4IGl0ZW1zLWNlbnRlciBnYXAtMS41XCI+XG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJ3LTEgaC0xIHJvdW5kZWQtZnVsbCBiZy1hY2NlbnQtY3lhblwiIC8+XG4gICAgICAgICAgICAgICAgICA8c3Bhbj5BSSDlvJXmk446IERlZXBTZWVrPC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvYXNpZGU+XG5cbiAgICAgICAgICB7LyogTWFpbiBjb250ZW50IGFyZWEgKi99XG4gICAgICAgICAgPG1haW4gY2xhc3NOYW1lPVwiZmxleC0xIG1kOm1sLTYwIHBiLTE2IG1kOnBiLTAgbWluLWgtc2NyZWVuXCI+XG4gICAgICAgICAgICB7Y2hpbGRyZW59XG4gICAgICAgICAgPC9tYWluPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICB7LyogTW9iaWxlIGJvdHRvbSBuYXYgKi99XG4gICAgICAgIDxNb2JpbGVOYXYgLz5cbiAgICAgIDwvYm9keT5cbiAgICA8L2h0bWw+XG4gICk7XG59XG5cbmZ1bmN0aW9uIE1vYmlsZU5hdigpIHtcbiAgcmV0dXJuIChcbiAgICA8bmF2IGNsYXNzTmFtZT1cImZpeGVkIGJvdHRvbS0wIGxlZnQtMCByaWdodC0wIG1kOmhpZGRlbiB6LTUwIGJnLWJnLXNlY29uZGFyeS85NSBiYWNrZHJvcC1ibHVyLXhsIGJvcmRlci10IGJvcmRlci13aGl0ZS9bMC4wNF1cIj5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmxleCBqdXN0aWZ5LWFyb3VuZCBweS0yIHBiLVttYXgoMC41cmVtLGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSldXCI+XG4gICAgICAgIDxNb2JpbGVOYXZJdGVtIGhyZWY9XCIvXCIgbGFiZWw9XCLmgLvop4hcIj5cbiAgICAgICAgICA8RGFzaGJvYXJkSWNvbiAvPlxuICAgICAgICA8L01vYmlsZU5hdkl0ZW0+XG4gICAgICAgIDxNb2JpbGVOYXZJdGVtIGhyZWY9XCIvcmVjb21tZW5kYXRpb25zXCIgbGFiZWw9XCLmjqjojZBcIj5cbiAgICAgICAgICA8VGFyZ2V0SWNvbiAvPlxuICAgICAgICA8L01vYmlsZU5hdkl0ZW0+XG4gICAgICAgIDxNb2JpbGVOYXZJdGVtIGhyZWY9XCIvc2VjdG9yc1wiIGxhYmVsPVwi5p2/5Z2XXCI+XG4gICAgICAgICAgPEZpcmVJY29uIC8+XG4gICAgICAgIDwvTW9iaWxlTmF2SXRlbT5cbiAgICAgICAgPE1vYmlsZU5hdkl0ZW0gaHJlZj1cIi9jaGF0XCIgbGFiZWw9XCLlr7nor51cIj5cbiAgICAgICAgICA8Q2hhdEljb24gLz5cbiAgICAgICAgPC9Nb2JpbGVOYXZJdGVtPlxuICAgICAgPC9kaXY+XG4gICAgPC9uYXY+XG4gICk7XG59XG5cbmZ1bmN0aW9uIE1vYmlsZU5hdkl0ZW0oeyBocmVmLCBsYWJlbCwgY2hpbGRyZW4gfTogeyBocmVmOiBzdHJpbmc7IGxhYmVsOiBzdHJpbmc7IGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGUgfSkge1xuICByZXR1cm4gKFxuICAgIDxhXG4gICAgICBocmVmPXtocmVmfVxuICAgICAgY2xhc3NOYW1lPVwiZmxleCBmbGV4LWNvbCBpdGVtcy1jZW50ZXIgZ2FwLTEgdGV4dC10ZXh0LW11dGVkIGhvdmVyOnRleHQtdGV4dC1wcmltYXJ5IHRyYW5zaXRpb24tY29sb3JzIGFjdGl2ZTpzY2FsZS05NVwiXG4gICAgPlxuICAgICAgPHNwYW4gY2xhc3NOYW1lPVwidGV4dC1sZ1wiPntjaGlsZHJlbn08L3NwYW4+XG4gICAgICA8c3BhbiBjbGFzc05hbWU9XCJ0ZXh0LXhzIGZvbnQtbWVkaXVtXCI+e2xhYmVsfTwvc3Bhbj5cbiAgICA8L2E+XG4gICk7XG59XG5cbmZ1bmN0aW9uIFNpZGVOYXZJdGVtKHsgaHJlZiwgaWNvbiwgbGFiZWwgfTogeyBocmVmOiBzdHJpbmc7IGljb246IFJlYWN0LlJlYWN0Tm9kZTsgbGFiZWw6IHN0cmluZyB9KSB7XG4gIHJldHVybiAoXG4gICAgPGFcbiAgICAgIGhyZWY9e2hyZWZ9XG4gICAgICBjbGFzc05hbWU9XCJmbGV4IGl0ZW1zLWNlbnRlciBnYXAtMyBweC00IHB5LTIuNSByb3VuZGVkLXhsIHRleHQtc20gdGV4dC10ZXh0LXNlY29uZGFyeSBob3Zlcjp0ZXh0LXRleHQtcHJpbWFyeSBob3ZlcjpiZy13aGl0ZS9bMC4wNF0gdHJhbnNpdGlvbi1hbGwgZHVyYXRpb24tMjAwXCJcbiAgICA+XG4gICAgICA8c3BhbiBjbGFzc05hbWU9XCJ0ZXh0LWJhc2Ugb3BhY2l0eS03MFwiPntpY29ufTwvc3Bhbj5cbiAgICAgIDxzcGFuIGNsYXNzTmFtZT1cImZvbnQtbWVkaXVtXCI+e2xhYmVsfTwvc3Bhbj5cbiAgICA8L2E+XG4gICk7XG59XG5cbi8qIFNWRyBJY29ucyAtIGNsZWFuLCBtaW5pbWFsICovXG5mdW5jdGlvbiBEYXNoYm9hcmRJY29uKCkge1xuICByZXR1cm4gKFxuICAgIDxzdmcgd2lkdGg9XCIxOFwiIGhlaWdodD1cIjE4XCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlV2lkdGg9XCIxLjhcIiBzdHJva2VMaW5lY2FwPVwicm91bmRcIiBzdHJva2VMaW5lam9pbj1cInJvdW5kXCI+XG4gICAgICA8cmVjdCB4PVwiM1wiIHk9XCIzXCIgd2lkdGg9XCI3XCIgaGVpZ2h0PVwiN1wiIHJ4PVwiMS41XCIgLz5cbiAgICAgIDxyZWN0IHg9XCIxNFwiIHk9XCIzXCIgd2lkdGg9XCI3XCIgaGVpZ2h0PVwiN1wiIHJ4PVwiMS41XCIgLz5cbiAgICAgIDxyZWN0IHg9XCIzXCIgeT1cIjE0XCIgd2lkdGg9XCI3XCIgaGVpZ2h0PVwiN1wiIHJ4PVwiMS41XCIgLz5cbiAgICAgIDxyZWN0IHg9XCIxNFwiIHk9XCIxNFwiIHdpZHRoPVwiN1wiIGhlaWdodD1cIjdcIiByeD1cIjEuNVwiIC8+XG4gICAgPC9zdmc+XG4gICk7XG59XG5cbmZ1bmN0aW9uIFRhcmdldEljb24oKSB7XG4gIHJldHVybiAoXG4gICAgPHN2ZyB3aWR0aD1cIjE4XCIgaGVpZ2h0PVwiMThcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2VXaWR0aD1cIjEuOFwiIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZUxpbmVqb2luPVwicm91bmRcIj5cbiAgICAgIDxjaXJjbGUgY3g9XCIxMlwiIGN5PVwiMTJcIiByPVwiMTBcIiAvPlxuICAgICAgPGNpcmNsZSBjeD1cIjEyXCIgY3k9XCIxMlwiIHI9XCI2XCIgLz5cbiAgICAgIDxjaXJjbGUgY3g9XCIxMlwiIGN5PVwiMTJcIiByPVwiMlwiIC8+XG4gICAgPC9zdmc+XG4gICk7XG59XG5cbmZ1bmN0aW9uIEZpcmVJY29uKCkge1xuICByZXR1cm4gKFxuICAgIDxzdmcgd2lkdGg9XCIxOFwiIGhlaWdodD1cIjE4XCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlV2lkdGg9XCIxLjhcIiBzdHJva2VMaW5lY2FwPVwicm91bmRcIiBzdHJva2VMaW5lam9pbj1cInJvdW5kXCI+XG4gICAgICA8cGF0aCBkPVwiTTEyIDJjLjUgMi41LS41IDUtMiA3IDEgMCAyLjUuNSAzIDIuNS41LTIgMi0zIDMtNC0xIDMtMSA2LTQgOC41LTEuNSAxLTMuNSAxLjUtNSAxLTEuNS0uNS0yLjUtMi0yLjUtMy41IDAtMyAzLTUgNS03LjVDMTAgNSAxMSAzLjUgMTIgMnpcIiAvPlxuICAgIDwvc3ZnPlxuICApO1xufVxuXG5mdW5jdGlvbiBDaGF0SWNvbigpIHtcbiAgcmV0dXJuIChcbiAgICA8c3ZnIHdpZHRoPVwiMThcIiBoZWlnaHQ9XCIxOFwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZVdpZHRoPVwiMS44XCIgc3Ryb2tlTGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlTGluZWpvaW49XCJyb3VuZFwiPlxuICAgICAgPHBhdGggZD1cIk0yMSAxNWEyIDIgMCAwIDEtMiAySDdsLTQgNFY1YTIgMiAwIDAgMSAyLTJoMTRhMiAyIDAgMCAxIDIgMnpcIiAvPlxuICAgIDwvc3ZnPlxuICApO1xufVxuIl0sIm5hbWVzIjpbIm1ldGFkYXRhIiwidGl0bGUiLCJkZXNjcmlwdGlvbiIsInZpZXdwb3J0Iiwid2lkdGgiLCJpbml0aWFsU2NhbGUiLCJtYXhpbXVtU2NhbGUiLCJ1c2VyU2NhbGFibGUiLCJSb290TGF5b3V0IiwiY2hpbGRyZW4iLCJodG1sIiwibGFuZyIsImJvZHkiLCJjbGFzc05hbWUiLCJkaXYiLCJhc2lkZSIsImgxIiwicCIsIm5hdiIsIlNpZGVOYXZJdGVtIiwiaHJlZiIsImljb24iLCJEYXNoYm9hcmRJY29uIiwibGFiZWwiLCJUYXJnZXRJY29uIiwiRmlyZUljb24iLCJDaGF0SWNvbiIsInNwYW4iLCJtYWluIiwiTW9iaWxlTmF2IiwiTW9iaWxlTmF2SXRlbSIsImEiLCJzdmciLCJoZWlnaHQiLCJ2aWV3Qm94IiwiZmlsbCIsInN0cm9rZSIsInN0cm9rZVdpZHRoIiwic3Ryb2tlTGluZWNhcCIsInN0cm9rZUxpbmVqb2luIiwicmVjdCIsIngiLCJ5IiwicngiLCJjaXJjbGUiLCJjeCIsImN5IiwiciIsInBhdGgiLCJkIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(rsc)/./src/app/layout.tsx\n"); - -/***/ }), - -/***/ "(rsc)/./src/app/recommendations/page.tsx": -/*!******************************************!*\ - !*** ./src/app/recommendations/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 next_dist_build_webpack_loaders_next_flight_loader_module_proxy__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! next/dist/build/webpack/loaders/next-flight-loader/module-proxy */ "(rsc)/./node_modules/next/dist/build/webpack/loaders/next-flight-loader/module-proxy.js"); - -/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ((0,next_dist_build_webpack_loaders_next_flight_loader_module_proxy__WEBPACK_IMPORTED_MODULE_0__.createProxy)(String.raw`/Users/aaron/source_code/astock-agent/frontend/src/app/recommendations/page.tsx#default`)); - - -/***/ }) - -}; -; - -// 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/@swc"], () => (__webpack_exec__("(rsc)/./node_modules/next/dist/build/webpack/loaders/next-app-loader.js?name=app%2Frecommendations%2Fpage&page=%2Frecommendations%2Fpage&appPaths=%2Frecommendations%2Fpage&pagePath=private-next-app-dir%2Frecommendations%2Fpage.tsx&appDir=%2FUsers%2Faaron%2Fsource_code%2Fastock-agent%2Ffrontend%2Fsrc%2Fapp&pageExtensions=tsx&pageExtensions=ts&pageExtensions=jsx&pageExtensions=js&rootDir=%2FUsers%2Faaron%2Fsource_code%2Fastock-agent%2Ffrontend&isDev=true&tsconfigPath=tsconfig.json&basePath=&assetPrefix=&nextConfigOutput=&preferredRegion=&middlewareConfig=e30%3D!"))); -module.exports = __webpack_exports__; - -})(); \ No newline at end of file +(()=>{var e={};e.id=70,e.ids=[70],e.modules={2934:e=>{"use strict";e.exports=require("next/dist/client/components/action-async-storage.external.js")},4580:e=>{"use strict";e.exports=require("next/dist/client/components/request-async-storage.external.js")},5869:e=>{"use strict";e.exports=require("next/dist/client/components/static-generation-async-storage.external.js")},399:e=>{"use strict";e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},2992:(e,t,s)=>{"use strict";s.r(t),s.d(t,{GlobalError:()=>l.a,__next_app__:()=>m,originalPathname:()=>x,pages:()=>c,routeModule:()=>u,tree:()=>d}),s(3343),s(5166),s(5866);var a=s(3191),r=s(8716),n=s(7922),l=s.n(n),i=s(5231),o={};for(let e in i)0>["default","tree","pages","GlobalError","originalPathname","__next_app__","routeModule"].indexOf(e)&&(o[e]=()=>i[e]);s.d(t,o);let d=["",{children:["recommendations",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(s.bind(s,3343)),"/Users/aaron/source_code/astock-agent/frontend/src/app/recommendations/page.tsx"]}]},{}]},{layout:[()=>Promise.resolve().then(s.bind(s,5166)),"/Users/aaron/source_code/astock-agent/frontend/src/app/layout.tsx"],"not-found":[()=>Promise.resolve().then(s.t.bind(s,5866,23)),"next/dist/client/components/not-found-error"]}],c=["/Users/aaron/source_code/astock-agent/frontend/src/app/recommendations/page.tsx"],x="/recommendations/page",m={require:s,loadChunk:()=>Promise.resolve()},u=new a.AppPageRouteModule({definition:{kind:r.x.APP_PAGE,page:"/recommendations/page",pathname:"/recommendations",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:d}})},2915:(e,t,s)=>{Promise.resolve().then(s.bind(s,2631))},2631:(e,t,s)=>{"use strict";s.r(t),s.d(t,{default:()=>o});var a=s(326),r=s(7577),n=s(8069),l=s(9677),i=s(7892);function o(){let[e,t]=(0,r.useState)(null),[s,o]=(0,r.useState)("all"),[d,c]=(0,r.useState)(!1),x=(0,r.useCallback)(async()=>{try{let[e,s]=await Promise.all([(0,n.Io)("/api/recommendations/latest"),(0,n.Io)("/api/health")]);t(e),c(s.llm_enabled)}catch(e){console.error("加载推荐失败:",e)}},[]);(0,i.s)((0,r.useCallback)(()=>{x()},[x]));let m=e?.recommendations??[],u="all"===s?m:"buy"===s?m.filter(e=>"BUY"===e.signal):m.filter(e=>e.level===s);return(0,a.jsxs)("div",{className:"max-w-7xl mx-auto px-4 md:px-8 pt-6 pb-20 md:pb-10",children:[a.jsx("div",{className:"flex items-center justify-between mb-5 animate-fade-in-up",children:(0,a.jsxs)("div",{children:[a.jsx("h1",{className:"text-lg font-bold tracking-tight",children:"推荐列表"}),(0,a.jsxs)("p",{className:"text-xs text-text-muted mt-0.5",children:["共 ",a.jsx("span",{className:"font-mono tabular-nums",children:u.length})," 只"]})]})}),a.jsx("div",{className:"flex gap-2 mb-5 overflow-x-auto pb-1 animate-fade-in-up delay-75",children:[{key:"all",label:"全部"},{key:"buy",label:"买入信号"},{key:"强烈推荐",label:"强烈推荐"},{key:"推荐",label:"推荐"},{key:"观望",label:"观望"}].map(({key:e,label:t})=>a.jsx("button",{onClick:()=>o(e),className:`text-xs px-4 py-1.5 rounded-xl whitespace-nowrap transition-all duration-200 font-medium ${s===e?"bg-gradient-to-r from-amber-500/25 to-amber-600/20 text-amber-400 border border-amber-500/15":"bg-white/[0.03] text-text-muted hover:text-text-secondary hover:bg-white/[0.06] border border-transparent"}`,children:t},e))}),0===u.length?(0,a.jsxs)("div",{className:"glass-card-static p-12 text-center animate-fade-in-up",children:[(0,a.jsxs)("div",{className:"text-text-muted text-sm mb-1",children:["暂无","all"===s?"":"符合条件的","推荐"]}),a.jsx("div",{className:"text-text-muted/50 text-xs",children:"尝试切换筛选条件或触发新的扫描"})]}):a.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4",children:u.map((e,t)=>a.jsx("div",{className:"animate-fade-in-up",style:{animationDelay:`${60*t}ms`},children:a.jsx(l.Z,{rec:e,showLLMLoading:d})},e.ts_code))})]})}},9677:(e,t,s)=>{"use strict";s.d(t,{Z:()=>n});var a=s(326),r=s(1223);function n({rec:e,showLLMLoading:t=!1}){let s=(0,r.ny)(e.level);return(0,a.jsxs)("a",{href:`/stock/${e.ts_code}`,className:"block glass-card p-5 group",children:[(0,a.jsxs)("div",{className:"flex items-start justify-between mb-3",children:[(0,a.jsxs)("div",{children:[(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[a.jsx("span",{className:"font-semibold text-sm tracking-tight",children:e.name}),a.jsx("span",{className:`text-xs px-2 py-0.5 rounded-full font-medium ${s.bg} ${s.text}`,children:e.level})]}),(0,a.jsxs)("div",{className:"text-xs text-text-muted mt-1 font-mono tabular-nums",children:[e.ts_code," ",a.jsx("span",{className:"text-text-muted/40 mx-1",children:"\xb7"})," ",e.sector]})]}),(0,a.jsxs)("div",{className:"text-right",children:[a.jsx("div",{className:`text-xl font-bold font-mono tabular-nums tracking-tight ${(0,r.Uz)(e.score)}`,children:e.score}),a.jsx("div",{className:`text-xs font-semibold tracking-wider ${(0,r.R8)(e.signal)}`,children:"BUY"===e.signal?"买入":"SELL"===e.signal?"卖出":"持有"})]})]}),(0,a.jsxs)("div",{className:"grid grid-cols-4 gap-2 mb-4",children:[a.jsx(l,{label:"市场",value:e.market_temp_score}),a.jsx(l,{label:"板块",value:e.sector_score}),a.jsx(l,{label:"资金",value:e.capital_score}),a.jsx(l,{label:"技术",value:e.technical_score})]}),e.entry_price&&(0,a.jsxs)("div",{className:"flex justify-between text-xs mb-3 bg-white/[0.03] rounded-xl px-4 py-2.5 border border-white/[0.04]",children:[(0,a.jsxs)("div",{children:[a.jsx("span",{className:"text-text-muted",children:"买入 "}),a.jsx("span",{className:"text-red-400 font-mono tabular-nums",children:e.entry_price})]}),(0,a.jsxs)("div",{children:[a.jsx("span",{className:"text-text-muted",children:"目标 "}),a.jsx("span",{className:"text-amber-400 font-mono tabular-nums",children:e.target_price})]}),(0,a.jsxs)("div",{children:[a.jsx("span",{className:"text-text-muted",children:"止损 "}),a.jsx("span",{className:"text-emerald-400 font-mono tabular-nums",children:e.stop_loss})]})]}),a.jsx("div",{className:"space-y-1.5",children:e.reasons.map((e,t)=>(0,a.jsxs)("div",{className:"text-xs text-text-secondary flex items-start gap-2",children:[a.jsx("span",{className:"w-1 h-1 rounded-full bg-amber-500/60 mt-[7px] shrink-0"}),a.jsx("span",{className:"leading-relaxed",children:e})]},t))}),e.llm_analysis?(0,a.jsxs)("div",{className:"mt-3 bg-accent-cyan/[0.06] border border-accent-cyan/[0.12] rounded-xl px-4 py-3",children:[a.jsx("div",{className:"text-xs text-accent-cyan/80 font-semibold tracking-wider mb-1.5",children:"AI 分析"}),a.jsx("div",{className:"text-xs text-text-secondary leading-relaxed",children:e.llm_analysis})]}):t?(0,a.jsxs)("div",{className:"mt-3 text-xs text-text-muted flex items-center gap-2",children:[a.jsx("span",{className:"inline-block w-3 h-3 border border-accent-cyan/30 border-t-accent-cyan/80 rounded-full animate-spin"}),"AI 分析中..."]}):null,e.risk_note&&a.jsx("div",{className:"mt-3 text-xs text-amber-500/60 bg-amber-500/[0.04] border border-amber-500/[0.08] rounded-lg px-3 py-1.5",children:e.risk_note}),(0,a.jsxs)("div",{className:"mt-3 flex items-center gap-1 text-xs text-text-muted opacity-0 group-hover:opacity-100 transition-opacity duration-300",children:[a.jsx("span",{children:"查看详情"}),a.jsx("svg",{width:"10",height:"10",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:a.jsx("path",{d:"M5 12h14M12 5l7 7-7 7"})})]})]})}function l({label:e,value:t}){return(0,a.jsxs)("div",{children:[(0,a.jsxs)("div",{className:"flex justify-between text-xs text-text-muted mb-1",children:[a.jsx("span",{className:"font-medium",children:e}),a.jsx("span",{className:"font-mono tabular-nums",children:t.toFixed(0)})]}),a.jsx("div",{className:"h-1.5 bg-white/[0.04] rounded-full overflow-hidden",children:a.jsx("div",{className:`h-full rounded-full transition-all duration-700 ease-out ${t>=70?"score-bar-gradient-high":t>=50?"score-bar-gradient-mid":"score-bar-gradient-low"}`,style:{width:`${Math.min(t,100)}%`}})})]})}},7892:(e,t,s)=>{"use strict";s.d(t,{s:()=>r});var a=s(7577);function r(e){let[t,s]=(0,a.useState)(!1),r=(0,a.useRef)(null),n=(0,a.useRef)(),l=(0,a.useCallback)(()=>{let t="https:"===window.location.protocol?"wss:":"ws:",a=new WebSocket(`${t}//${window.location.host}/ws`);a.onopen=()=>{s(!0);let e=setInterval(()=>{a.readyState===WebSocket.OPEN&&a.send("ping")},3e4);a.addEventListener("close",()=>clearInterval(e))},a.onmessage=t=>{if("pong"!==t.data)try{let s=JSON.parse(t.data);e?.(s)}catch{}},a.onclose=()=>{s(!1),n.current=setTimeout(l,5e3)},a.onerror=()=>a.close(),r.current=a},[e]);return{connected:t}}},1223:(e,t,s)=>{"use strict";function a(e){return Math.abs(e)>=1e4?(e/1e4).toFixed(2)+"亿":Math.abs(e)>=1?e.toFixed(2)+"万":e.toFixed(2)}function r(e){return e>=80?"text-red-400":e>=60?"text-orange-400":e>=40?"text-yellow-400":"text-gray-400"}function n(e){switch(e){case"强烈推荐":return{bg:"bg-red-500/20",text:"text-red-400"};case"推荐":return{bg:"bg-orange-500/20",text:"text-orange-400"};case"观望":return{bg:"bg-yellow-500/20",text:"text-yellow-400"};default:return{bg:"bg-gray-500/20",text:"text-gray-400"}}}function l(e){return"BUY"===e?"text-red-400":"SELL"===e?"text-green-400":"text-gray-400"}function i(e){return e>=70?"#ff6b6b":e>=50?"#f59e0b":e>=30?"#fbbf24":"#34d399"}function o(e){return e>=70?"火热":e>=50?"温和":e>=30?"偏冷":"冰点"}s.d(t,{R8:()=>l,Uz:()=>r,Zd:()=>o,jD:()=>i,ny:()=>n,uf:()=>a})},3343:(e,t,s)=>{"use strict";s.r(t),s.d(t,{default:()=>a});let a=(0,s(8570).createProxy)(String.raw`/Users/aaron/source_code/astock-agent/frontend/src/app/recommendations/page.tsx#default`)}};var t=require("../../webpack-runtime.js");t.C(e);var s=e=>t(t.s=e),a=t.X(0,[948,982,171],()=>s(2992));module.exports=a})(); \ No newline at end of file diff --git a/frontend/.next/server/app/recommendations/page_client-reference-manifest.js b/frontend/.next/server/app/recommendations/page_client-reference-manifest.js index 7056091f..0910c21e 100644 --- a/frontend/.next/server/app/recommendations/page_client-reference-manifest.js +++ b/frontend/.next/server/app/recommendations/page_client-reference-manifest.js @@ -1 +1 @@ -globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/recommendations/page"]={"moduleLoading":{"prefix":"/_next/","crossOrigin":null},"ssrModuleMapping":{"(app-pages-browser)/./node_modules/next/dist/client/components/app-router.js":{"*":{"id":"(ssr)/./node_modules/next/dist/client/components/app-router.js","name":"*","chunks":[],"async":false}},"(app-pages-browser)/./node_modules/next/dist/client/components/client-page.js":{"*":{"id":"(ssr)/./node_modules/next/dist/client/components/client-page.js","name":"*","chunks":[],"async":false}},"(app-pages-browser)/./node_modules/next/dist/client/components/error-boundary.js":{"*":{"id":"(ssr)/./node_modules/next/dist/client/components/error-boundary.js","name":"*","chunks":[],"async":false}},"(app-pages-browser)/./node_modules/next/dist/client/components/layout-router.js":{"*":{"id":"(ssr)/./node_modules/next/dist/client/components/layout-router.js","name":"*","chunks":[],"async":false}},"(app-pages-browser)/./node_modules/next/dist/client/components/not-found-boundary.js":{"*":{"id":"(ssr)/./node_modules/next/dist/client/components/not-found-boundary.js","name":"*","chunks":[],"async":false}},"(app-pages-browser)/./node_modules/next/dist/client/components/render-from-template-context.js":{"*":{"id":"(ssr)/./node_modules/next/dist/client/components/render-from-template-context.js","name":"*","chunks":[],"async":false}},"(app-pages-browser)/./src/app/recommendations/page.tsx":{"*":{"id":"(ssr)/./src/app/recommendations/page.tsx","name":"*","chunks":[],"async":false}},"(app-pages-browser)/./src/app/page.tsx":{"*":{"id":"(ssr)/./src/app/page.tsx","name":"*","chunks":[],"async":false}},"(app-pages-browser)/./src/app/sectors/page.tsx":{"*":{"id":"(ssr)/./src/app/sectors/page.tsx","name":"*","chunks":[],"async":false}},"(app-pages-browser)/./src/app/chat/page.tsx":{"*":{"id":"(ssr)/./src/app/chat/page.tsx","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/Users/aaron/source_code/astock-agent/frontend/src/app/globals.css":{"id":"(app-pages-browser)/./src/app/globals.css","name":"*","chunks":["app/layout","static/chunks/app/layout.js"],"async":false},"/Users/aaron/source_code/astock-agent/frontend/node_modules/next/dist/client/components/app-router.js":{"id":"(app-pages-browser)/./node_modules/next/dist/client/components/app-router.js","name":"*","chunks":["app-pages-internals","static/chunks/app-pages-internals.js"],"async":false},"/Users/aaron/source_code/astock-agent/frontend/node_modules/next/dist/esm/client/components/app-router.js":{"id":"(app-pages-browser)/./node_modules/next/dist/client/components/app-router.js","name":"*","chunks":["app-pages-internals","static/chunks/app-pages-internals.js"],"async":false},"/Users/aaron/source_code/astock-agent/frontend/node_modules/next/dist/client/components/client-page.js":{"id":"(app-pages-browser)/./node_modules/next/dist/client/components/client-page.js","name":"*","chunks":["app-pages-internals","static/chunks/app-pages-internals.js"],"async":false},"/Users/aaron/source_code/astock-agent/frontend/node_modules/next/dist/esm/client/components/client-page.js":{"id":"(app-pages-browser)/./node_modules/next/dist/client/components/client-page.js","name":"*","chunks":["app-pages-internals","static/chunks/app-pages-internals.js"],"async":false},"/Users/aaron/source_code/astock-agent/frontend/node_modules/next/dist/client/components/error-boundary.js":{"id":"(app-pages-browser)/./node_modules/next/dist/client/components/error-boundary.js","name":"*","chunks":["app-pages-internals","static/chunks/app-pages-internals.js"],"async":false},"/Users/aaron/source_code/astock-agent/frontend/node_modules/next/dist/esm/client/components/error-boundary.js":{"id":"(app-pages-browser)/./node_modules/next/dist/client/components/error-boundary.js","name":"*","chunks":["app-pages-internals","static/chunks/app-pages-internals.js"],"async":false},"/Users/aaron/source_code/astock-agent/frontend/node_modules/next/dist/client/components/layout-router.js":{"id":"(app-pages-browser)/./node_modules/next/dist/client/components/layout-router.js","name":"*","chunks":["app-pages-internals","static/chunks/app-pages-internals.js"],"async":false},"/Users/aaron/source_code/astock-agent/frontend/node_modules/next/dist/esm/client/components/layout-router.js":{"id":"(app-pages-browser)/./node_modules/next/dist/client/components/layout-router.js","name":"*","chunks":["app-pages-internals","static/chunks/app-pages-internals.js"],"async":false},"/Users/aaron/source_code/astock-agent/frontend/node_modules/next/dist/client/components/not-found-boundary.js":{"id":"(app-pages-browser)/./node_modules/next/dist/client/components/not-found-boundary.js","name":"*","chunks":["app-pages-internals","static/chunks/app-pages-internals.js"],"async":false},"/Users/aaron/source_code/astock-agent/frontend/node_modules/next/dist/esm/client/components/not-found-boundary.js":{"id":"(app-pages-browser)/./node_modules/next/dist/client/components/not-found-boundary.js","name":"*","chunks":["app-pages-internals","static/chunks/app-pages-internals.js"],"async":false},"/Users/aaron/source_code/astock-agent/frontend/node_modules/next/dist/client/components/render-from-template-context.js":{"id":"(app-pages-browser)/./node_modules/next/dist/client/components/render-from-template-context.js","name":"*","chunks":["app-pages-internals","static/chunks/app-pages-internals.js"],"async":false},"/Users/aaron/source_code/astock-agent/frontend/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":"(app-pages-browser)/./node_modules/next/dist/client/components/render-from-template-context.js","name":"*","chunks":["app-pages-internals","static/chunks/app-pages-internals.js"],"async":false},"/Users/aaron/source_code/astock-agent/frontend/src/app/recommendations/page.tsx":{"id":"(app-pages-browser)/./src/app/recommendations/page.tsx","name":"*","chunks":["app/recommendations/page","static/chunks/app/recommendations/page.js"],"async":false},"/Users/aaron/source_code/astock-agent/frontend/src/app/page.tsx":{"id":"(app-pages-browser)/./src/app/page.tsx","name":"*","chunks":["app/page","static/chunks/app/page.js"],"async":false},"/Users/aaron/source_code/astock-agent/frontend/src/app/sectors/page.tsx":{"id":"(app-pages-browser)/./src/app/sectors/page.tsx","name":"*","chunks":[],"async":false},"/Users/aaron/source_code/astock-agent/frontend/src/app/chat/page.tsx":{"id":"(app-pages-browser)/./src/app/chat/page.tsx","name":"*","chunks":[],"async":false}},"entryCSSFiles":{"/Users/aaron/source_code/astock-agent/frontend/src/":[],"/Users/aaron/source_code/astock-agent/frontend/src/app/layout":["static/css/app/layout.css"],"/Users/aaron/source_code/astock-agent/frontend/src/app/page":[],"/Users/aaron/source_code/astock-agent/frontend/src/app/recommendations/page":[]}} \ No newline at end of file +globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/recommendations/page"]={"moduleLoading":{"prefix":"/_next/","crossOrigin":null},"ssrModuleMapping":{"80":{"*":{"id":"1868","name":"*","chunks":[],"async":false}},"628":{"*":{"id":"5452","name":"*","chunks":[],"async":false}},"1060":{"*":{"id":"9727","name":"*","chunks":[],"async":false}},"2688":{"*":{"id":"7973","name":"*","chunks":[],"async":false}},"2846":{"*":{"id":"2994","name":"*","chunks":[],"async":false}},"3331":{"*":{"id":"8058","name":"*","chunks":[],"async":false}},"4707":{"*":{"id":"9671","name":"*","chunks":[],"async":false}},"5315":{"*":{"id":"6826","name":"*","chunks":[],"async":false}},"6423":{"*":{"id":"4759","name":"*","chunks":[],"async":false}},"7182":{"*":{"id":"8597","name":"*","chunks":[],"async":false}},"7449":{"*":{"id":"2836","name":"*","chunks":[],"async":false}},"7698":{"*":{"id":"8601","name":"*","chunks":[],"async":false}},"7773":{"*":{"id":"2631","name":"*","chunks":[],"async":false}},"8145":{"*":{"id":"9260","name":"*","chunks":[],"async":false}},"8991":{"*":{"id":"4146","name":"*","chunks":[],"async":false}},"9107":{"*":{"id":"6114","name":"*","chunks":[],"async":false}},"9314":{"*":{"id":"945","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/Users/aaron/source_code/astock-agent/frontend/node_modules/next/dist/client/components/app-router.js":{"id":2846,"name":"*","chunks":[],"async":false},"/Users/aaron/source_code/astock-agent/frontend/node_modules/next/dist/esm/client/components/app-router.js":{"id":2846,"name":"*","chunks":[],"async":false},"/Users/aaron/source_code/astock-agent/frontend/node_modules/next/dist/client/components/client-page.js":{"id":9107,"name":"*","chunks":[],"async":false},"/Users/aaron/source_code/astock-agent/frontend/node_modules/next/dist/esm/client/components/client-page.js":{"id":9107,"name":"*","chunks":[],"async":false},"/Users/aaron/source_code/astock-agent/frontend/node_modules/next/dist/client/components/error-boundary.js":{"id":1060,"name":"*","chunks":[],"async":false},"/Users/aaron/source_code/astock-agent/frontend/node_modules/next/dist/esm/client/components/error-boundary.js":{"id":1060,"name":"*","chunks":[],"async":false},"/Users/aaron/source_code/astock-agent/frontend/node_modules/next/dist/client/components/layout-router.js":{"id":4707,"name":"*","chunks":[],"async":false},"/Users/aaron/source_code/astock-agent/frontend/node_modules/next/dist/esm/client/components/layout-router.js":{"id":4707,"name":"*","chunks":[],"async":false},"/Users/aaron/source_code/astock-agent/frontend/node_modules/next/dist/client/components/not-found-boundary.js":{"id":80,"name":"*","chunks":[],"async":false},"/Users/aaron/source_code/astock-agent/frontend/node_modules/next/dist/esm/client/components/not-found-boundary.js":{"id":80,"name":"*","chunks":[],"async":false},"/Users/aaron/source_code/astock-agent/frontend/node_modules/next/dist/client/components/render-from-template-context.js":{"id":6423,"name":"*","chunks":[],"async":false},"/Users/aaron/source_code/astock-agent/frontend/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":6423,"name":"*","chunks":[],"async":false},"/Users/aaron/source_code/astock-agent/frontend/src/app/globals.css":{"id":2778,"name":"*","chunks":["448","static/chunks/448-92a7b932cf4502ac.js","185","static/chunks/app/layout-97bdd231e78ddf3f.js"],"async":false},"/Users/aaron/source_code/astock-agent/frontend/src/components/auth-guard.tsx":{"id":7182,"name":"*","chunks":["448","static/chunks/448-92a7b932cf4502ac.js","185","static/chunks/app/layout-97bdd231e78ddf3f.js"],"async":false},"/Users/aaron/source_code/astock-agent/frontend/src/components/nav.tsx":{"id":3331,"name":"*","chunks":["448","static/chunks/448-92a7b932cf4502ac.js","185","static/chunks/app/layout-97bdd231e78ddf3f.js"],"async":false},"/Users/aaron/source_code/astock-agent/frontend/src/components/user-menu.tsx":{"id":5315,"name":"*","chunks":["448","static/chunks/448-92a7b932cf4502ac.js","185","static/chunks/app/layout-97bdd231e78ddf3f.js"],"async":false},"/Users/aaron/source_code/astock-agent/frontend/src/hooks/use-auth.tsx":{"id":8145,"name":"*","chunks":["448","static/chunks/448-92a7b932cf4502ac.js","185","static/chunks/app/layout-97bdd231e78ddf3f.js"],"async":false},"/Users/aaron/source_code/astock-agent/frontend/src/app/login/page.tsx":{"id":8991,"name":"*","chunks":[],"async":false},"/Users/aaron/source_code/astock-agent/frontend/src/app/page.tsx":{"id":7449,"name":"*","chunks":["931","static/chunks/app/page-5a303311159f23ad.js"],"async":false},"/Users/aaron/source_code/astock-agent/frontend/src/app/recommendations/page.tsx":{"id":7773,"name":"*","chunks":["70","static/chunks/app/recommendations/page-ef6715bbb27168f0.js"],"async":false},"/Users/aaron/source_code/astock-agent/frontend/src/app/sectors/page.tsx":{"id":9314,"name":"*","chunks":[],"async":false},"/Users/aaron/source_code/astock-agent/frontend/src/app/chat/page.tsx":{"id":628,"name":"*","chunks":[],"async":false},"/Users/aaron/source_code/astock-agent/frontend/src/app/stock/[code]/page.tsx":{"id":7698,"name":"*","chunks":[],"async":false},"/Users/aaron/source_code/astock-agent/frontend/src/app/users/page.tsx":{"id":2688,"name":"*","chunks":[],"async":false}},"entryCSSFiles":{"/Users/aaron/source_code/astock-agent/frontend/src/":[],"/Users/aaron/source_code/astock-agent/frontend/src/app/layout":["static/css/fa5094a6607a8c23.css"],"/Users/aaron/source_code/astock-agent/frontend/src/app/page":[],"/Users/aaron/source_code/astock-agent/frontend/src/app/recommendations/page":[]}} \ No newline at end of file diff --git a/frontend/.next/server/interception-route-rewrite-manifest.js b/frontend/.next/server/interception-route-rewrite-manifest.js index 82d3ab17..24f77ba7 100644 --- a/frontend/.next/server/interception-route-rewrite-manifest.js +++ b/frontend/.next/server/interception-route-rewrite-manifest.js @@ -1 +1 @@ -self.__INTERCEPTION_ROUTE_REWRITE_MANIFEST="[]" \ No newline at end of file +self.__INTERCEPTION_ROUTE_REWRITE_MANIFEST="[]"; \ No newline at end of file diff --git a/frontend/.next/server/middleware-build-manifest.js b/frontend/.next/server/middleware-build-manifest.js index 36489d8c..31745677 100644 --- a/frontend/.next/server/middleware-build-manifest.js +++ b/frontend/.next/server/middleware-build-manifest.js @@ -1,21 +1 @@ -self.__BUILD_MANIFEST = { - "polyfillFiles": [ - "static/chunks/polyfills.js" - ], - "devFiles": [], - "ampDevFiles": [], - "lowPriorityFiles": [], - "rootMainFiles": [ - "static/chunks/webpack.js", - "static/chunks/main-app.js" - ], - "pages": { - "/_app": [] - }, - "ampFirstPages": [] -}; -self.__BUILD_MANIFEST.lowPriorityFiles = [ -"/static/" + process.env.__NEXT_BUILD_ID + "/_buildManifest.js", -,"/static/" + process.env.__NEXT_BUILD_ID + "/_ssgManifest.js", - -]; \ No newline at end of file +self.__BUILD_MANIFEST={polyfillFiles:["static/chunks/polyfills-42372ed130431b0a.js"],devFiles:[],ampDevFiles:[],lowPriorityFiles:[],rootMainFiles:["static/chunks/webpack-76aa9cbbdedb6a49.js","static/chunks/fd9d1056-f8a2d551cbb94c85.js","static/chunks/117-d0aa9486d6cf1a7a.js","static/chunks/main-app-7d7e5d1021afd90c.js"],pages:{"/_app":["static/chunks/webpack-76aa9cbbdedb6a49.js","static/chunks/framework-f66176bb897dc684.js","static/chunks/main-9c5f6b283127d940.js","static/chunks/pages/_app-72b849fbd24ac258.js"],"/_error":["static/chunks/webpack-76aa9cbbdedb6a49.js","static/chunks/framework-f66176bb897dc684.js","static/chunks/main-9c5f6b283127d940.js","static/chunks/pages/_error-7ba65e1336b92748.js"]},ampFirstPages:[]},self.__BUILD_MANIFEST.lowPriorityFiles=["/static/"+process.env.__NEXT_BUILD_ID+"/_buildManifest.js",,"/static/"+process.env.__NEXT_BUILD_ID+"/_ssgManifest.js"]; \ No newline at end of file diff --git a/frontend/.next/server/middleware-react-loadable-manifest.js b/frontend/.next/server/middleware-react-loadable-manifest.js index ca34f09f..3807ebe7 100644 --- a/frontend/.next/server/middleware-react-loadable-manifest.js +++ b/frontend/.next/server/middleware-react-loadable-manifest.js @@ -1 +1 @@ -self.__REACT_LOADABLE_MANIFEST="{}" \ No newline at end of file +self.__REACT_LOADABLE_MANIFEST='{"components/capital-flow.tsx -> echarts":{"id":9614,"files":["static/chunks/614.2cf8795c6fba79f8.js"]},"components/kline-chart.tsx -> echarts":{"id":9614,"files":["static/chunks/614.2cf8795c6fba79f8.js"]},"components/score-radar.tsx -> echarts":{"id":9614,"files":["static/chunks/614.2cf8795c6fba79f8.js"]}}'; \ No newline at end of file diff --git a/frontend/.next/server/next-font-manifest.js b/frontend/.next/server/next-font-manifest.js index 5cc97ebd..8267a508 100644 --- a/frontend/.next/server/next-font-manifest.js +++ b/frontend/.next/server/next-font-manifest.js @@ -1 +1 @@ -self.__NEXT_FONT_MANIFEST="{\"pages\":{},\"app\":{},\"appUsingSizeAdjust\":false,\"pagesUsingSizeAdjust\":false}" \ No newline at end of file +self.__NEXT_FONT_MANIFEST='{"pages":{},"app":{},"appUsingSizeAdjust":false,"pagesUsingSizeAdjust":false}'; \ No newline at end of file diff --git a/frontend/.next/server/pages-manifest.json b/frontend/.next/server/pages-manifest.json index 9e26dfee..f7c2e894 100644 --- a/frontend/.next/server/pages-manifest.json +++ b/frontend/.next/server/pages-manifest.json @@ -1 +1 @@ -{} \ No newline at end of file +{"/_app":"pages/_app.js","/_error":"pages/_error.js","/_document":"pages/_document.js","/404":"pages/404.html"} \ No newline at end of file diff --git a/frontend/.next/server/server-reference-manifest.js b/frontend/.next/server/server-reference-manifest.js index cc0af96f..3ca5dc55 100644 --- a/frontend/.next/server/server-reference-manifest.js +++ b/frontend/.next/server/server-reference-manifest.js @@ -1 +1 @@ -self.__RSC_SERVER_MANIFEST="{\n \"node\": {},\n \"edge\": {},\n \"encryptionKey\": \"process.env.NEXT_SERVER_ACTIONS_ENCRYPTION_KEY\"\n}" \ No newline at end of file +self.__RSC_SERVER_MANIFEST="{\"node\":{},\"edge\":{},\"encryptionKey\":\"process.env.NEXT_SERVER_ACTIONS_ENCRYPTION_KEY\"}" \ No newline at end of file diff --git a/frontend/.next/server/server-reference-manifest.json b/frontend/.next/server/server-reference-manifest.json index 041dcf48..94b30ce3 100644 --- a/frontend/.next/server/server-reference-manifest.json +++ b/frontend/.next/server/server-reference-manifest.json @@ -1,5 +1 @@ -{ - "node": {}, - "edge": {}, - "encryptionKey": "2xwJVyON4j1nUVj9bt2cAd3iPAWZ77oTyEHOq3x+eQU=" -} \ No newline at end of file +{"node":{},"edge":{},"encryptionKey":"mEKzCdLXC9Tw5xpwGdIONxBrCnit3XJOsa5Cm7fALlw="} \ No newline at end of file diff --git a/frontend/.next/server/vendor-chunks/@swc.js b/frontend/.next/server/vendor-chunks/@swc.js deleted file mode 100644 index eab50a83..00000000 --- a/frontend/.next/server/vendor-chunks/@swc.js +++ /dev/null @@ -1,75 +0,0 @@ -"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/). - */ -exports.id = "vendor-chunks/@swc"; -exports.ids = ["vendor-chunks/@swc"]; -exports.modules = { - -/***/ "(ssr)/./node_modules/@swc/helpers/esm/_class_private_field_loose_base.js": -/*!**************************************************************************!*\ - !*** ./node_modules/@swc/helpers/esm/_class_private_field_loose_base.js ***! - \**************************************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { - -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ _: () => (/* binding */ _class_private_field_loose_base),\n/* harmony export */ _class_private_field_loose_base: () => (/* binding */ _class_private_field_loose_base)\n/* harmony export */ });\nfunction _class_private_field_loose_base(receiver, privateKey) {\n if (!Object.prototype.hasOwnProperty.call(receiver, privateKey)) {\n throw new TypeError(\"attempted to use private field on non-instance\");\n }\n\n return receiver;\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHN3Yy9oZWxwZXJzL2VzbS9fY2xhc3NfcHJpdmF0ZV9maWVsZF9sb29zZV9iYXNlLmpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQU87QUFDUDtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNnRCIsInNvdXJjZXMiOlsid2VicGFjazovL2FzdG9jay1hZ2VudC1mcm9udGVuZC8uL25vZGVfbW9kdWxlcy9Ac3djL2hlbHBlcnMvZXNtL19jbGFzc19wcml2YXRlX2ZpZWxkX2xvb3NlX2Jhc2UuanM/MmI3MSJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gX2NsYXNzX3ByaXZhdGVfZmllbGRfbG9vc2VfYmFzZShyZWNlaXZlciwgcHJpdmF0ZUtleSkge1xuICAgIGlmICghT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHJlY2VpdmVyLCBwcml2YXRlS2V5KSkge1xuICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFwiYXR0ZW1wdGVkIHRvIHVzZSBwcml2YXRlIGZpZWxkIG9uIG5vbi1pbnN0YW5jZVwiKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcmVjZWl2ZXI7XG59XG5leHBvcnQgeyBfY2xhc3NfcHJpdmF0ZV9maWVsZF9sb29zZV9iYXNlIGFzIF8gfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@swc/helpers/esm/_class_private_field_loose_base.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/@swc/helpers/esm/_class_private_field_loose_key.js": -/*!*************************************************************************!*\ - !*** ./node_modules/@swc/helpers/esm/_class_private_field_loose_key.js ***! - \*************************************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { - -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ _: () => (/* binding */ _class_private_field_loose_key),\n/* harmony export */ _class_private_field_loose_key: () => (/* binding */ _class_private_field_loose_key)\n/* harmony export */ });\nvar id = 0;\n\nfunction _class_private_field_loose_key(name) {\n return \"__private_\" + id++ + \"_\" + name;\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHN3Yy9oZWxwZXJzL2VzbS9fY2xhc3NfcHJpdmF0ZV9maWVsZF9sb29zZV9rZXkuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQTs7QUFFTztBQUNQO0FBQ0E7QUFDK0MiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9hc3RvY2stYWdlbnQtZnJvbnRlbmQvLi9ub2RlX21vZHVsZXMvQHN3Yy9oZWxwZXJzL2VzbS9fY2xhc3NfcHJpdmF0ZV9maWVsZF9sb29zZV9rZXkuanM/ODY1ZiJdLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgaWQgPSAwO1xuXG5leHBvcnQgZnVuY3Rpb24gX2NsYXNzX3ByaXZhdGVfZmllbGRfbG9vc2Vfa2V5KG5hbWUpIHtcbiAgICByZXR1cm4gXCJfX3ByaXZhdGVfXCIgKyBpZCsrICsgXCJfXCIgKyBuYW1lO1xufVxuZXhwb3J0IHsgX2NsYXNzX3ByaXZhdGVfZmllbGRfbG9vc2Vfa2V5IGFzIF8gfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@swc/helpers/esm/_class_private_field_loose_key.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/@swc/helpers/esm/_interop_require_default.js": -/*!*******************************************************************!*\ - !*** ./node_modules/@swc/helpers/esm/_interop_require_default.js ***! - \*******************************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { - -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ _: () => (/* binding */ _interop_require_default),\n/* harmony export */ _interop_require_default: () => (/* binding */ _interop_require_default)\n/* harmony export */ });\nfunction _interop_require_default(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHN3Yy9oZWxwZXJzL2VzbS9faW50ZXJvcF9yZXF1aXJlX2RlZmF1bHQuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBTztBQUNQLDJDQUEyQztBQUMzQztBQUN5QyIsInNvdXJjZXMiOlsid2VicGFjazovL2FzdG9jay1hZ2VudC1mcm9udGVuZC8uL25vZGVfbW9kdWxlcy9Ac3djL2hlbHBlcnMvZXNtL19pbnRlcm9wX3JlcXVpcmVfZGVmYXVsdC5qcz9hNjA2Il0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBmdW5jdGlvbiBfaW50ZXJvcF9yZXF1aXJlX2RlZmF1bHQob2JqKSB7XG4gICAgcmV0dXJuIG9iaiAmJiBvYmouX19lc01vZHVsZSA/IG9iaiA6IHsgZGVmYXVsdDogb2JqIH07XG59XG5leHBvcnQgeyBfaW50ZXJvcF9yZXF1aXJlX2RlZmF1bHQgYXMgXyB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@swc/helpers/esm/_interop_require_default.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/@swc/helpers/esm/_interop_require_wildcard.js": -/*!********************************************************************!*\ - !*** ./node_modules/@swc/helpers/esm/_interop_require_wildcard.js ***! - \********************************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { - -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ _: () => (/* binding */ _interop_require_wildcard),\n/* harmony export */ _interop_require_wildcard: () => (/* binding */ _interop_require_wildcard)\n/* harmony export */ });\nfunction _getRequireWildcardCache(nodeInterop) {\n if (typeof WeakMap !== \"function\") return null;\n\n var cacheBabelInterop = new WeakMap();\n var cacheNodeInterop = new WeakMap();\n\n return (_getRequireWildcardCache = function(nodeInterop) {\n return nodeInterop ? cacheNodeInterop : cacheBabelInterop;\n })(nodeInterop);\n}\nfunction _interop_require_wildcard(obj, nodeInterop) {\n if (!nodeInterop && obj && obj.__esModule) return obj;\n if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") return { default: obj };\n\n var cache = _getRequireWildcardCache(nodeInterop);\n\n if (cache && cache.has(obj)) return cache.get(obj);\n\n var newObj = { __proto__: null };\n var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;\n\n for (var key in obj) {\n if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) {\n var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;\n if (desc && (desc.get || desc.set)) Object.defineProperty(newObj, key, desc);\n else newObj[key] = obj[key];\n }\n }\n\n newObj.default = obj;\n\n if (cache) cache.set(obj, newObj);\n\n return newObj;\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHN3Yy9oZWxwZXJzL2VzbS9faW50ZXJvcF9yZXF1aXJlX3dpbGRjYXJkLmpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDTztBQUNQO0FBQ0EsdUZBQXVGOztBQUV2Rjs7QUFFQTs7QUFFQSxtQkFBbUI7QUFDbkI7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7O0FBRUE7QUFDQTtBQUMwQyIsInNvdXJjZXMiOlsid2VicGFjazovL2FzdG9jay1hZ2VudC1mcm9udGVuZC8uL25vZGVfbW9kdWxlcy9Ac3djL2hlbHBlcnMvZXNtL19pbnRlcm9wX3JlcXVpcmVfd2lsZGNhcmQuanM/ZTY3YyJdLCJzb3VyY2VzQ29udGVudCI6WyJmdW5jdGlvbiBfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUobm9kZUludGVyb3ApIHtcbiAgICBpZiAodHlwZW9mIFdlYWtNYXAgIT09IFwiZnVuY3Rpb25cIikgcmV0dXJuIG51bGw7XG5cbiAgICB2YXIgY2FjaGVCYWJlbEludGVyb3AgPSBuZXcgV2Vha01hcCgpO1xuICAgIHZhciBjYWNoZU5vZGVJbnRlcm9wID0gbmV3IFdlYWtNYXAoKTtcblxuICAgIHJldHVybiAoX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlID0gZnVuY3Rpb24obm9kZUludGVyb3ApIHtcbiAgICAgICAgcmV0dXJuIG5vZGVJbnRlcm9wID8gY2FjaGVOb2RlSW50ZXJvcCA6IGNhY2hlQmFiZWxJbnRlcm9wO1xuICAgIH0pKG5vZGVJbnRlcm9wKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBfaW50ZXJvcF9yZXF1aXJlX3dpbGRjYXJkKG9iaiwgbm9kZUludGVyb3ApIHtcbiAgICBpZiAoIW5vZGVJbnRlcm9wICYmIG9iaiAmJiBvYmouX19lc01vZHVsZSkgcmV0dXJuIG9iajtcbiAgICBpZiAob2JqID09PSBudWxsIHx8IHR5cGVvZiBvYmogIT09IFwib2JqZWN0XCIgJiYgdHlwZW9mIG9iaiAhPT0gXCJmdW5jdGlvblwiKSByZXR1cm4geyBkZWZhdWx0OiBvYmogfTtcblxuICAgIHZhciBjYWNoZSA9IF9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZShub2RlSW50ZXJvcCk7XG5cbiAgICBpZiAoY2FjaGUgJiYgY2FjaGUuaGFzKG9iaikpIHJldHVybiBjYWNoZS5nZXQob2JqKTtcblxuICAgIHZhciBuZXdPYmogPSB7IF9fcHJvdG9fXzogbnVsbCB9O1xuICAgIHZhciBoYXNQcm9wZXJ0eURlc2NyaXB0b3IgPSBPYmplY3QuZGVmaW5lUHJvcGVydHkgJiYgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcjtcblxuICAgIGZvciAodmFyIGtleSBpbiBvYmopIHtcbiAgICAgICAgaWYgKGtleSAhPT0gXCJkZWZhdWx0XCIgJiYgT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iaiwga2V5KSkge1xuICAgICAgICAgICAgdmFyIGRlc2MgPSBoYXNQcm9wZXJ0eURlc2NyaXB0b3IgPyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG9iaiwga2V5KSA6IG51bGw7XG4gICAgICAgICAgICBpZiAoZGVzYyAmJiAoZGVzYy5nZXQgfHwgZGVzYy5zZXQpKSBPYmplY3QuZGVmaW5lUHJvcGVydHkobmV3T2JqLCBrZXksIGRlc2MpO1xuICAgICAgICAgICAgZWxzZSBuZXdPYmpba2V5XSA9IG9ialtrZXldO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmV3T2JqLmRlZmF1bHQgPSBvYmo7XG5cbiAgICBpZiAoY2FjaGUpIGNhY2hlLnNldChvYmosIG5ld09iaik7XG5cbiAgICByZXR1cm4gbmV3T2JqO1xufVxuZXhwb3J0IHsgX2ludGVyb3BfcmVxdWlyZV93aWxkY2FyZCBhcyBfIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@swc/helpers/esm/_interop_require_wildcard.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/@swc/helpers/esm/_tagged_template_literal_loose.js": -/*!*************************************************************************!*\ - !*** ./node_modules/@swc/helpers/esm/_tagged_template_literal_loose.js ***! - \*************************************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { - -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ _: () => (/* binding */ _tagged_template_literal_loose),\n/* harmony export */ _tagged_template_literal_loose: () => (/* binding */ _tagged_template_literal_loose)\n/* harmony export */ });\nfunction _tagged_template_literal_loose(strings, raw) {\n if (!raw) raw = strings.slice(0);\n\n strings.raw = raw;\n\n return strings;\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvQHN3Yy9oZWxwZXJzL2VzbS9fdGFnZ2VkX3RlbXBsYXRlX2xpdGVyYWxfbG9vc2UuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBTztBQUNQOztBQUVBOztBQUVBO0FBQ0E7QUFDK0MiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9hc3RvY2stYWdlbnQtZnJvbnRlbmQvLi9ub2RlX21vZHVsZXMvQHN3Yy9oZWxwZXJzL2VzbS9fdGFnZ2VkX3RlbXBsYXRlX2xpdGVyYWxfbG9vc2UuanM/OGJiNyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gX3RhZ2dlZF90ZW1wbGF0ZV9saXRlcmFsX2xvb3NlKHN0cmluZ3MsIHJhdykge1xuICAgIGlmICghcmF3KSByYXcgPSBzdHJpbmdzLnNsaWNlKDApO1xuXG4gICAgc3RyaW5ncy5yYXcgPSByYXc7XG5cbiAgICByZXR1cm4gc3RyaW5ncztcbn1cbmV4cG9ydCB7IF90YWdnZWRfdGVtcGxhdGVfbGl0ZXJhbF9sb29zZSBhcyBfIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/@swc/helpers/esm/_tagged_template_literal_loose.js\n"); - -/***/ }), - -/***/ "(rsc)/./node_modules/@swc/helpers/esm/_interop_require_default.js": -/*!*******************************************************************!*\ - !*** ./node_modules/@swc/helpers/esm/_interop_require_default.js ***! - \*******************************************************************/ -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { - -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ _: () => (/* binding */ _interop_require_default),\n/* harmony export */ _interop_require_default: () => (/* binding */ _interop_require_default)\n/* harmony export */ });\nfunction _interop_require_default(obj) {\n return obj && obj.__esModule ? obj : { default: obj };\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHJzYykvLi9ub2RlX21vZHVsZXMvQHN3Yy9oZWxwZXJzL2VzbS9faW50ZXJvcF9yZXF1aXJlX2RlZmF1bHQuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBTztBQUNQLDJDQUEyQztBQUMzQztBQUN5QyIsInNvdXJjZXMiOlsid2VicGFjazovL2FzdG9jay1hZ2VudC1mcm9udGVuZC8uL25vZGVfbW9kdWxlcy9Ac3djL2hlbHBlcnMvZXNtL19pbnRlcm9wX3JlcXVpcmVfZGVmYXVsdC5qcz9kZjgyIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBmdW5jdGlvbiBfaW50ZXJvcF9yZXF1aXJlX2RlZmF1bHQob2JqKSB7XG4gICAgcmV0dXJuIG9iaiAmJiBvYmouX19lc01vZHVsZSA/IG9iaiA6IHsgZGVmYXVsdDogb2JqIH07XG59XG5leHBvcnQgeyBfaW50ZXJvcF9yZXF1aXJlX2RlZmF1bHQgYXMgXyB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(rsc)/./node_modules/@swc/helpers/esm/_interop_require_default.js\n"); - -/***/ }) - -}; -; \ No newline at end of file diff --git a/frontend/.next/server/vendor-chunks/next.js b/frontend/.next/server/vendor-chunks/next.js deleted file mode 100644 index fd1ac0c4..00000000 --- a/frontend/.next/server/vendor-chunks/next.js +++ /dev/null @@ -1,2167 +0,0 @@ -/* - * 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/). - */ -exports.id = "vendor-chunks/next"; -exports.ids = ["vendor-chunks/next"]; -exports.modules = { - -/***/ "(ssr)/./node_modules/next/dist/client/add-base-path.js": -/*!********************************************************!*\ - !*** ./node_modules/next/dist/client/add-base-path.js ***! - \********************************************************/ -/***/ ((module, exports, __webpack_require__) => { - -"use strict"; -eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"addBasePath\", ({\n enumerable: true,\n get: function() {\n return addBasePath;\n }\n}));\nconst _addpathprefix = __webpack_require__(/*! ../shared/lib/router/utils/add-path-prefix */ \"(ssr)/./node_modules/next/dist/shared/lib/router/utils/add-path-prefix.js\");\nconst _normalizetrailingslash = __webpack_require__(/*! ./normalize-trailing-slash */ \"(ssr)/./node_modules/next/dist/client/normalize-trailing-slash.js\");\nconst basePath = false || \"\";\nfunction addBasePath(path, required) {\n return (0, _normalizetrailingslash.normalizePathTrailingSlash)( false ? 0 : (0, _addpathprefix.addPathPrefix)(path, basePath));\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=add-base-path.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9hZGQtYmFzZS1wYXRoLmpzIiwibWFwcGluZ3MiOiI7Ozs7K0NBS2dCQTs7O2VBQUFBOzs7MkNBTGM7b0RBQ2E7QUFFM0MsTUFBTUMsV0FBV0MsTUFBbUMsSUFBZTtBQUU1RCxTQUFTRixZQUFZSyxJQUFZLEVBQUVDLFFBQWtCO0lBQzFELE9BQU9DLENBQUFBLEdBQUFBLHdCQUFBQSwwQkFBMEIsRUFDL0JMLE1BQStDSSxHQUMzQ0QsQ0FBQUEsR0FDQUksQ0FBQUEsR0FBQUEsZUFBQUEsYUFBYSxFQUFDSixNQUFNSjtBQUU1QiIsInNvdXJjZXMiOlsid2VicGFjazovL2FzdG9jay1hZ2VudC1mcm9udGVuZC8uLi8uLi9zcmMvY2xpZW50L2FkZC1iYXNlLXBhdGgudHM/NTE3MSJdLCJuYW1lcyI6WyJhZGRCYXNlUGF0aCIsImJhc2VQYXRoIiwicHJvY2VzcyIsImVudiIsIl9fTkVYVF9ST1VURVJfQkFTRVBBVEgiLCJwYXRoIiwicmVxdWlyZWQiLCJub3JtYWxpemVQYXRoVHJhaWxpbmdTbGFzaCIsIl9fTkVYVF9NQU5VQUxfQ0xJRU5UX0JBU0VfUEFUSCIsImFkZFBhdGhQcmVmaXgiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/add-base-path.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/next/dist/client/app-call-server.js": -/*!**********************************************************!*\ - !*** ./node_modules/next/dist/client/app-call-server.js ***! - \**********************************************************/ -/***/ ((module, exports, __webpack_require__) => { - -"use strict"; -eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"callServer\", ({\n enumerable: true,\n get: function() {\n return callServer;\n }\n}));\nconst _approuter = __webpack_require__(/*! ./components/app-router */ \"(ssr)/./node_modules/next/dist/client/components/app-router.js\");\nasync function callServer(actionId, actionArgs) {\n const actionDispatcher = (0, _approuter.getServerActionDispatcher)();\n if (!actionDispatcher) {\n throw new Error(\"Invariant: missing action dispatcher.\");\n }\n return new Promise((resolve, reject)=>{\n actionDispatcher({\n actionId,\n actionArgs,\n resolve,\n reject\n });\n });\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=app-call-server.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9hcHAtY2FsbC1zZXJ2ZXIuanMiLCJtYXBwaW5ncyI6Ijs7Ozs4Q0FFc0JBOzs7ZUFBQUE7Ozt1Q0FGb0I7QUFFbkMsZUFBZUEsV0FBV0MsUUFBZ0IsRUFBRUMsVUFBaUI7SUFDbEUsTUFBTUMsbUJBQW1CQyxDQUFBQSxHQUFBQSxXQUFBQSx5QkFBeUI7SUFFbEQsSUFBSSxDQUFDRCxrQkFBa0I7UUFDckIsTUFBTSxJQUFJRSxNQUFNO0lBQ2xCO0lBRUEsT0FBTyxJQUFJQyxRQUFRLENBQUNDLFNBQVNDO1FBQzNCTCxpQkFBaUI7WUFDZkY7WUFDQUM7WUFDQUs7WUFDQUM7UUFDRjtJQUNGO0FBQ0YiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9hc3RvY2stYWdlbnQtZnJvbnRlbmQvLi4vLi4vc3JjL2NsaWVudC9hcHAtY2FsbC1zZXJ2ZXIudHM/NDk0YSJdLCJuYW1lcyI6WyJjYWxsU2VydmVyIiwiYWN0aW9uSWQiLCJhY3Rpb25BcmdzIiwiYWN0aW9uRGlzcGF0Y2hlciIsImdldFNlcnZlckFjdGlvbkRpc3BhdGNoZXIiLCJFcnJvciIsIlByb21pc2UiLCJyZXNvbHZlIiwicmVqZWN0Il0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/app-call-server.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/next/dist/client/components/app-router-announcer.js": -/*!**************************************************************************!*\ - !*** ./node_modules/next/dist/client/components/app-router-announcer.js ***! - \**************************************************************************/ -/***/ ((module, exports, __webpack_require__) => { - -"use strict"; -eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"AppRouterAnnouncer\", ({\n enumerable: true,\n get: function() {\n return AppRouterAnnouncer;\n }\n}));\nconst _react = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\nconst _reactdom = __webpack_require__(/*! react-dom */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react-dom.js\");\nconst ANNOUNCER_TYPE = \"next-route-announcer\";\nconst ANNOUNCER_ID = \"__next-route-announcer__\";\nfunction getAnnouncerNode() {\n var _existingAnnouncer_shadowRoot;\n const existingAnnouncer = document.getElementsByName(ANNOUNCER_TYPE)[0];\n if (existingAnnouncer == null ? void 0 : (_existingAnnouncer_shadowRoot = existingAnnouncer.shadowRoot) == null ? void 0 : _existingAnnouncer_shadowRoot.childNodes[0]) {\n return existingAnnouncer.shadowRoot.childNodes[0];\n } else {\n const container = document.createElement(ANNOUNCER_TYPE);\n container.style.cssText = \"position:absolute\";\n const announcer = document.createElement(\"div\");\n announcer.ariaLive = \"assertive\";\n announcer.id = ANNOUNCER_ID;\n announcer.role = \"alert\";\n announcer.style.cssText = \"position:absolute;border:0;height:1px;margin:-1px;padding:0;width:1px;clip:rect(0 0 0 0);overflow:hidden;white-space:nowrap;word-wrap:normal\";\n // Use shadow DOM here to avoid any potential CSS bleed\n const shadow = container.attachShadow({\n mode: \"open\"\n });\n shadow.appendChild(announcer);\n document.body.appendChild(container);\n return announcer;\n }\n}\nfunction AppRouterAnnouncer(param) {\n let { tree } = param;\n const [portalNode, setPortalNode] = (0, _react.useState)(null);\n (0, _react.useEffect)(()=>{\n const announcer = getAnnouncerNode();\n setPortalNode(announcer);\n return ()=>{\n const container = document.getElementsByTagName(ANNOUNCER_TYPE)[0];\n if (container == null ? void 0 : container.isConnected) {\n document.body.removeChild(container);\n }\n };\n }, []);\n const [routeAnnouncement, setRouteAnnouncement] = (0, _react.useState)(\"\");\n const previousTitle = (0, _react.useRef)();\n (0, _react.useEffect)(()=>{\n let currentTitle = \"\";\n if (document.title) {\n currentTitle = document.title;\n } else {\n const pageHeader = document.querySelector(\"h1\");\n if (pageHeader) {\n currentTitle = pageHeader.innerText || pageHeader.textContent || \"\";\n }\n }\n // Only announce the title change, but not for the first load because screen\n // readers do that automatically.\n if (previousTitle.current !== undefined && previousTitle.current !== currentTitle) {\n setRouteAnnouncement(currentTitle);\n }\n previousTitle.current = currentTitle;\n }, [\n tree\n ]);\n return portalNode ? /*#__PURE__*/ (0, _reactdom.createPortal)(routeAnnouncement, portalNode) : null;\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=app-router-announcer.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL2FwcC1yb3V0ZXItYW5ub3VuY2VyLmpzIiwibWFwcGluZ3MiOiI7Ozs7c0RBNkJnQkE7OztlQUFBQTs7O21DQTdCNEI7c0NBQ2Y7QUFHN0IsTUFBTUMsaUJBQWlCO0FBQ3ZCLE1BQU1DLGVBQWU7QUFFckIsU0FBU0M7UUFFSEM7SUFESixNQUFNQSxvQkFBb0JDLFNBQVNDLGlCQUFpQixDQUFDTCxlQUFlLENBQUMsRUFBRTtJQUN2RSxJQUFJRyxxQkFBQUEsT0FBQUEsS0FBQUEsSUFBQUEsQ0FBQUEsZ0NBQUFBLGtCQUFtQkcsVUFBVSxxQkFBN0JILDhCQUErQkksVUFBVSxDQUFDLEVBQUUsRUFBRTtRQUNoRCxPQUFPSixrQkFBa0JHLFVBQVUsQ0FBQ0MsVUFBVSxDQUFDLEVBQUU7SUFDbkQsT0FBTztRQUNMLE1BQU1DLFlBQVlKLFNBQVNLLGFBQWEsQ0FBQ1Q7UUFDekNRLFVBQVVFLEtBQUssQ0FBQ0MsT0FBTyxHQUFHO1FBQzFCLE1BQU1DLFlBQVlSLFNBQVNLLGFBQWEsQ0FBQztRQUN6Q0csVUFBVUMsUUFBUSxHQUFHO1FBQ3JCRCxVQUFVRSxFQUFFLEdBQUdiO1FBQ2ZXLFVBQVVHLElBQUksR0FBRztRQUNqQkgsVUFBVUYsS0FBSyxDQUFDQyxPQUFPLEdBQ3JCO1FBRUYsdURBQXVEO1FBQ3ZELE1BQU1LLFNBQVNSLFVBQVVTLFlBQVksQ0FBQztZQUFFQyxNQUFNO1FBQU87UUFDckRGLE9BQU9HLFdBQVcsQ0FBQ1A7UUFDbkJSLFNBQVNnQixJQUFJLENBQUNELFdBQVcsQ0FBQ1g7UUFDMUIsT0FBT0k7SUFDVDtBQUNGO0FBRU8sU0FBU2IsbUJBQW1Cc0IsS0FBcUM7SUFBckMsTUFBRUMsSUFBSSxFQUErQixHQUFyQ0Q7SUFDakMsTUFBTSxDQUFDRSxZQUFZQyxjQUFjLEdBQUdDLENBQUFBLEdBQUFBLE9BQUFBLFFBQVEsRUFBcUI7SUFFakVDLENBQUFBLEdBQUFBLE9BQUFBLFNBQVMsRUFBQztRQUNSLE1BQU1kLFlBQVlWO1FBQ2xCc0IsY0FBY1o7UUFDZCxPQUFPO1lBQ0wsTUFBTUosWUFBWUosU0FBU3VCLG9CQUFvQixDQUFDM0IsZUFBZSxDQUFDLEVBQUU7WUFDbEUsSUFBSVEsYUFBQUEsT0FBQUEsS0FBQUEsSUFBQUEsVUFBV29CLFdBQVcsRUFBRTtnQkFDMUJ4QixTQUFTZ0IsSUFBSSxDQUFDUyxXQUFXLENBQUNyQjtZQUM1QjtRQUNGO0lBQ0YsR0FBRyxFQUFFO0lBRUwsTUFBTSxDQUFDc0IsbUJBQW1CQyxxQkFBcUIsR0FBR04sQ0FBQUEsR0FBQUEsT0FBQUEsUUFBUSxFQUFDO0lBQzNELE1BQU1PLGdCQUFnQkMsQ0FBQUEsR0FBQUEsT0FBQUEsTUFBTTtJQUU1QlAsQ0FBQUEsR0FBQUEsT0FBQUEsU0FBUyxFQUFDO1FBQ1IsSUFBSVEsZUFBZTtRQUNuQixJQUFJOUIsU0FBUytCLEtBQUssRUFBRTtZQUNsQkQsZUFBZTlCLFNBQVMrQixLQUFLO1FBQy9CLE9BQU87WUFDTCxNQUFNQyxhQUFhaEMsU0FBU2lDLGFBQWEsQ0FBQztZQUMxQyxJQUFJRCxZQUFZO2dCQUNkRixlQUFlRSxXQUFXRSxTQUFTLElBQUlGLFdBQVdHLFdBQVcsSUFBSTtZQUNuRTtRQUNGO1FBRUEsNEVBQTRFO1FBQzVFLGlDQUFpQztRQUNqQyxJQUNFUCxjQUFjUSxPQUFPLEtBQUtDLGFBQzFCVCxjQUFjUSxPQUFPLEtBQUtOLGNBQzFCO1lBQ0FILHFCQUFxQkc7UUFDdkI7UUFDQUYsY0FBY1EsT0FBTyxHQUFHTjtJQUMxQixHQUFHO1FBQUNaO0tBQUs7SUFFVCxPQUFPQyxhQUFhbUIsV0FBYm5CLEdBQWFtQixDQUFBQSxHQUFBQSxVQUFBQSxZQUFZLEVBQUNaLG1CQUFtQlAsY0FBYztBQUNwRSIsInNvdXJjZXMiOlsid2VicGFjazovL2FzdG9jay1hZ2VudC1mcm9udGVuZC8uLi8uLi8uLi9zcmMvY2xpZW50L2NvbXBvbmVudHMvYXBwLXJvdXRlci1hbm5vdW5jZXIudHN4P2FkZTMiXSwibmFtZXMiOlsiQXBwUm91dGVyQW5ub3VuY2VyIiwiQU5OT1VOQ0VSX1RZUEUiLCJBTk5PVU5DRVJfSUQiLCJnZXRBbm5vdW5jZXJOb2RlIiwiZXhpc3RpbmdBbm5vdW5jZXIiLCJkb2N1bWVudCIsImdldEVsZW1lbnRzQnlOYW1lIiwic2hhZG93Um9vdCIsImNoaWxkTm9kZXMiLCJjb250YWluZXIiLCJjcmVhdGVFbGVtZW50Iiwic3R5bGUiLCJjc3NUZXh0IiwiYW5ub3VuY2VyIiwiYXJpYUxpdmUiLCJpZCIsInJvbGUiLCJzaGFkb3ciLCJhdHRhY2hTaGFkb3ciLCJtb2RlIiwiYXBwZW5kQ2hpbGQiLCJib2R5IiwicGFyYW0iLCJ0cmVlIiwicG9ydGFsTm9kZSIsInNldFBvcnRhbE5vZGUiLCJ1c2VTdGF0ZSIsInVzZUVmZmVjdCIsImdldEVsZW1lbnRzQnlUYWdOYW1lIiwiaXNDb25uZWN0ZWQiLCJyZW1vdmVDaGlsZCIsInJvdXRlQW5ub3VuY2VtZW50Iiwic2V0Um91dGVBbm5vdW5jZW1lbnQiLCJwcmV2aW91c1RpdGxlIiwidXNlUmVmIiwiY3VycmVudFRpdGxlIiwidGl0bGUiLCJwYWdlSGVhZGVyIiwicXVlcnlTZWxlY3RvciIsImlubmVyVGV4dCIsInRleHRDb250ZW50IiwiY3VycmVudCIsInVuZGVmaW5lZCIsImNyZWF0ZVBvcnRhbCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/app-router-announcer.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/next/dist/client/components/app-router-headers.js": -/*!************************************************************************!*\ - !*** ./node_modules/next/dist/client/components/app-router-headers.js ***! - \************************************************************************/ -/***/ ((module, exports) => { - -"use strict"; -eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\n0 && (0);\nfunction _export(target, all) {\n for(var name in all)Object.defineProperty(target, name, {\n enumerable: true,\n get: all[name]\n });\n}\n_export(exports, {\n ACTION: function() {\n return ACTION;\n },\n FLIGHT_PARAMETERS: function() {\n return FLIGHT_PARAMETERS;\n },\n NEXT_DID_POSTPONE_HEADER: function() {\n return NEXT_DID_POSTPONE_HEADER;\n },\n NEXT_ROUTER_PREFETCH_HEADER: function() {\n return NEXT_ROUTER_PREFETCH_HEADER;\n },\n NEXT_ROUTER_STATE_TREE: function() {\n return NEXT_ROUTER_STATE_TREE;\n },\n NEXT_RSC_UNION_QUERY: function() {\n return NEXT_RSC_UNION_QUERY;\n },\n NEXT_URL: function() {\n return NEXT_URL;\n },\n RSC_CONTENT_TYPE_HEADER: function() {\n return RSC_CONTENT_TYPE_HEADER;\n },\n RSC_HEADER: function() {\n return RSC_HEADER;\n }\n});\nconst RSC_HEADER = \"RSC\";\nconst ACTION = \"Next-Action\";\nconst NEXT_ROUTER_STATE_TREE = \"Next-Router-State-Tree\";\nconst NEXT_ROUTER_PREFETCH_HEADER = \"Next-Router-Prefetch\";\nconst NEXT_URL = \"Next-Url\";\nconst RSC_CONTENT_TYPE_HEADER = \"text/x-component\";\nconst FLIGHT_PARAMETERS = [\n [\n RSC_HEADER\n ],\n [\n NEXT_ROUTER_STATE_TREE\n ],\n [\n NEXT_ROUTER_PREFETCH_HEADER\n ]\n];\nconst NEXT_RSC_UNION_QUERY = \"_rsc\";\nconst NEXT_DID_POSTPONE_HEADER = \"x-nextjs-postponed\";\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=app-router-headers.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL2FwcC1yb3V0ZXItaGVhZGVycy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7SUFDYUEsUUFBTTtlQUFOQTs7SUFPQUMsbUJBQWlCO2VBQWpCQTs7SUFRQUMsMEJBQXdCO2VBQXhCQTs7SUFaQUMsNkJBQTJCO2VBQTNCQTs7SUFEQUMsd0JBQXNCO2VBQXRCQTs7SUFXQUMsc0JBQW9CO2VBQXBCQTs7SUFUQUMsVUFBUTtlQUFSQTs7SUFDQUMseUJBQXVCO2VBQXZCQTs7SUFOQUMsWUFBVTtlQUFWQTs7O0FBQU4sTUFBTUEsYUFBYTtBQUNuQixNQUFNUixTQUFTO0FBRWYsTUFBTUkseUJBQXlCO0FBQy9CLE1BQU1ELDhCQUE4QjtBQUNwQyxNQUFNRyxXQUFXO0FBQ2pCLE1BQU1DLDBCQUEwQjtBQUVoQyxNQUFNTixvQkFBb0I7SUFDL0I7UUFBQ087S0FBVztJQUNaO1FBQUNKO0tBQXVCO0lBQ3hCO1FBQUNEO0tBQTRCO0NBQzlCO0FBRU0sTUFBTUUsdUJBQXVCO0FBRTdCLE1BQU1ILDJCQUEyQiIsInNvdXJjZXMiOlsid2VicGFjazovL2FzdG9jay1hZ2VudC1mcm9udGVuZC8uLi8uLi8uLi9zcmMvY2xpZW50L2NvbXBvbmVudHMvYXBwLXJvdXRlci1oZWFkZXJzLnRzP2Y5NGUiXSwibmFtZXMiOlsiQUNUSU9OIiwiRkxJR0hUX1BBUkFNRVRFUlMiLCJORVhUX0RJRF9QT1NUUE9ORV9IRUFERVIiLCJORVhUX1JPVVRFUl9QUkVGRVRDSF9IRUFERVIiLCJORVhUX1JPVVRFUl9TVEFURV9UUkVFIiwiTkVYVF9SU0NfVU5JT05fUVVFUlkiLCJORVhUX1VSTCIsIlJTQ19DT05URU5UX1RZUEVfSEVBREVSIiwiUlNDX0hFQURFUiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/app-router-headers.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/next/dist/client/components/app-router.js": -/*!****************************************************************!*\ - !*** ./node_modules/next/dist/client/components/app-router.js ***! - \****************************************************************/ -/***/ ((module, exports, __webpack_require__) => { - -"use strict"; -eval("/* __next_internal_client_entry_do_not_use__ cjs */ \nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\n0 && (0);\nfunction _export(target, all) {\n for(var name in all)Object.defineProperty(target, name, {\n enumerable: true,\n get: all[name]\n });\n}\n_export(exports, {\n createEmptyCacheNode: function() {\n return createEmptyCacheNode;\n },\n default: function() {\n return AppRouter;\n },\n getServerActionDispatcher: function() {\n return getServerActionDispatcher;\n },\n urlToUrlWithoutFlightMarker: function() {\n return urlToUrlWithoutFlightMarker;\n }\n});\nconst _interop_require_wildcard = __webpack_require__(/*! @swc/helpers/_/_interop_require_wildcard */ \"(ssr)/./node_modules/@swc/helpers/esm/_interop_require_wildcard.js\");\nconst _jsxruntime = __webpack_require__(/*! react/jsx-runtime */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react-jsx-runtime.js\");\nconst _react = /*#__PURE__*/ _interop_require_wildcard._(__webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\"));\nconst _approutercontextsharedruntime = __webpack_require__(/*! ../../shared/lib/app-router-context.shared-runtime */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/app-router-context.js\");\nconst _routerreducertypes = __webpack_require__(/*! ./router-reducer/router-reducer-types */ \"(ssr)/./node_modules/next/dist/client/components/router-reducer/router-reducer-types.js\");\nconst _createhreffromurl = __webpack_require__(/*! ./router-reducer/create-href-from-url */ \"(ssr)/./node_modules/next/dist/client/components/router-reducer/create-href-from-url.js\");\nconst _hooksclientcontextsharedruntime = __webpack_require__(/*! ../../shared/lib/hooks-client-context.shared-runtime */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/hooks-client-context.js\");\nconst _usereducerwithdevtools = __webpack_require__(/*! ./use-reducer-with-devtools */ \"(ssr)/./node_modules/next/dist/client/components/use-reducer-with-devtools.js\");\nconst _errorboundary = __webpack_require__(/*! ./error-boundary */ \"(ssr)/./node_modules/next/dist/client/components/error-boundary.js\");\nconst _createinitialrouterstate = __webpack_require__(/*! ./router-reducer/create-initial-router-state */ \"(ssr)/./node_modules/next/dist/client/components/router-reducer/create-initial-router-state.js\");\nconst _isbot = __webpack_require__(/*! ../../shared/lib/router/utils/is-bot */ \"(ssr)/./node_modules/next/dist/shared/lib/router/utils/is-bot.js\");\nconst _addbasepath = __webpack_require__(/*! ../add-base-path */ \"(ssr)/./node_modules/next/dist/client/add-base-path.js\");\nconst _approuterannouncer = __webpack_require__(/*! ./app-router-announcer */ \"(ssr)/./node_modules/next/dist/client/components/app-router-announcer.js\");\nconst _redirectboundary = __webpack_require__(/*! ./redirect-boundary */ \"(ssr)/./node_modules/next/dist/client/components/redirect-boundary.js\");\nconst _findheadincache = __webpack_require__(/*! ./router-reducer/reducers/find-head-in-cache */ \"(ssr)/./node_modules/next/dist/client/components/router-reducer/reducers/find-head-in-cache.js\");\nconst _unresolvedthenable = __webpack_require__(/*! ./unresolved-thenable */ \"(ssr)/./node_modules/next/dist/client/components/unresolved-thenable.js\");\nconst _approuterheaders = __webpack_require__(/*! ./app-router-headers */ \"(ssr)/./node_modules/next/dist/client/components/app-router-headers.js\");\nconst _removebasepath = __webpack_require__(/*! ../remove-base-path */ \"(ssr)/./node_modules/next/dist/client/remove-base-path.js\");\nconst _hasbasepath = __webpack_require__(/*! ../has-base-path */ \"(ssr)/./node_modules/next/dist/client/has-base-path.js\");\nconst _segment = __webpack_require__(/*! ../../shared/lib/segment */ \"(ssr)/./node_modules/next/dist/shared/lib/segment.js\");\nconst isServer = \"undefined\" === \"undefined\";\n// Ensure the initialParallelRoutes are not combined because of double-rendering in the browser with Strict Mode.\nlet initialParallelRoutes = isServer ? null : new Map();\nlet globalServerActionDispatcher = null;\nfunction getServerActionDispatcher() {\n return globalServerActionDispatcher;\n}\nconst globalMutable = {};\nfunction urlToUrlWithoutFlightMarker(url) {\n const urlWithoutFlightParameters = new URL(url, location.origin);\n urlWithoutFlightParameters.searchParams.delete(_approuterheaders.NEXT_RSC_UNION_QUERY);\n if (false) {}\n return urlWithoutFlightParameters;\n}\n// this function performs a depth-first search of the tree to find the selected\n// params\nfunction getSelectedParams(currentTree, params) {\n if (params === void 0) params = {};\n const parallelRoutes = currentTree[1];\n for (const parallelRoute of Object.values(parallelRoutes)){\n const segment = parallelRoute[0];\n const isDynamicParameter = Array.isArray(segment);\n const segmentValue = isDynamicParameter ? segment[1] : segment;\n if (!segmentValue || segmentValue.startsWith(_segment.PAGE_SEGMENT_KEY)) continue;\n // Ensure catchAll and optional catchall are turned into an array\n const isCatchAll = isDynamicParameter && (segment[2] === \"c\" || segment[2] === \"oc\");\n if (isCatchAll) {\n params[segment[0]] = segment[1].split(\"/\");\n } else if (isDynamicParameter) {\n params[segment[0]] = segment[1];\n }\n params = getSelectedParams(parallelRoute, params);\n }\n return params;\n}\nfunction isExternalURL(url) {\n return url.origin !== window.location.origin;\n}\nfunction HistoryUpdater(param) {\n let { appRouterState, sync } = param;\n (0, _react.useInsertionEffect)(()=>{\n const { tree, pushRef, canonicalUrl } = appRouterState;\n const historyState = {\n ...pushRef.preserveCustomHistoryState ? window.history.state : {},\n // Identifier is shortened intentionally.\n // __NA is used to identify if the history entry can be handled by the app-router.\n // __N is used to identify if the history entry can be handled by the old router.\n __NA: true,\n __PRIVATE_NEXTJS_INTERNALS_TREE: tree\n };\n if (pushRef.pendingPush && // Skip pushing an additional history entry if the canonicalUrl is the same as the current url.\n // This mirrors the browser behavior for normal navigation.\n (0, _createhreffromurl.createHrefFromUrl)(new URL(window.location.href)) !== canonicalUrl) {\n // This intentionally mutates React state, pushRef is overwritten to ensure additional push/replace calls do not trigger an additional history entry.\n pushRef.pendingPush = false;\n window.history.pushState(historyState, \"\", canonicalUrl);\n } else {\n window.history.replaceState(historyState, \"\", canonicalUrl);\n }\n sync(appRouterState);\n }, [\n appRouterState,\n sync\n ]);\n return null;\n}\nfunction createEmptyCacheNode() {\n return {\n lazyData: null,\n rsc: null,\n prefetchRsc: null,\n head: null,\n prefetchHead: null,\n parallelRoutes: new Map(),\n lazyDataResolved: false,\n loading: null\n };\n}\nfunction useServerActionDispatcher(dispatch) {\n const serverActionDispatcher = (0, _react.useCallback)((actionPayload)=>{\n (0, _react.startTransition)(()=>{\n dispatch({\n ...actionPayload,\n type: _routerreducertypes.ACTION_SERVER_ACTION\n });\n });\n }, [\n dispatch\n ]);\n globalServerActionDispatcher = serverActionDispatcher;\n}\n/**\n * Server response that only patches the cache and tree.\n */ function useChangeByServerResponse(dispatch) {\n return (0, _react.useCallback)((param)=>{\n let { previousTree, serverResponse } = param;\n (0, _react.startTransition)(()=>{\n dispatch({\n type: _routerreducertypes.ACTION_SERVER_PATCH,\n previousTree,\n serverResponse\n });\n });\n }, [\n dispatch\n ]);\n}\nfunction useNavigate(dispatch) {\n return (0, _react.useCallback)((href, navigateType, shouldScroll)=>{\n const url = new URL((0, _addbasepath.addBasePath)(href), location.href);\n return dispatch({\n type: _routerreducertypes.ACTION_NAVIGATE,\n url,\n isExternalUrl: isExternalURL(url),\n locationSearch: location.search,\n shouldScroll: shouldScroll != null ? shouldScroll : true,\n navigateType\n });\n }, [\n dispatch\n ]);\n}\nfunction copyNextJsInternalHistoryState(data) {\n if (data == null) data = {};\n const currentState = window.history.state;\n const __NA = currentState == null ? void 0 : currentState.__NA;\n if (__NA) {\n data.__NA = __NA;\n }\n const __PRIVATE_NEXTJS_INTERNALS_TREE = currentState == null ? void 0 : currentState.__PRIVATE_NEXTJS_INTERNALS_TREE;\n if (__PRIVATE_NEXTJS_INTERNALS_TREE) {\n data.__PRIVATE_NEXTJS_INTERNALS_TREE = __PRIVATE_NEXTJS_INTERNALS_TREE;\n }\n return data;\n}\nfunction Head(param) {\n let { headCacheNode } = param;\n // If this segment has a `prefetchHead`, it's the statically prefetched data.\n // We should use that on initial render instead of `head`. Then we'll switch\n // to `head` when the dynamic response streams in.\n const head = headCacheNode !== null ? headCacheNode.head : null;\n const prefetchHead = headCacheNode !== null ? headCacheNode.prefetchHead : null;\n // If no prefetch data is available, then we go straight to rendering `head`.\n const resolvedPrefetchRsc = prefetchHead !== null ? prefetchHead : head;\n // We use `useDeferredValue` to handle switching between the prefetched and\n // final values. The second argument is returned on initial render, then it\n // re-renders with the first argument.\n //\n // @ts-expect-error The second argument to `useDeferredValue` is only\n // available in the experimental builds. When its disabled, it will always\n // return `head`.\n return (0, _react.useDeferredValue)(head, resolvedPrefetchRsc);\n}\n/**\n * The global router that wraps the application components.\n */ function Router(param) {\n let { buildId, initialHead, initialTree, urlParts, initialSeedData, couldBeIntercepted, assetPrefix, missingSlots } = param;\n const initialState = (0, _react.useMemo)(()=>(0, _createinitialrouterstate.createInitialRouterState)({\n buildId,\n initialSeedData,\n urlParts,\n initialTree,\n initialParallelRoutes,\n location: !isServer ? window.location : null,\n initialHead,\n couldBeIntercepted\n }), [\n buildId,\n initialSeedData,\n urlParts,\n initialTree,\n initialHead,\n couldBeIntercepted\n ]);\n const [reducerState, dispatch, sync] = (0, _usereducerwithdevtools.useReducerWithReduxDevtools)(initialState);\n (0, _react.useEffect)(()=>{\n // Ensure initialParallelRoutes is cleaned up from memory once it's used.\n initialParallelRoutes = null;\n }, []);\n const { canonicalUrl } = (0, _usereducerwithdevtools.useUnwrapState)(reducerState);\n // Add memoized pathname/query for useSearchParams and usePathname.\n const { searchParams, pathname } = (0, _react.useMemo)(()=>{\n const url = new URL(canonicalUrl, true ? \"http://n\" : 0);\n return {\n // This is turned into a readonly class in `useSearchParams`\n searchParams: url.searchParams,\n pathname: (0, _hasbasepath.hasBasePath)(url.pathname) ? (0, _removebasepath.removeBasePath)(url.pathname) : url.pathname\n };\n }, [\n canonicalUrl\n ]);\n const changeByServerResponse = useChangeByServerResponse(dispatch);\n const navigate = useNavigate(dispatch);\n useServerActionDispatcher(dispatch);\n /**\n * The app router that is exposed through `useRouter`. It's only concerned with dispatching actions to the reducer, does not hold state.\n */ const appRouter = (0, _react.useMemo)(()=>{\n const routerInstance = {\n back: ()=>window.history.back(),\n forward: ()=>window.history.forward(),\n prefetch: (href, options)=>{\n // Don't prefetch for bots as they don't navigate.\n if ((0, _isbot.isBot)(window.navigator.userAgent)) {\n return;\n }\n let url;\n try {\n url = new URL((0, _addbasepath.addBasePath)(href), window.location.href);\n } catch (_) {\n throw new Error(\"Cannot prefetch '\" + href + \"' because it cannot be converted to a URL.\");\n }\n // Don't prefetch during development (improves compilation performance)\n if (true) {\n return;\n }\n // External urls can't be prefetched in the same way.\n if (isExternalURL(url)) {\n return;\n }\n (0, _react.startTransition)(()=>{\n var _options_kind;\n dispatch({\n type: _routerreducertypes.ACTION_PREFETCH,\n url,\n kind: (_options_kind = options == null ? void 0 : options.kind) != null ? _options_kind : _routerreducertypes.PrefetchKind.FULL\n });\n });\n },\n replace: (href, options)=>{\n if (options === void 0) options = {};\n (0, _react.startTransition)(()=>{\n var _options_scroll;\n navigate(href, \"replace\", (_options_scroll = options.scroll) != null ? _options_scroll : true);\n });\n },\n push: (href, options)=>{\n if (options === void 0) options = {};\n (0, _react.startTransition)(()=>{\n var _options_scroll;\n navigate(href, \"push\", (_options_scroll = options.scroll) != null ? _options_scroll : true);\n });\n },\n refresh: ()=>{\n (0, _react.startTransition)(()=>{\n dispatch({\n type: _routerreducertypes.ACTION_REFRESH,\n origin: window.location.origin\n });\n });\n },\n fastRefresh: ()=>{\n if (false) {} else {\n (0, _react.startTransition)(()=>{\n dispatch({\n type: _routerreducertypes.ACTION_FAST_REFRESH,\n origin: window.location.origin\n });\n });\n }\n }\n };\n return routerInstance;\n }, [\n dispatch,\n navigate\n ]);\n (0, _react.useEffect)(()=>{\n // Exists for debugging purposes. Don't use in application code.\n if (window.next) {\n window.next.router = appRouter;\n }\n }, [\n appRouter\n ]);\n if (true) {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n const { cache, prefetchCache, tree } = (0, _usereducerwithdevtools.useUnwrapState)(reducerState);\n // This hook is in a conditional but that is ok because `process.env.NODE_ENV` never changes\n // eslint-disable-next-line react-hooks/rules-of-hooks\n (0, _react.useEffect)(()=>{\n // Add `window.nd` for debugging purposes.\n // This is not meant for use in applications as concurrent rendering will affect the cache/tree/router.\n // @ts-ignore this is for debugging\n window.nd = {\n router: appRouter,\n cache,\n prefetchCache,\n tree\n };\n }, [\n appRouter,\n cache,\n prefetchCache,\n tree\n ]);\n }\n (0, _react.useEffect)(()=>{\n // If the app is restored from bfcache, it's possible that\n // pushRef.mpaNavigation is true, which would mean that any re-render of this component\n // would trigger the mpa navigation logic again from the lines below.\n // This will restore the router to the initial state in the event that the app is restored from bfcache.\n function handlePageShow(event) {\n var _window_history_state;\n if (!event.persisted || !((_window_history_state = window.history.state) == null ? void 0 : _window_history_state.__PRIVATE_NEXTJS_INTERNALS_TREE)) {\n return;\n }\n // Clear the pendingMpaPath value so that a subsequent MPA navigation to the same URL can be triggered.\n // This is necessary because if the browser restored from bfcache, the pendingMpaPath would still be set to the value\n // of the last MPA navigation.\n globalMutable.pendingMpaPath = undefined;\n dispatch({\n type: _routerreducertypes.ACTION_RESTORE,\n url: new URL(window.location.href),\n tree: window.history.state.__PRIVATE_NEXTJS_INTERNALS_TREE\n });\n }\n window.addEventListener(\"pageshow\", handlePageShow);\n return ()=>{\n window.removeEventListener(\"pageshow\", handlePageShow);\n };\n }, [\n dispatch\n ]);\n // When mpaNavigation flag is set do a hard navigation to the new url.\n // Infinitely suspend because we don't actually want to rerender any child\n // components with the new URL and any entangled state updates shouldn't\n // commit either (eg: useTransition isPending should stay true until the page\n // unloads).\n //\n // This is a side effect in render. Don't try this at home, kids. It's\n // probably safe because we know this is a singleton component and it's never\n // in . At least I hope so. (It will run twice in dev strict mode,\n // but that's... fine?)\n const { pushRef } = (0, _usereducerwithdevtools.useUnwrapState)(reducerState);\n if (pushRef.mpaNavigation) {\n // if there's a re-render, we don't want to trigger another redirect if one is already in flight to the same URL\n if (globalMutable.pendingMpaPath !== canonicalUrl) {\n const location1 = window.location;\n if (pushRef.pendingPush) {\n location1.assign(canonicalUrl);\n } else {\n location1.replace(canonicalUrl);\n }\n globalMutable.pendingMpaPath = canonicalUrl;\n }\n // TODO-APP: Should we listen to navigateerror here to catch failed\n // navigations somehow? And should we call window.stop() if a SPA navigation\n // should interrupt an MPA one?\n (0, _react.use)(_unresolvedthenable.unresolvedThenable);\n }\n (0, _react.useEffect)(()=>{\n const originalPushState = window.history.pushState.bind(window.history);\n const originalReplaceState = window.history.replaceState.bind(window.history);\n // Ensure the canonical URL in the Next.js Router is updated when the URL is changed so that `usePathname` and `useSearchParams` hold the pushed values.\n const applyUrlFromHistoryPushReplace = (url)=>{\n var _window_history_state;\n const href = window.location.href;\n const tree = (_window_history_state = window.history.state) == null ? void 0 : _window_history_state.__PRIVATE_NEXTJS_INTERNALS_TREE;\n (0, _react.startTransition)(()=>{\n dispatch({\n type: _routerreducertypes.ACTION_RESTORE,\n url: new URL(url != null ? url : href, href),\n tree\n });\n });\n };\n /**\n * Patch pushState to ensure external changes to the history are reflected in the Next.js Router.\n * Ensures Next.js internal history state is copied to the new history entry.\n * Ensures usePathname and useSearchParams hold the newly provided url.\n */ window.history.pushState = function pushState(data, _unused, url) {\n // Avoid a loop when Next.js internals trigger pushState/replaceState\n if ((data == null ? void 0 : data.__NA) || (data == null ? void 0 : data._N)) {\n return originalPushState(data, _unused, url);\n }\n data = copyNextJsInternalHistoryState(data);\n if (url) {\n applyUrlFromHistoryPushReplace(url);\n }\n return originalPushState(data, _unused, url);\n };\n /**\n * Patch replaceState to ensure external changes to the history are reflected in the Next.js Router.\n * Ensures Next.js internal history state is copied to the new history entry.\n * Ensures usePathname and useSearchParams hold the newly provided url.\n */ window.history.replaceState = function replaceState(data, _unused, url) {\n // Avoid a loop when Next.js internals trigger pushState/replaceState\n if ((data == null ? void 0 : data.__NA) || (data == null ? void 0 : data._N)) {\n return originalReplaceState(data, _unused, url);\n }\n data = copyNextJsInternalHistoryState(data);\n if (url) {\n applyUrlFromHistoryPushReplace(url);\n }\n return originalReplaceState(data, _unused, url);\n };\n /**\n * Handle popstate event, this is used to handle back/forward in the browser.\n * By default dispatches ACTION_RESTORE, however if the history entry was not pushed/replaced by app-router it will reload the page.\n * That case can happen when the old router injected the history entry.\n */ const onPopState = (param)=>{\n let { state } = param;\n if (!state) {\n // TODO-APP: this case only happens when pushState/replaceState was called outside of Next.js. It should probably reload the page in this case.\n return;\n }\n // This case happens when the history entry was pushed by the `pages` router.\n if (!state.__NA) {\n window.location.reload();\n return;\n }\n // TODO-APP: Ideally the back button should not use startTransition as it should apply the updates synchronously\n // Without startTransition works if the cache is there for this path\n (0, _react.startTransition)(()=>{\n dispatch({\n type: _routerreducertypes.ACTION_RESTORE,\n url: new URL(window.location.href),\n tree: state.__PRIVATE_NEXTJS_INTERNALS_TREE\n });\n });\n };\n // Register popstate event to call onPopstate.\n window.addEventListener(\"popstate\", onPopState);\n return ()=>{\n window.history.pushState = originalPushState;\n window.history.replaceState = originalReplaceState;\n window.removeEventListener(\"popstate\", onPopState);\n };\n }, [\n dispatch\n ]);\n const { cache, tree, nextUrl, focusAndScrollRef } = (0, _usereducerwithdevtools.useUnwrapState)(reducerState);\n const matchingHead = (0, _react.useMemo)(()=>{\n return (0, _findheadincache.findHeadInCache)(cache, tree[1]);\n }, [\n cache,\n tree\n ]);\n // Add memoized pathParams for useParams.\n const pathParams = (0, _react.useMemo)(()=>{\n return getSelectedParams(tree);\n }, [\n tree\n ]);\n let head;\n if (matchingHead !== null) {\n // The head is wrapped in an extra component so we can use\n // `useDeferredValue` to swap between the prefetched and final versions of\n // the head. (This is what LayoutRouter does for segment data, too.)\n //\n // The `key` is used to remount the component whenever the head moves to\n // a different segment.\n const [headCacheNode, headKey] = matchingHead;\n head = /*#__PURE__*/ (0, _jsxruntime.jsx)(Head, {\n headCacheNode: headCacheNode\n }, headKey);\n } else {\n head = null;\n }\n let content = /*#__PURE__*/ (0, _jsxruntime.jsxs)(_redirectboundary.RedirectBoundary, {\n children: [\n head,\n cache.rsc,\n /*#__PURE__*/ (0, _jsxruntime.jsx)(_approuterannouncer.AppRouterAnnouncer, {\n tree: tree\n })\n ]\n });\n if (true) {\n if (false) {}\n const HotReloader = (__webpack_require__(/*! ./react-dev-overlay/app/hot-reloader-client */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/app/hot-reloader-client.js\")[\"default\"]);\n content = /*#__PURE__*/ (0, _jsxruntime.jsx)(HotReloader, {\n assetPrefix: assetPrefix,\n children: content\n });\n }\n return /*#__PURE__*/ (0, _jsxruntime.jsxs)(_jsxruntime.Fragment, {\n children: [\n /*#__PURE__*/ (0, _jsxruntime.jsx)(HistoryUpdater, {\n appRouterState: (0, _usereducerwithdevtools.useUnwrapState)(reducerState),\n sync: sync\n }),\n /*#__PURE__*/ (0, _jsxruntime.jsx)(_hooksclientcontextsharedruntime.PathParamsContext.Provider, {\n value: pathParams,\n children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_hooksclientcontextsharedruntime.PathnameContext.Provider, {\n value: pathname,\n children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_hooksclientcontextsharedruntime.SearchParamsContext.Provider, {\n value: searchParams,\n children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_approutercontextsharedruntime.GlobalLayoutRouterContext.Provider, {\n value: {\n buildId,\n changeByServerResponse,\n tree,\n focusAndScrollRef,\n nextUrl\n },\n children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_approutercontextsharedruntime.AppRouterContext.Provider, {\n value: appRouter,\n children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_approutercontextsharedruntime.LayoutRouterContext.Provider, {\n value: {\n childNodes: cache.parallelRoutes,\n tree,\n // Root node always has `url`\n // Provided in AppTreeContext to ensure it can be overwritten in layout-router\n url: canonicalUrl,\n loading: cache.loading\n },\n children: content\n })\n })\n })\n })\n })\n })\n ]\n });\n}\nfunction AppRouter(props) {\n const { globalErrorComponent, ...rest } = props;\n return /*#__PURE__*/ (0, _jsxruntime.jsx)(_errorboundary.ErrorBoundary, {\n errorComponent: globalErrorComponent,\n children: /*#__PURE__*/ (0, _jsxruntime.jsx)(Router, {\n ...rest\n })\n });\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=app-router.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL2FwcC1yb3V0ZXIuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7UUFtTGdCQSxTQUFBQTswQkFBQUE7O0lBbWhCaEI7OztJQTNuQmdCQzsrQkFBQUE7O0lBUUFDO2lDQUFBQTs7Ozs7O3VEQWxFVEMsQ0FBQSxDQUFBQyxtQkFBQUEsQ0FBQTt1Q0FlQUEsbUJBQUFBLENBQUE7Z0RBUTJCOzt5Q0FVM0JBLG1CQUFBQSxDQUFBO2dDQUN1QkEsbUJBQUFBLENBQUE7O2tDQUdSQSxtQkFBQUEsQ0FBQTs7O2dEQUdXOzhDQUNEOztnREFFSzs4Q0FDTjs0Q0FDSDt5Q0FDSztBQUdqQyxNQUFNQyxXQUFXRCxtQkFBQUEsQ0FBT0Usc0ZBQUFBO0FBRXhCLE1BQUFELFdBQUE7QUFDQSxpSEFFUUU7QUFFUixJQUFJQyx3QkFBQUEsV0FBK0IsV0FBQUQ7QUFFNUIsSUFBQUMsK0JBQVNQO1NBQ2RBO0lBQ0YsT0FBQU87QUFFQTtBQUlPLE1BQUFDLGdCQUFTUCxDQUFBQTtTQUNkQSw0QkFBTVEsR0FBNkI7SUFDbkNBLE1BQUFBLDZCQUEyQkMsSUFBWUMsSUFBQ0MsS0FBT0MsU0FBQUEsTUFBQUE7SUFDL0NKLDJCQUF3QkMsWUFBSyxDQUFBRSxNQUFjLENBQUFFLGtCQUFBRCxvQkFBQTtRQUN6Q0UsS0FDY0MsRUFBb0IsRUFTcEM7SUFDRixPQUFBUDtBQUVBO0FBQ0EsK0VBQVM7QUFDVCxTQUFTWTtTQUVQQyxrQkFBQUEsV0FBa0IsRUFBQUEsTUFBQTtJQUVsQixJQUFBQSxXQUFNQyxLQUFBQSxHQUFpQkMsU0FBQUEsQ0FBQUE7SUFFdkIsTUFBS0QsaUJBQU1FLFdBQWlCQyxDQUFPQyxFQUFBQTtTQUNqQyxNQUFNQyxpQkFBVUgsT0FBY0UsTUFBRSxDQUFBSixnQkFBQTtRQUNoQyxNQUFNTSxVQUFBQSxhQUFxQkMsQ0FBQUEsRUFBQUE7UUFDM0IsTUFBTUMscUJBQWVGLE1BQUFBLE9BQUFBLENB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QUFBO0lBRVIsUUFBQUEsb0JBQ0UsS0FBQUMsTUFBQSxHQUFDQztXQUE4QkYsV0FBaEJHLEdBQWdCSCxDQUFBQSxHQUFBQSxZQUFBQSxHQUFBQSxFQUFBQSxlQUFBQSxhQUFBQSxFQUFBQTt3QkFDN0JBO2tCQUFnQixrQkFBQWYsWUFBQUMsR0FBQSxFQUFBa0IsUUFBQTs7O0lBR3RCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vYXN0b2NrLWFnZW50LWZyb250ZW5kLy4uLy4uLy4uL3NyYy9jbGllbnQvY29tcG9uZW50cy9hcHAtcm91dGVyLnRzeD8zNzgxIl0sIm5hbWVzIjpbImNyZWF0ZUVtcHR5Q2FjaGVOb2RlIiwiZ2V0U2VydmVyQWN0aW9uRGlzcGF0Y2hlciIsInVybFRvVXJsV2l0aG91dEZsaWdodE1hcmtlciIsIl8iLCJyZXF1aXJlIiwiaXNTZXJ2ZXIiLCJ3aW5kb3ciLCJNYXAiLCJnbG9iYWxTZXJ2ZXJBY3Rpb25EaXNwYXRjaGVyIiwiZ2xvYmFsTXV0YWJsZSIsInVybFdpdGhvdXRGbGlnaHRQYXJhbWV0ZXJzIiwic2VhcmNoUGFyYW1zIiwiVVJMIiwiZGVsZXRlIiwiTkVYVF9SU0NfVU5JT05fUVVFUlkiLCJfYXBwcm91dGVyaGVhZGVycyIsInByb2Nlc3MiLCJfX05FWFRfQ09ORklHX09VVFBVVCIsInBhdGhuYW1lIiwibGVuZ3RoIiwiZW5kc1dpdGgiLCJzbGljZSIsImdldFNlbGVjdGVkUGFyYW1zIiwicGFyYW1zIiwicGFyYWxsZWxSb3V0ZXMiLCJjdXJyZW50VHJlZSIsInBhcmFsbGVsUm91dGUiLCJPYmplY3QiLCJ2YWx1ZXMiLCJzZWdtZW50IiwiaXNEeW5hbWljUGFyYW1ldGVyIiwiQXJyYXkiLCJzZWdtZW50VmFsdWUiLCJzdGFydHNXaXRoIiwiUEFHRV9TRUdNRU5UX0tFWSIsIl9zZWdtZW50IiwiaXNDYXRjaEFsbCIsInNwbGl0IiwiaXNFeHRlcm5hbFVSTCIsInVybCIsIm9yaWdpbiIsImxvY2F0aW9uIiwiSGlzdG9yeVVwZGF0ZXIiLCJwYXJhbSIsInN5bmMiLCJ1c2VJbnNlcnRpb25FZmZlY3QiLCJfcmVhY3QiLCJjYW5vbmljYWxVcmwiLCJoaXN0b3J5U3RhdGUiLCJhcHBSb3V0ZXJTdGF0ZSIsInByZXNlcnZlQ3VzdG9tSGlzdG9yeVN0YXRlIiwicHVzaFJlZiIsImhpc3RvcnkiLCJzdGF0ZSIsIl9fTkEiLCJfX1BSSVZBVEVfTkVYVEpTX0lOVEVSTkFMU19UUkVFIiwidHJlZSIsInBlbmRpbmdQdXNoIiwiY3JlYXRlSHJlZkZyb21VcmwiLCJfY3JlYXRlaHJlZmZyb211cmwiLCJocmVmIiwicHVzaFN0YXRlIiwicmVwbGFjZVN0YXRlIiwibGF6eURhdGEiLCJyc2MiLCJwcmVmZXRjaFJzYyIsImhlYWQiLCJwcmVmZXRjaEhlYWQiLCJsYXp5RGF0YVJlc29sdmVkIiwibG9hZGluZyIsInVzZVNlcnZlckFjdGlvbkRpc3BhdGNoZXIiLCJ1c2VDYWxsYmFjayIsInN0YXJ0VHJhbnNpdGlvbiIsImFjdGlvblBheWxvYWQiLCJkaXNwYXRjaCIsInR5cGUiLCJBQ1RJT05fU0VSVkVSX0FDVElPTiIsIl9yb3V0ZXJyZWR1Y2VydHlwZXMiLCJzZXJ2ZXJBY3Rpb25EaXNwYXRjaGVyIiwicHJldmlvdXNUcmVlIiwic2VydmVyUmVzcG9uc2UiLCJ1c2VOYXZpZ2F0ZSIsImFkZEJhc2VQYXRoIiwic2hvdWxkU2Nyb2xsIiwiX2FkZGJhc2VwYXRoIiwiQUNUSU9OX05BVklHQVRFIiwiaXNFeHRlcm5hbFVybCIsImxvY2F0aW9uU2VhcmNoIiwic2VhcmNoIiwibmF2aWdhdGVUeXBlIiwiZGF0YSIsImN1cnJlbnRTdGF0ZSIsIkhlYWQiLCJoZWFkQ2FjaGVOb2RlIiwicmVzb2x2ZWRQcmVmZXRjaFJzYyIsInVzZURlZmVycmVkVmFsdWUiLCJidWlsZElkIiwiaW5pdGlhbEhlYWQiLCJpbml0aWFsU3RhdGUiLCJ1c2VNZW1vIiwidXJsUGFydHMiLCJjcmVhdGVJbml0aWFsUm91dGVyU3RhdGUiLCJtaXNzaW5nU2xvdHMiLCJpbml0aWFsU2VlZERhdGEiLCJpbml0aWFsVHJlZSIsImluaXRpYWxQYXJhbGxlbFJvdXRlcyIsImNvdWxkQmVJbnRlcmNlcHRlZCIsInVzZUVmZmVjdCIsIl91c2VyZWR1Y2Vyd2l0aGRldnRvb2xzIiwidXNlUmVkdWNlcldpdGhSZWR1eERldnRvb2xzIiwidXNlVW53cmFwU3RhdGUiLCJyZWR1Y2VyU3RhdGUiLCJoYXNCYXNlUGF0aCIsIl9oYXNiYXNlcGF0aCIsIl9yZW1vdmViYXNlcGF0aCIsInJlbW92ZUJhc2VQYXRoIiwibmF2aWdhdGUiLCJhcHBSb3V0ZXIiLCJyb3V0ZXJJbnN0YW5jZSIsImJhY2siLCJmb3J3YXJkIiwicHJlZmV0Y2giLCJvcHRpb25zIiwiX2lzYm90IiwiaXNCb3QiLCJuYXZpZ2F0b3IiLCJ1c2VyQWdlbnQiLCJFcnJvciIsImtpbmQiLCJfb3B0aW9uc19raW5kIiwiUHJlZmV0Y2hLaW5kIiwiRlVMTCIsInJlcGxhY2UiLCJfb3B0aW9uc19zY3JvbGwiLCJzY3JvbGwiLCJwdXNoIiwicmVmcmVzaCIsImZhc3RSZWZyZXNoIiwibmV4dCIsInJvdXRlciIsImNhY2hlIiwicHJlZmV0Y2hDYWNoZSIsIl93aW5kb3dfaGlzdG9yeV9zdGF0ZSIsImV2ZW50IiwicGVyc2lzdGVkIiwicGVuZGluZ01wYVBhdGgiLCJ1bmRlZmluZWQiLCJhZGRFdmVudExpc3RlbmVyIiwiaGFuZGxlUGFnZVNob3ciLCJyZW1vdmVFdmVudExpc3RlbmVyIiwibXBhTmF2aWdhdGlvbiIsImxvY2F0aW9uMSIsImFzc2lnbiIsInVzZSIsInVucmVzb2x2ZWRUaGVuYWJsZSIsIl91bnJlc29sdmVkdGhlbmFibGUiLCJvcmlnaW5hbFB1c2hTdGF0ZSIsIm9yaWdpbmFsUmVwbGFjZVN0YXRlIiwiYmluZCIsIl91bnVzZWQiLCJhcHBseVVybEZyb21IaXN0b3J5UHVzaFJlcGxhY2UiLCJyZWxvYWQiLCJvblBvcFN0YXRlIiwibWF0Y2hpbmdIZWFkIiwiZmluZEhlYWRJbkNhY2hlIiwiX2ZpbmRoZWFkaW5jYWNoZSIsInBhdGhQYXJhbXMiLCJoZWFkS2V5IiwiRGV2Um9vdE5vdEZvdW5kQm91bmRhcnkiLCJjb250ZW50IiwiX2pzeHJ1bnRpbWUiLCJqc3giLCJNaXNzaW5nU2xvdENvbnRleHQiLCJ2YWx1ZSIsIkhvdFJlbG9hZGVyIiwiYXNzZXRQcmVmaXgiLCJfYXBwcm91dGVyY29udGV4dHNoYXJlZHJ1bnRpbWUiLCJHbG9iYWxMYXlvdXRSb3V0ZXJDb250ZXh0IiwiUHJvdmlkZXIiLCJjaGFuZ2VCeVNlcnZlclJlc3BvbnNlIiwiZm9jdXNBbmRTY3JvbGxSZWYiLCJuZXh0VXJsIiwiTGF5b3V0Um91dGVyQ29udGV4dCIsImNoaWxkTm9kZXMiLCJBcHBSb3V0ZXIiLCJnbG9iYWxFcnJvckNvbXBvbmVudCIsInJlc3QiLCJFcnJvckJvdW5kYXJ5IiwiZXJyb3JDb21wb25lbnQiLCJSb3V0ZXIiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/app-router.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/next/dist/client/components/bailout-to-client-rendering.js": -/*!*********************************************************************************!*\ - !*** ./node_modules/next/dist/client/components/bailout-to-client-rendering.js ***! - \*********************************************************************************/ -/***/ ((module, exports, __webpack_require__) => { - -"use strict"; -eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"bailoutToClientRendering\", ({\n enumerable: true,\n get: function() {\n return bailoutToClientRendering;\n }\n}));\nconst _bailouttocsr = __webpack_require__(/*! ../../shared/lib/lazy-dynamic/bailout-to-csr */ \"(ssr)/./node_modules/next/dist/shared/lib/lazy-dynamic/bailout-to-csr.js\");\nconst _staticgenerationasyncstorageexternal = __webpack_require__(/*! ./static-generation-async-storage.external */ \"../../client/components/static-generation-async-storage.external\");\nfunction bailoutToClientRendering(reason) {\n const staticGenerationStore = _staticgenerationasyncstorageexternal.staticGenerationAsyncStorage.getStore();\n if (staticGenerationStore == null ? void 0 : staticGenerationStore.forceStatic) return;\n if (staticGenerationStore == null ? void 0 : staticGenerationStore.isStaticGeneration) throw new _bailouttocsr.BailoutToCSRError(reason);\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=bailout-to-client-rendering.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL2JhaWxvdXQtdG8tY2xpZW50LXJlbmRlcmluZy5qcyIsIm1hcHBpbmdzIjoiOzs7OzREQUdnQkE7OztlQUFBQTs7OzBDQUhrQjtrRUFDVztBQUV0QyxTQUFTQSx5QkFBeUJDLE1BQWM7SUFDckQsTUFBTUMsd0JBQXdCQyxzQ0FBQUEsNEJBQTRCLENBQUNDLFFBQVE7SUFFbkUsSUFBSUYseUJBQUFBLE9BQUFBLEtBQUFBLElBQUFBLHNCQUF1QkcsV0FBVyxFQUFFO0lBRXhDLElBQUlILHlCQUFBQSxPQUFBQSxLQUFBQSxJQUFBQSxzQkFBdUJJLGtCQUFrQixFQUMzQyxNQUFNLElBQUlDLGNBQUFBLGlCQUFpQixDQUFDTjtBQUNoQyIsInNvdXJjZXMiOlsid2VicGFjazovL2FzdG9jay1hZ2VudC1mcm9udGVuZC8uLi8uLi8uLi9zcmMvY2xpZW50L2NvbXBvbmVudHMvYmFpbG91dC10by1jbGllbnQtcmVuZGVyaW5nLnRzP2JiZDgiXSwibmFtZXMiOlsiYmFpbG91dFRvQ2xpZW50UmVuZGVyaW5nIiwicmVhc29uIiwic3RhdGljR2VuZXJhdGlvblN0b3JlIiwic3RhdGljR2VuZXJhdGlvbkFzeW5jU3RvcmFnZSIsImdldFN0b3JlIiwiZm9yY2VTdGF0aWMiLCJpc1N0YXRpY0dlbmVyYXRpb24iLCJCYWlsb3V0VG9DU1JFcnJvciJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/bailout-to-client-rendering.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/next/dist/client/components/client-page.js": -/*!*****************************************************************!*\ - !*** ./node_modules/next/dist/client/components/client-page.js ***! - \*****************************************************************/ -/***/ ((module, exports, __webpack_require__) => { - -"use strict"; -eval("/* __next_internal_client_entry_do_not_use__ cjs */ \nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"ClientPageRoot\", ({\n enumerable: true,\n get: function() {\n return ClientPageRoot;\n }\n}));\nconst _jsxruntime = __webpack_require__(/*! react/jsx-runtime */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react-jsx-runtime.js\");\nconst _searchparams = __webpack_require__(/*! ./search-params */ \"(ssr)/./node_modules/next/dist/client/components/search-params.js\");\nfunction ClientPageRoot(param) {\n let { Component, props } = param;\n // We expect to be passed searchParams but even if we aren't we can construct one from\n // an empty object. We only do this if we are in a static generation as a performance\n // optimization. Ideally we'd unconditionally construct the tracked params but since\n // this creates a proxy which is slow and this would happen even for client navigations\n // that are done entirely dynamically and we know there the dynamic tracking is a noop\n // in this dynamic case we can safely elide it.\n props.searchParams = (0, _searchparams.createDynamicallyTrackedSearchParams)(props.searchParams || {});\n return /*#__PURE__*/ (0, _jsxruntime.jsx)(Component, {\n ...props\n });\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=client-page.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL2NsaWVudC1wYWdlLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBR08sTUFBQUEsZ0JBQVNDLG1CQUFBQSxDQU1mO1NBTjhCQSxlQUU3QkMsS0FJRDtJQUNDLE1BQUFDLFNBQUEsRUFBQUQsS0FBQSxLQUFBRTtJQUNBLHNGQUFxRjtJQUNyRixxRkFBb0Y7SUFDcEY7SUFDQSx1RkFBc0Y7SUFDdEYsc0ZBQStDO0lBQy9DRiwrQ0FBcUJHO0lBR3JCSCxNQUFBSSxZQUFBLEdBQU8sSUFBQU4sY0FBQUssb0NBQUNGLEVBQUFBLE1BQUFBLFlBQUFBLElBQUFBLENBQUFBO1dBQW1CLGtCQUFBSSxZQUFBQyxHQUFBLEVBQUFMLFdBQUE7O0lBQzdCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vYXN0b2NrLWFnZW50LWZyb250ZW5kLy4uLy4uLy4uL3NyYy9jbGllbnQvY29tcG9uZW50cy9jbGllbnQtcGFnZS50c3g/ODRjNSJdLCJuYW1lcyI6WyJfc2VhcmNocGFyYW1zIiwiQ2xpZW50UGFnZVJvb3QiLCJwcm9wcyIsIkNvbXBvbmVudCIsInBhcmFtIiwiY3JlYXRlRHluYW1pY2FsbHlUcmFja2VkU2VhcmNoUGFyYW1zIiwic2VhcmNoUGFyYW1zIiwiX2pzeHJ1bnRpbWUiLCJqc3giXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/client-page.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/next/dist/client/components/error-boundary.js": -/*!********************************************************************!*\ - !*** ./node_modules/next/dist/client/components/error-boundary.js ***! - \********************************************************************/ -/***/ ((module, exports, __webpack_require__) => { - -"use strict"; -eval("/* __next_internal_client_entry_do_not_use__ cjs */ \nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\n0 && (0);\nfunction _export(target, all) {\n for(var name in all)Object.defineProperty(target, name, {\n enumerable: true,\n get: all[name]\n });\n}\n_export(exports, {\n ErrorBoundary: function() {\n return ErrorBoundary;\n },\n ErrorBoundaryHandler: function() {\n return ErrorBoundaryHandler;\n },\n GlobalError: function() {\n return GlobalError;\n },\n // Exported so that the import signature in the loaders can be identical to user\n // supplied custom global error signatures.\n default: function() {\n return _default;\n }\n});\nconst _interop_require_default = __webpack_require__(/*! @swc/helpers/_/_interop_require_default */ \"(ssr)/./node_modules/@swc/helpers/esm/_interop_require_default.js\");\nconst _jsxruntime = __webpack_require__(/*! react/jsx-runtime */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react-jsx-runtime.js\");\nconst _react = /*#__PURE__*/ _interop_require_default._(__webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\"));\nconst _navigation = __webpack_require__(/*! ./navigation */ \"(ssr)/./node_modules/next/dist/client/components/navigation.js\");\nconst _isnextroutererror = __webpack_require__(/*! ./is-next-router-error */ \"(ssr)/./node_modules/next/dist/client/components/is-next-router-error.js\");\nconst _staticgenerationasyncstorageexternal = __webpack_require__(/*! ./static-generation-async-storage.external */ \"../../client/components/static-generation-async-storage.external\");\nconst styles = {\n error: {\n // https://github.com/sindresorhus/modern-normalize/blob/main/modern-normalize.css#L38-L52\n fontFamily: 'system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"',\n height: \"100vh\",\n textAlign: \"center\",\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n justifyContent: \"center\"\n },\n text: {\n fontSize: \"14px\",\n fontWeight: 400,\n lineHeight: \"28px\",\n margin: \"0 8px\"\n }\n};\n// if we are revalidating we want to re-throw the error so the\n// function crashes so we can maintain our previous cache\n// instead of caching the error page\nfunction HandleISRError(param) {\n let { error } = param;\n const store = _staticgenerationasyncstorageexternal.staticGenerationAsyncStorage.getStore();\n if ((store == null ? void 0 : store.isRevalidate) || (store == null ? void 0 : store.isStaticGeneration)) {\n console.error(error);\n throw error;\n }\n return null;\n}\nclass ErrorBoundaryHandler extends _react.default.Component {\n static getDerivedStateFromError(error) {\n if ((0, _isnextroutererror.isNextRouterError)(error)) {\n // Re-throw if an expected internal Next.js router error occurs\n // this means it should be handled by a different boundary (such as a NotFound boundary in a parent segment)\n throw error;\n }\n return {\n error\n };\n }\n static getDerivedStateFromProps(props, state) {\n /**\n * Handles reset of the error boundary when a navigation happens.\n * Ensures the error boundary does not stay enabled when navigating to a new page.\n * Approach of setState in render is safe as it checks the previous pathname and then overrides\n * it as outlined in https://react.dev/reference/react/useState#storing-information-from-previous-renders\n */ if (props.pathname !== state.previousPathname && state.error) {\n return {\n error: null,\n previousPathname: props.pathname\n };\n }\n return {\n error: state.error,\n previousPathname: props.pathname\n };\n }\n // Explicit type is needed to avoid the generated `.d.ts` having a wide return type that could be specific the the `@types/react` version.\n render() {\n if (this.state.error) {\n return /*#__PURE__*/ (0, _jsxruntime.jsxs)(_jsxruntime.Fragment, {\n children: [\n /*#__PURE__*/ (0, _jsxruntime.jsx)(HandleISRError, {\n error: this.state.error\n }),\n this.props.errorStyles,\n this.props.errorScripts,\n /*#__PURE__*/ (0, _jsxruntime.jsx)(this.props.errorComponent, {\n error: this.state.error,\n reset: this.reset\n })\n ]\n });\n }\n return this.props.children;\n }\n constructor(props){\n super(props);\n this.reset = ()=>{\n this.setState({\n error: null\n });\n };\n this.state = {\n error: null,\n previousPathname: this.props.pathname\n };\n }\n}\nfunction GlobalError(param) {\n let { error } = param;\n const digest = error == null ? void 0 : error.digest;\n return /*#__PURE__*/ (0, _jsxruntime.jsxs)(\"html\", {\n id: \"__next_error__\",\n children: [\n /*#__PURE__*/ (0, _jsxruntime.jsx)(\"head\", {}),\n /*#__PURE__*/ (0, _jsxruntime.jsxs)(\"body\", {\n children: [\n /*#__PURE__*/ (0, _jsxruntime.jsx)(HandleISRError, {\n error: error\n }),\n /*#__PURE__*/ (0, _jsxruntime.jsx)(\"div\", {\n style: styles.error,\n children: /*#__PURE__*/ (0, _jsxruntime.jsxs)(\"div\", {\n children: [\n /*#__PURE__*/ (0, _jsxruntime.jsx)(\"h2\", {\n style: styles.text,\n children: \"Application error: a \" + (digest ? \"server\" : \"client\") + \"-side exception has occurred (see the \" + (digest ? \"server logs\" : \"browser console\") + \" for more information).\"\n }),\n digest ? /*#__PURE__*/ (0, _jsxruntime.jsx)(\"p\", {\n style: styles.text,\n children: \"Digest: \" + digest\n }) : null\n ]\n })\n })\n ]\n })\n ]\n });\n}\nconst _default = GlobalError;\nfunction ErrorBoundary(param) {\n let { errorComponent, errorStyles, errorScripts, children } = param;\n const pathname = (0, _navigation.usePathname)();\n if (errorComponent) {\n return /*#__PURE__*/ (0, _jsxruntime.jsx)(ErrorBoundaryHandler, {\n pathname: pathname,\n errorComponent: errorComponent,\n errorStyles: errorStyles,\n errorScripts: errorScripts,\n children: children\n });\n }\n return /*#__PURE__*/ (0, _jsxruntime.jsx)(_jsxruntime.Fragment, {\n children: children\n });\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=error-boundary.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL2Vycm9yLWJvdW5kYXJ5LmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O1FBb0tnQkEsU0FBYTttQkFBYkE7O0lBdEdIQzswQkFBQUE7O0lBaUVHQztpQkFBQUE7O0lBd0JoQjtJQUNBLGdGQUEyQztJQUMzQywyQ0FBMEI7Ozs7Ozs7NkJBdEpFQyx5QkFBQUMsQ0FBQSxDQUFBQyxtQkFBQUEsQ0FBQTs7O0FBSTVCLE1BQU1DLHdDQUFTRCxtQkFBQUEsQ0FBQTtNQUNiRSxTQUFPO1dBQ0w7UUFDQUMsMEZBQ0U7UUFDRkMsWUFBUTtRQUNSQyxRQUFBQTtRQUNBQyxXQUFTO1FBQ1RDLFNBQUFBO1FBQ0FDLGVBQVk7UUFDWkMsWUFBQUE7UUFDRkEsZ0JBQUE7SUFDQUM7VUFDRUM7UUFDQUMsVUFBQUE7UUFDQUMsWUFBWTtRQUNaQyxZQUFRO1FBQ1ZBLFFBQUE7SUFDRjtBQXdCQTtBQUNBLDhEQUF5RDtBQUN6RCx5REFBb0M7QUFDcEMsb0NBQWlEO1NBQXpCQyxlQUFBQyxLQUFBO0lBQ3RCLE1BQU1DLEtBQUFBLEVBQUFBLEdBQVFDO0lBQ2QsTUFBSUQsUUFBQUEsc0NBQW1CQyw0QkFBSUQsQ0FBQUEsUUFBT0U7UUFDaENDLENBQUFBLFNBQVFsQixPQUFNQSxLQUFBQSxJQUFBQSxNQUFBQSxZQUFBQSxLQUFBQSxDQUFBQSxTQUFBQSxPQUFBQSxLQUFBQSxJQUFBQSxNQUFBQSxrQkFBQUEsR0FBQUE7UUFDZGtCLFFBQU1sQixLQUFBQSxDQUFBQTtRQUNSLE1BQUFBO0lBRUE7SUFDRjtBQUVPO01BU0xOLDZCQUFPeUIsT0FBcUNDLE9BQUUsQ0FBQUMsU0FBQTtXQUM1Q0YseUJBQUlHLEtBQUFBLEVBQUFBO1lBQ0YsSUFBQUMsbUJBQUFELGlCQUFBLEVBQUF0QixRQUFBO1lBQ0E7WUFDQSw0R0FBTUE7WUFDUixNQUFBQTtRQUVBO2VBQVNBO1lBQU1BO1FBQ2pCO0lBRUE7V0FJRXdCLHlCQUFBQyxLQUFBLEVBQUFDLEtBQUE7Ozs7OztZQU9FRCxNQUFBRSxRQUFPLEtBQUFELE1BQUFFLGdCQUFBLElBQUFGLE1BQUExQixLQUFBO21CQUNMQTtnQkFDQTRCLE9BQUFBO2dCQUNGQSxrQkFBQUgsTUFBQUUsUUFBQTtZQUNGO1FBQ0E7ZUFDRTNCO1lBQ0E0QixPQUFBQSxNQUFBQSxLQUFrQkg7WUFDcEJHLGtCQUFBSCxNQUFBRSxRQUFBO1FBQ0Y7SUFNQTtJQUNBRSwwSUFBMEI7YUFDcEI7WUFDRixLQUFBSCxLQUFBLENBQUExQixLQUFBOzs7K0JBRTJCLEdBQUksSUFBQzBCLFlBQVdJLEdBQUEsRUFBQWpCLGdCQUFBOztvQkFDdEM7b0JBQ0EsSUFBSSxDQUFDWSxLQUFLLENBQUNNLFdBQUFBOzJDQUNaOytCQUNTLEdBQUksSUFBQ0wsWUFBV0ksR0FBQSxPQUFBTCxLQUFBLENBQUFPLGNBQUE7d0JBQ3ZCQyxPQUFPLElBQUksQ0FBQ0EsS0FBSyxDQUFBakMsS0FBQTs7OztZQUl6QjtRQUVBO1FBQ0YsWUFBQXlCLEtBQUEsQ0FBQVMsUUFBQTtJQTFEQUM7Z0JBQ1FWLEtBQUFBLENBQUFBO2FBb0NSUSxDQUFBQTtZQUNFLENBQUFBLEtBQUtHLEdBQUFBO2dCQUFXcEMsQ0FBQUEsUUFBTztnQkFBS0EsT0FBQTtZQUM5QjtRQXJDRTtZQUFlQSxDQUFBQSxLQUFBQSxHQUFPO1lBQU00QixPQUFBQTtZQUFzQ0Esa0JBQUEsS0FBQUgsS0FBQSxDQUFBRSxRQUFBO1FBQ3BFO0lBd0RGO0FBRU87U0FBcUJoQyxZQUFBbUIsS0FBQTtJQUMxQixNQUFNdUIsS0FBQUEsRUFBQUEsR0FBNkJyQztJQUNuQyxNQUFBcUMsU0FBQXJDLFNBQ0UsZ0JBQUFBLE1BQUNzQyxNQUFBQTtXQUFRLGtCQUFBRSxZQUFBQyxJQUFBOzs7MEJBRVAsSUFBQUQsWUFBQVYsR0FBQSxVQUFDWSxDQUFBQTs7OytCQUN3QjFDLEdBQUFBLENBQUFBLEdBQUFBLFlBQUFBLEdBQUFBLEVBQUFBLGdCQUFBQTs7OytCQUNYRCxHQUFBQSxDQUFBQSxHQUFPQyxZQUFLOEIsR0FBQTtzQ0FDdEI5QixLQUFBOzs7MkNBQ2FELEdBQUFBLENBQUFBLEdBQU9TLFlBQUlzQixHQUFBO2tEQUNsQnRCLElBQUE7O2dDQU1INkI7eUNBQThCLFdBQUo3QixHQUFJLElBQUFnQyxZQUFBVixHQUFBO2tEQUFJdEIsSUFBQTs4Q0FBMEIsYUFBQTZCOzs7Ozs7OztJQU16RTs7QUFlTyxNQUFBTyxXQUFTbkQ7U0FBY0EsY0FDNUJ1QyxLQUNBYTtJQUlBLE1BQU1sQixjQUFXbUIsRUFBQUEsV0FBQUEsRUFBQUEsWUFBVyxFQUFBWixRQUFBLEtBQUFwQjtJQUM1QixNQUFJa0IsV0FBQUEsQ0FBQUEsR0FBZ0JlLFlBQUFELFdBQUE7UUFDbEJkLGdCQUFBO2VBRWNMLFdBQUFBLEdBQUFBLENBQUFBLEdBQUFBLFlBQUFBLEdBQUFBLEVBQUFBLHNCQUFBQTtZQUNWSyxVQUFBQTtZQUNBYSxnQkFBYUE7WUFDYmQsYUFBQUE7MEJBRUNHOztRQUdQO0lBRUE7V0FBVUEsV0FBQUEsR0FBQUEsQ0FBQUEsR0FBQUEsWUFBQUEsR0FBQUEsRUFBQUEsWUFBQUEsUUFBQUEsRUFBQUE7O0lBQ1oiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9hc3RvY2stYWdlbnQtZnJvbnRlbmQvLi4vLi4vLi4vc3JjL2NsaWVudC9jb21wb25lbnRzL2Vycm9yLWJvdW5kYXJ5LnRzeD82NjU5Il0sIm5hbWVzIjpbIkVycm9yQm91bmRhcnkiLCJFcnJvckJvdW5kYXJ5SGFuZGxlciIsIkdsb2JhbEVycm9yIiwiX2ludGVyb3BfcmVxdWlyZV9kZWZhdWx0IiwiXyIsInJlcXVpcmUiLCJzdHlsZXMiLCJlcnJvciIsImZvbnRGYW1pbHkiLCJoZWlnaHQiLCJ0ZXh0QWxpZ24iLCJkaXNwbGF5IiwiZmxleERpcmVjdGlvbiIsImFsaWduSXRlbXMiLCJqdXN0aWZ5Q29udGVudCIsInRleHQiLCJmb250U2l6ZSIsImZvbnRXZWlnaHQiLCJsaW5lSGVpZ2h0IiwibWFyZ2luIiwiSGFuZGxlSVNSRXJyb3IiLCJwYXJhbSIsInN0b3JlIiwic3RhdGljR2VuZXJhdGlvbkFzeW5jU3RvcmFnZSIsImlzU3RhdGljR2VuZXJhdGlvbiIsImNvbnNvbGUiLCJnZXREZXJpdmVkU3RhdGVGcm9tRXJyb3IiLCJkZWZhdWx0IiwiQ29tcG9uZW50IiwiaXNOZXh0Um91dGVyRXJyb3IiLCJfaXNuZXh0cm91dGVyZXJyb3IiLCJnZXREZXJpdmVkU3RhdGVGcm9tUHJvcHMiLCJwcm9wcyIsInN0YXRlIiwicGF0aG5hbWUiLCJwcmV2aW91c1BhdGhuYW1lIiwicmVuZGVyIiwianN4IiwiZXJyb3JTY3JpcHRzIiwiZXJyb3JDb21wb25lbnQiLCJyZXNldCIsImNoaWxkcmVuIiwiY29uc3RydWN0b3IiLCJzZXRTdGF0ZSIsImRpZ2VzdCIsImh0bWwiLCJpZCIsIl9qc3hydW50aW1lIiwianN4cyIsImJvZHkiLCJzdHlsZSIsIl9kZWZhdWx0IiwiZXJyb3JTdHlsZXMiLCJ1c2VQYXRobmFtZSIsIl9uYXZpZ2F0aW9uIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/error-boundary.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/next/dist/client/components/hooks-server-context.js": -/*!**************************************************************************!*\ - !*** ./node_modules/next/dist/client/components/hooks-server-context.js ***! - \**************************************************************************/ -/***/ ((module, exports) => { - -"use strict"; -eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\n0 && (0);\nfunction _export(target, all) {\n for(var name in all)Object.defineProperty(target, name, {\n enumerable: true,\n get: all[name]\n });\n}\n_export(exports, {\n DynamicServerError: function() {\n return DynamicServerError;\n },\n isDynamicServerError: function() {\n return isDynamicServerError;\n }\n});\nconst DYNAMIC_ERROR_CODE = \"DYNAMIC_SERVER_USAGE\";\nclass DynamicServerError extends Error {\n constructor(description){\n super(\"Dynamic server usage: \" + description);\n this.description = description;\n this.digest = DYNAMIC_ERROR_CODE;\n }\n}\nfunction isDynamicServerError(err) {\n if (typeof err !== \"object\" || err === null || !(\"digest\" in err) || typeof err.digest !== \"string\") {\n return false;\n }\n return err.digest === DYNAMIC_ERROR_CODE;\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=hooks-server-context.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL2hvb2tzLXNlcnZlci1jb250ZXh0LmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztJQUVhQSxvQkFBa0I7ZUFBbEJBOztJQVFHQyxzQkFBb0I7ZUFBcEJBOzs7QUFWaEIsTUFBTUMscUJBQXFCO0FBRXBCLE1BQU1GLDJCQUEyQkc7SUFHdENDLFlBQVlDLFdBQW1DLENBQUU7UUFDL0MsS0FBSyxDQUFDLDJCQUF5QkE7YUFETEEsV0FBQUEsR0FBQUE7YUFGNUJDLE1BQUFBLEdBQW9DSjtJQUlwQztBQUNGO0FBRU8sU0FBU0QscUJBQXFCTSxHQUFZO0lBQy9DLElBQ0UsT0FBT0EsUUFBUSxZQUNmQSxRQUFRLFFBQ1IsQ0FBRSxhQUFZQSxHQUFBQSxLQUNkLE9BQU9BLElBQUlELE1BQU0sS0FBSyxVQUN0QjtRQUNBLE9BQU87SUFDVDtJQUVBLE9BQU9DLElBQUlELE1BQU0sS0FBS0o7QUFDeEIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9hc3RvY2stYWdlbnQtZnJvbnRlbmQvLi4vLi4vLi4vc3JjL2NsaWVudC9jb21wb25lbnRzL2hvb2tzLXNlcnZlci1jb250ZXh0LnRzPzgyMzgiXSwibmFtZXMiOlsiRHluYW1pY1NlcnZlckVycm9yIiwiaXNEeW5hbWljU2VydmVyRXJyb3IiLCJEWU5BTUlDX0VSUk9SX0NPREUiLCJFcnJvciIsImNvbnN0cnVjdG9yIiwiZGVzY3JpcHRpb24iLCJkaWdlc3QiLCJlcnIiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/hooks-server-context.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/next/dist/client/components/is-hydration-error.js": -/*!************************************************************************!*\ - !*** ./node_modules/next/dist/client/components/is-hydration-error.js ***! - \************************************************************************/ -/***/ ((module, exports, __webpack_require__) => { - -"use strict"; -eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"isHydrationError\", ({\n enumerable: true,\n get: function() {\n return isHydrationError;\n }\n}));\nconst _interop_require_default = __webpack_require__(/*! @swc/helpers/_/_interop_require_default */ \"(ssr)/./node_modules/@swc/helpers/esm/_interop_require_default.js\");\nconst _iserror = /*#__PURE__*/ _interop_require_default._(__webpack_require__(/*! ../../lib/is-error */ \"(ssr)/./node_modules/next/dist/lib/is-error.js\"));\nconst hydrationErrorRegex = /hydration failed|while hydrating|content does not match|did not match/i;\nfunction isHydrationError(error) {\n return (0, _iserror.default)(error) && hydrationErrorRegex.test(error.message);\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=is-hydration-error.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL2lzLWh5ZHJhdGlvbi1lcnJvci5qcyIsIm1hcHBpbmdzIjoiOzs7O29EQUtnQkE7OztlQUFBQTs7Ozs4RUFMSTtBQUVwQixNQUFNQyxzQkFDSjtBQUVLLFNBQVNELGlCQUFpQkUsS0FBYztJQUM3QyxPQUFPQyxDQUFBQSxHQUFBQSxTQUFBQSxPQUFPLEVBQUNELFVBQVVELG9CQUFvQkcsSUFBSSxDQUFDRixNQUFNRyxPQUFPO0FBQ2pFIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vYXN0b2NrLWFnZW50LWZyb250ZW5kLy4uLy4uLy4uL3NyYy9jbGllbnQvY29tcG9uZW50cy9pcy1oeWRyYXRpb24tZXJyb3IudHM/NmZiYSJdLCJuYW1lcyI6WyJpc0h5ZHJhdGlvbkVycm9yIiwiaHlkcmF0aW9uRXJyb3JSZWdleCIsImVycm9yIiwiaXNFcnJvciIsInRlc3QiLCJtZXNzYWdlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/is-hydration-error.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/next/dist/client/components/is-next-router-error.js": -/*!**************************************************************************!*\ - !*** ./node_modules/next/dist/client/components/is-next-router-error.js ***! - \**************************************************************************/ -/***/ ((module, exports, __webpack_require__) => { - -"use strict"; -eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"isNextRouterError\", ({\n enumerable: true,\n get: function() {\n return isNextRouterError;\n }\n}));\nconst _notfound = __webpack_require__(/*! ./not-found */ \"(ssr)/./node_modules/next/dist/client/components/not-found.js\");\nconst _redirect = __webpack_require__(/*! ./redirect */ \"(ssr)/./node_modules/next/dist/client/components/redirect.js\");\nfunction isNextRouterError(error) {\n return error && error.digest && ((0, _redirect.isRedirectError)(error) || (0, _notfound.isNotFoundError)(error));\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=is-next-router-error.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL2lzLW5leHQtcm91dGVyLWVycm9yLmpzIiwibWFwcGluZ3MiOiI7Ozs7cURBR2dCQTs7O2VBQUFBOzs7c0NBSGdCO3NDQUNBO0FBRXpCLFNBQVNBLGtCQUFrQkMsS0FBVTtJQUMxQyxPQUNFQSxTQUFTQSxNQUFNQyxNQUFNLElBQUtDLENBQUFBLENBQUFBLEdBQUFBLFVBQUFBLGVBQWUsRUFBQ0YsVUFBVUcsQ0FBQUEsR0FBQUEsVUFBQUEsZUFBZSxFQUFDSCxNQUFBQTtBQUV4RSIsInNvdXJjZXMiOlsid2VicGFjazovL2FzdG9jay1hZ2VudC1mcm9udGVuZC8uLi8uLi8uLi9zcmMvY2xpZW50L2NvbXBvbmVudHMvaXMtbmV4dC1yb3V0ZXItZXJyb3IudHM/ZTUwNSJdLCJuYW1lcyI6WyJpc05leHRSb3V0ZXJFcnJvciIsImVycm9yIiwiZGlnZXN0IiwiaXNSZWRpcmVjdEVycm9yIiwiaXNOb3RGb3VuZEVycm9yIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/is-next-router-error.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/next/dist/client/components/layout-router.js": -/*!*******************************************************************!*\ - !*** ./node_modules/next/dist/client/components/layout-router.js ***! - \*******************************************************************/ -/***/ ((module, exports, __webpack_require__) => { - -"use strict"; -eval("/* __next_internal_client_entry_do_not_use__ cjs */ \nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"default\", ({\n enumerable: true,\n get: function() {\n return OuterLayoutRouter;\n }\n}));\nconst _interop_require_default = __webpack_require__(/*! @swc/helpers/_/_interop_require_default */ \"(ssr)/./node_modules/@swc/helpers/esm/_interop_require_default.js\");\nconst _interop_require_wildcard = __webpack_require__(/*! @swc/helpers/_/_interop_require_wildcard */ \"(ssr)/./node_modules/@swc/helpers/esm/_interop_require_wildcard.js\");\nconst _jsxruntime = __webpack_require__(/*! react/jsx-runtime */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react-jsx-runtime.js\");\nconst _react = /*#__PURE__*/ _interop_require_wildcard._(__webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\"));\nconst _reactdom = /*#__PURE__*/ _interop_require_default._(__webpack_require__(/*! react-dom */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react-dom.js\"));\nconst _approutercontextsharedruntime = __webpack_require__(/*! ../../shared/lib/app-router-context.shared-runtime */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/app-router-context.js\");\nconst _fetchserverresponse = __webpack_require__(/*! ./router-reducer/fetch-server-response */ \"(ssr)/./node_modules/next/dist/client/components/router-reducer/fetch-server-response.js\");\nconst _unresolvedthenable = __webpack_require__(/*! ./unresolved-thenable */ \"(ssr)/./node_modules/next/dist/client/components/unresolved-thenable.js\");\nconst _errorboundary = __webpack_require__(/*! ./error-boundary */ \"(ssr)/./node_modules/next/dist/client/components/error-boundary.js\");\nconst _matchsegments = __webpack_require__(/*! ./match-segments */ \"(ssr)/./node_modules/next/dist/client/components/match-segments.js\");\nconst _handlesmoothscroll = __webpack_require__(/*! ../../shared/lib/router/utils/handle-smooth-scroll */ \"(ssr)/./node_modules/next/dist/shared/lib/router/utils/handle-smooth-scroll.js\");\nconst _redirectboundary = __webpack_require__(/*! ./redirect-boundary */ \"(ssr)/./node_modules/next/dist/client/components/redirect-boundary.js\");\nconst _notfoundboundary = __webpack_require__(/*! ./not-found-boundary */ \"(ssr)/./node_modules/next/dist/client/components/not-found-boundary.js\");\nconst _getsegmentvalue = __webpack_require__(/*! ./router-reducer/reducers/get-segment-value */ \"(ssr)/./node_modules/next/dist/client/components/router-reducer/reducers/get-segment-value.js\");\nconst _createroutercachekey = __webpack_require__(/*! ./router-reducer/create-router-cache-key */ \"(ssr)/./node_modules/next/dist/client/components/router-reducer/create-router-cache-key.js\");\nconst _hasinterceptionrouteincurrenttree = __webpack_require__(/*! ./router-reducer/reducers/has-interception-route-in-current-tree */ \"(ssr)/./node_modules/next/dist/client/components/router-reducer/reducers/has-interception-route-in-current-tree.js\");\n/**\n * Add refetch marker to router state at the point of the current layout segment.\n * This ensures the response returned is not further down than the current layout segment.\n */ function walkAddRefetch(segmentPathToWalk, treeToRecreate) {\n if (segmentPathToWalk) {\n const [segment, parallelRouteKey] = segmentPathToWalk;\n const isLast = segmentPathToWalk.length === 2;\n if ((0, _matchsegments.matchSegment)(treeToRecreate[0], segment)) {\n if (treeToRecreate[1].hasOwnProperty(parallelRouteKey)) {\n if (isLast) {\n const subTree = walkAddRefetch(undefined, treeToRecreate[1][parallelRouteKey]);\n return [\n treeToRecreate[0],\n {\n ...treeToRecreate[1],\n [parallelRouteKey]: [\n subTree[0],\n subTree[1],\n subTree[2],\n \"refetch\"\n ]\n }\n ];\n }\n return [\n treeToRecreate[0],\n {\n ...treeToRecreate[1],\n [parallelRouteKey]: walkAddRefetch(segmentPathToWalk.slice(2), treeToRecreate[1][parallelRouteKey])\n }\n ];\n }\n }\n }\n return treeToRecreate;\n}\n// TODO-APP: Replace with new React API for finding dom nodes without a `ref` when available\n/**\n * Wraps ReactDOM.findDOMNode with additional logic to hide React Strict Mode warning\n */ function findDOMNode(instance) {\n // Tree-shake for server bundle\n if (true) return null;\n // Only apply strict mode warning when not in production\n if (true) {\n const originalConsoleError = console.error;\n try {\n console.error = function() {\n for(var _len = arguments.length, messages = new Array(_len), _key = 0; _key < _len; _key++){\n messages[_key] = arguments[_key];\n }\n // Ignore strict mode warning for the findDomNode call below\n if (!messages[0].includes(\"Warning: %s is deprecated in StrictMode.\")) {\n originalConsoleError(...messages);\n }\n };\n return _reactdom.default.findDOMNode(instance);\n } finally{\n console.error = originalConsoleError;\n }\n }\n return _reactdom.default.findDOMNode(instance);\n}\nconst rectProperties = [\n \"bottom\",\n \"height\",\n \"left\",\n \"right\",\n \"top\",\n \"width\",\n \"x\",\n \"y\"\n];\n/**\n * Check if a HTMLElement is hidden or fixed/sticky position\n */ function shouldSkipElement(element) {\n // we ignore fixed or sticky positioned elements since they'll likely pass the \"in-viewport\" check\n // and will result in a situation we bail on scroll because of something like a fixed nav,\n // even though the actual page content is offscreen\n if ([\n \"sticky\",\n \"fixed\"\n ].includes(getComputedStyle(element).position)) {\n if (true) {\n console.warn(\"Skipping auto-scroll behavior due to `position: sticky` or `position: fixed` on element:\", element);\n }\n return true;\n }\n // Uses `getBoundingClientRect` to check if the element is hidden instead of `offsetParent`\n // because `offsetParent` doesn't consider document/body\n const rect = element.getBoundingClientRect();\n return rectProperties.every((item)=>rect[item] === 0);\n}\n/**\n * Check if the top corner of the HTMLElement is in the viewport.\n */ function topOfElementInViewport(element, viewportHeight) {\n const rect = element.getBoundingClientRect();\n return rect.top >= 0 && rect.top <= viewportHeight;\n}\n/**\n * Find the DOM node for a hash fragment.\n * If `top` the page has to scroll to the top of the page. This mirrors the browser's behavior.\n * If the hash fragment is an id, the page has to scroll to the element with that id.\n * If the hash fragment is a name, the page has to scroll to the first element with that name.\n */ function getHashFragmentDomNode(hashFragment) {\n // If the hash fragment is `top` the page has to scroll to the top of the page.\n if (hashFragment === \"top\") {\n return document.body;\n }\n var _document_getElementById;\n // If the hash fragment is an id, the page has to scroll to the element with that id.\n return (_document_getElementById = document.getElementById(hashFragment)) != null ? _document_getElementById : document.getElementsByName(hashFragment)[0];\n}\nclass InnerScrollAndFocusHandler extends _react.default.Component {\n componentDidMount() {\n this.handlePotentialScroll();\n }\n componentDidUpdate() {\n // Because this property is overwritten in handlePotentialScroll it's fine to always run it when true as it'll be set to false for subsequent renders.\n if (this.props.focusAndScrollRef.apply) {\n this.handlePotentialScroll();\n }\n }\n render() {\n return this.props.children;\n }\n constructor(...args){\n super(...args);\n this.handlePotentialScroll = ()=>{\n // Handle scroll and focus, it's only applied once in the first useEffect that triggers that changed.\n const { focusAndScrollRef, segmentPath } = this.props;\n if (focusAndScrollRef.apply) {\n // segmentPaths is an array of segment paths that should be scrolled to\n // if the current segment path is not in the array, the scroll is not applied\n // unless the array is empty, in which case the scroll is always applied\n if (focusAndScrollRef.segmentPaths.length !== 0 && !focusAndScrollRef.segmentPaths.some((scrollRefSegmentPath)=>segmentPath.every((segment, index)=>(0, _matchsegments.matchSegment)(segment, scrollRefSegmentPath[index])))) {\n return;\n }\n let domNode = null;\n const hashFragment = focusAndScrollRef.hashFragment;\n if (hashFragment) {\n domNode = getHashFragmentDomNode(hashFragment);\n }\n // `findDOMNode` is tricky because it returns just the first child if the component is a fragment.\n // This already caused a bug where the first child was a in head.\n if (!domNode) {\n domNode = findDOMNode(this);\n }\n // If there is no DOM node this layout-router level is skipped. It'll be handled higher-up in the tree.\n if (!(domNode instanceof Element)) {\n return;\n }\n // Verify if the element is a HTMLElement and if we want to consider it for scroll behavior.\n // If the element is skipped, try to select the next sibling and try again.\n while(!(domNode instanceof HTMLElement) || shouldSkipElement(domNode)){\n // No siblings found that match the criteria are found, so handle scroll higher up in the tree instead.\n if (domNode.nextElementSibling === null) {\n return;\n }\n domNode = domNode.nextElementSibling;\n }\n // State is mutated to ensure that the focus and scroll is applied only once.\n focusAndScrollRef.apply = false;\n focusAndScrollRef.hashFragment = null;\n focusAndScrollRef.segmentPaths = [];\n (0, _handlesmoothscroll.handleSmoothScroll)(()=>{\n // In case of hash scroll, we only need to scroll the element into view\n if (hashFragment) {\n domNode.scrollIntoView();\n return;\n }\n // Store the current viewport height because reading `clientHeight` causes a reflow,\n // and it won't change during this function.\n const htmlElement = document.documentElement;\n const viewportHeight = htmlElement.clientHeight;\n // If the element's top edge is already in the viewport, exit early.\n if (topOfElementInViewport(domNode, viewportHeight)) {\n return;\n }\n // Otherwise, try scrolling go the top of the document to be backward compatible with pages\n // scrollIntoView() called on `` element scrolls horizontally on chrome and firefox (that shouldn't happen)\n // We could use it to scroll horizontally following RTL but that also seems to be broken - it will always scroll left\n // scrollLeft = 0 also seems to ignore RTL and manually checking for RTL is too much hassle so we will scroll just vertically\n htmlElement.scrollTop = 0;\n // Scroll to domNode if domNode is not in viewport when scrolled to top of document\n if (!topOfElementInViewport(domNode, viewportHeight)) {\n domNode.scrollIntoView();\n }\n }, {\n // We will force layout by querying domNode position\n dontForceLayout: true,\n onlyHashChange: focusAndScrollRef.onlyHashChange\n });\n // Mutate after scrolling so that it can be read by `handleSmoothScroll`\n focusAndScrollRef.onlyHashChange = false;\n // Set focus on the element\n domNode.focus();\n }\n };\n }\n}\nfunction ScrollAndFocusHandler(param) {\n let { segmentPath, children } = param;\n const context = (0, _react.useContext)(_approutercontextsharedruntime.GlobalLayoutRouterContext);\n if (!context) {\n throw new Error(\"invariant global layout router not mounted\");\n }\n return /*#__PURE__*/ (0, _jsxruntime.jsx)(InnerScrollAndFocusHandler, {\n segmentPath: segmentPath,\n focusAndScrollRef: context.focusAndScrollRef,\n children: children\n });\n}\n/**\n * InnerLayoutRouter handles rendering the provided segment based on the cache.\n */ function InnerLayoutRouter(param) {\n let { parallelRouterKey, url, childNodes, segmentPath, tree, // isActive,\n cacheKey } = param;\n const context = (0, _react.useContext)(_approutercontextsharedruntime.GlobalLayoutRouterContext);\n if (!context) {\n throw new Error(\"invariant global layout router not mounted\");\n }\n const { buildId, changeByServerResponse, tree: fullTree } = context;\n // Read segment path from the parallel router cache node.\n let childNode = childNodes.get(cacheKey);\n // When data is not available during rendering client-side we need to fetch\n // it from the server.\n if (childNode === undefined) {\n const newLazyCacheNode = {\n lazyData: null,\n rsc: null,\n prefetchRsc: null,\n head: null,\n prefetchHead: null,\n parallelRoutes: new Map(),\n lazyDataResolved: false,\n loading: null\n };\n /**\n * Flight data fetch kicked off during render and put into the cache.\n */ childNode = newLazyCacheNode;\n childNodes.set(cacheKey, newLazyCacheNode);\n }\n // `rsc` represents the renderable node for this segment.\n // If this segment has a `prefetchRsc`, it's the statically prefetched data.\n // We should use that on initial render instead of `rsc`. Then we'll switch\n // to `rsc` when the dynamic response streams in.\n //\n // If no prefetch data is available, then we go straight to rendering `rsc`.\n const resolvedPrefetchRsc = childNode.prefetchRsc !== null ? childNode.prefetchRsc : childNode.rsc;\n // We use `useDeferredValue` to handle switching between the prefetched and\n // final values. The second argument is returned on initial render, then it\n // re-renders with the first argument.\n //\n // @ts-expect-error The second argument to `useDeferredValue` is only\n // available in the experimental builds. When its disabled, it will always\n // return `rsc`.\n const rsc = (0, _react.useDeferredValue)(childNode.rsc, resolvedPrefetchRsc);\n // `rsc` is either a React node or a promise for a React node, except we\n // special case `null` to represent that this segment's data is missing. If\n // it's a promise, we need to unwrap it so we can determine whether or not the\n // data is missing.\n const resolvedRsc = typeof rsc === \"object\" && rsc !== null && typeof rsc.then === \"function\" ? (0, _react.use)(rsc) : rsc;\n if (!resolvedRsc) {\n // The data for this segment is not available, and there's no pending\n // navigation that will be able to fulfill it. We need to fetch more from\n // the server and patch the cache.\n // Check if there's already a pending request.\n let lazyData = childNode.lazyData;\n if (lazyData === null) {\n /**\n * Router state with refetch marker added\n */ // TODO-APP: remove ''\n const refetchTree = walkAddRefetch([\n \"\",\n ...segmentPath\n ], fullTree);\n const includeNextUrl = (0, _hasinterceptionrouteincurrenttree.hasInterceptionRouteInCurrentTree)(fullTree);\n childNode.lazyData = lazyData = (0, _fetchserverresponse.fetchServerResponse)(new URL(url, location.origin), refetchTree, includeNextUrl ? context.nextUrl : null, buildId);\n childNode.lazyDataResolved = false;\n }\n /**\n * Flight response data\n */ // When the data has not resolved yet `use` will suspend here.\n const serverResponse = (0, _react.use)(lazyData);\n if (!childNode.lazyDataResolved) {\n // setTimeout is used to start a new transition during render, this is an intentional hack around React.\n setTimeout(()=>{\n (0, _react.startTransition)(()=>{\n changeByServerResponse({\n previousTree: fullTree,\n serverResponse\n });\n });\n });\n // It's important that we mark this as resolved, in case this branch is replayed, we don't want to continously re-apply\n // the patch to the tree.\n childNode.lazyDataResolved = true;\n }\n // Suspend infinitely as `changeByServerResponse` will cause a different part of the tree to be rendered.\n // A falsey `resolvedRsc` indicates missing data -- we should not commit that branch, and we need to wait for the data to arrive.\n (0, _react.use)(_unresolvedthenable.unresolvedThenable);\n }\n // If we get to this point, then we know we have something we can render.\n const subtree = /*#__PURE__*/ (0, _jsxruntime.jsx)(_approutercontextsharedruntime.LayoutRouterContext.Provider, {\n value: {\n tree: tree[1][parallelRouterKey],\n childNodes: childNode.parallelRoutes,\n // TODO-APP: overriding of url for parallel routes\n url: url,\n loading: childNode.loading\n },\n children: resolvedRsc\n });\n // Ensure root layout is not wrapped in a div as the root layout renders ``\n return subtree;\n}\n/**\n * Renders suspense boundary with the provided \"loading\" property as the fallback.\n * If no loading property is provided it renders the children without a suspense boundary.\n */ function LoadingBoundary(param) {\n let { children, hasLoading, loading, loadingStyles, loadingScripts } = param;\n // We have an explicit prop for checking if `loading` is provided, to disambiguate between a loading\n // component that returns `null` / `undefined`, vs not having a loading component at all.\n if (hasLoading) {\n return /*#__PURE__*/ (0, _jsxruntime.jsx)(_react.Suspense, {\n fallback: /*#__PURE__*/ (0, _jsxruntime.jsxs)(_jsxruntime.Fragment, {\n children: [\n loadingStyles,\n loadingScripts,\n loading\n ]\n }),\n children: children\n });\n }\n return /*#__PURE__*/ (0, _jsxruntime.jsx)(_jsxruntime.Fragment, {\n children: children\n });\n}\nfunction OuterLayoutRouter(param) {\n let { parallelRouterKey, segmentPath, error, errorStyles, errorScripts, templateStyles, templateScripts, template, notFound, notFoundStyles } = param;\n const context = (0, _react.useContext)(_approutercontextsharedruntime.LayoutRouterContext);\n if (!context) {\n throw new Error(\"invariant expected layout router to be mounted\");\n }\n const { childNodes, tree, url, loading } = context;\n // Get the current parallelRouter cache node\n let childNodesForParallelRouter = childNodes.get(parallelRouterKey);\n // If the parallel router cache node does not exist yet, create it.\n // This writes to the cache when there is no item in the cache yet. It never *overwrites* existing cache items which is why it's safe in concurrent mode.\n if (!childNodesForParallelRouter) {\n childNodesForParallelRouter = new Map();\n childNodes.set(parallelRouterKey, childNodesForParallelRouter);\n }\n // Get the active segment in the tree\n // The reason arrays are used in the data format is that these are transferred from the server to the browser so it's optimized to save bytes.\n const treeSegment = tree[1][parallelRouterKey][0];\n // If segment is an array it's a dynamic route and we want to read the dynamic route value as the segment to get from the cache.\n const currentChildSegmentValue = (0, _getsegmentvalue.getSegmentValue)(treeSegment);\n /**\n * Decides which segments to keep rendering, all segments that are not active will be wrapped in ``.\n */ // TODO-APP: Add handling of `` when it's available.\n const preservedSegments = [\n treeSegment\n ];\n return /*#__PURE__*/ (0, _jsxruntime.jsx)(_jsxruntime.Fragment, {\n children: preservedSegments.map((preservedSegment)=>{\n const preservedSegmentValue = (0, _getsegmentvalue.getSegmentValue)(preservedSegment);\n const cacheKey = (0, _createroutercachekey.createRouterCacheKey)(preservedSegment);\n return(/*\n - Error boundary\n - Only renders error boundary if error component is provided.\n - Rendered for each segment to ensure they have their own error state.\n - Loading boundary\n - Only renders suspense boundary if loading components is provided.\n - Rendered for each segment to ensure they have their own loading state.\n - Passed to the router during rendering to ensure it can be immediately rendered when suspending on a Flight fetch.\n */ /*#__PURE__*/ (0, _jsxruntime.jsxs)(_approutercontextsharedruntime.TemplateContext.Provider, {\n value: /*#__PURE__*/ (0, _jsxruntime.jsx)(ScrollAndFocusHandler, {\n segmentPath: segmentPath,\n children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_errorboundary.ErrorBoundary, {\n errorComponent: error,\n errorStyles: errorStyles,\n errorScripts: errorScripts,\n children: /*#__PURE__*/ (0, _jsxruntime.jsx)(LoadingBoundary, {\n hasLoading: Boolean(loading),\n loading: loading == null ? void 0 : loading[0],\n loadingStyles: loading == null ? void 0 : loading[1],\n loadingScripts: loading == null ? void 0 : loading[2],\n children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_notfoundboundary.NotFoundBoundary, {\n notFound: notFound,\n notFoundStyles: notFoundStyles,\n children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_redirectboundary.RedirectBoundary, {\n children: /*#__PURE__*/ (0, _jsxruntime.jsx)(InnerLayoutRouter, {\n parallelRouterKey: parallelRouterKey,\n url: url,\n tree: tree,\n childNodes: childNodesForParallelRouter,\n segmentPath: segmentPath,\n cacheKey: cacheKey,\n isActive: currentChildSegmentValue === preservedSegmentValue\n })\n })\n })\n })\n })\n }),\n children: [\n templateStyles,\n templateScripts,\n template\n ]\n }, (0, _createroutercachekey.createRouterCacheKey)(preservedSegment, true)));\n })\n });\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=layout-router.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL2xheW91dC1yb3V0ZXIuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7eURBMEJPQSxDQUFBLENBQUFDLG1CQUFBQSxDQUFBO3VDQUM2QkEsbUJBQUFBLENBQUE7aURBQ0Q7Z0RBQ0w7MkNBQ0Q7O2dEQUVJOzhDQUNBOzhDQUNEOzs7QUFJaEMsTUFBQUMscUNBQUFELG1CQUFBQSxDQUFBOzs7O0lBUUUsU0FBSUUsZUFBbUJBLGlCQUFBLEVBQUFDLGNBQUE7UUFDckJELG1CQUFnQkU7UUFDaEIsTUFBTUMsQ0FBQUEsU0FBU0gsaUJBQWtCSSxHQUFBQTtRQUVqQyxNQUFJQyxTQUFBQSxrQkFBQUEsTUFBYUosS0FBQUE7WUFDZixJQUFJQSxlQUFlSSxZQUFHQyxFQUFBQSxjQUFlSixDQUFBQSxFQUFBQSxFQUFBQSxVQUFtQjtnQkFDdERELGNBQVksSUFBQUssY0FBQSxDQUFBSixtQkFBQTtvQkFDVkMsUUFBTUk7b0JBSU4sTUFBQUEsVUFBT0MsZUFBQUMsV0FBQVIsY0FBQSxJQUFBQyxpQkFBQTsyQkFDTEQ7d0JBQ0FBLGNBQUE7OzRCQUVFLEdBQUNDLGNBQUFBLENBQWlCLEVBQUU7OENBQ1I7Z0NBQ1ZLLE9BQU8sQ0FBQyxFQUFFO2dDQUNWQSxPQUFPLENBQUMsRUFBRTtnQ0FDVkEsT0FBQTtnQ0FDRDs2QkFDSDt3QkFDRDtxQkFDSDtnQkFFQTt1QkFDRU47b0JBQ0FBLGNBQUE7O3dCQUVFLEdBQUNDLGNBQUFBLENBQWlCLEVBQUVNO3dCQUl0QixDQUFBTixpQkFBQSxFQUFBTSxlQUFBUixrQkFBQVUsS0FBQSxLQUFBVCxjQUFBLElBQUFDLGlCQUFBO29CQUNEO2lCQUNIO1lBQ0Y7UUFDRjtJQUVBO0lBQ0YsT0FBQUQ7QUFFQTtBQUNBOzs7SUFNRSxTQUFBVSxZQUFBQyxRQUFBO0lBQ0EsK0JBQXNCO0lBQ3RCO0lBQ0Esd0RBQTJDO1FBQ3pDQyxJQUFNQyxFQUErQkM7UUFD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QTs4Q0FDb0J2RSxXQUFuQkEsR0FBbUJBLENBQUFBLEdBQUFBLFlBQUFBLEdBQUFBLEVBQUFBLG1CQUFBQTt3Q0FDbkJDLG1CQUFLQTt3Q0FDTEUsS0FBQUE7d0NBQ0FELE1BQUFBO3dDQUNBOUIsWUFBQUE7d0NBQ0FnQyxhQUFVQTt3Q0FDVm9FLFVBQ0VqQjs7Ozs7Ozs7MEJBVWZrQjtvQkFDQUM7b0JBQ0F4Qjs7aUJBdkNJVztZQTBDWCxPQUFBQyxzQkFBQUQsb0JBQUEsRUFBQUYsa0JBQUE7O0lBR04iLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9hc3RvY2stYWdlbnQtZnJvbnRlbmQvLi4vLi4vLi4vc3JjL2NsaWVudC9jb21wb25lbnRzL2xheW91dC1yb3V0ZXIudHN4P2M2OWQiXSwibmFtZXMiOlsiXyIsInJlcXVpcmUiLCJfaGFzaW50ZXJjZXB0aW9ucm91dGVpbmN1cnJlbnR0cmVlIiwic2VnbWVudFBhdGhUb1dhbGsiLCJ0cmVlVG9SZWNyZWF0ZSIsInBhcmFsbGVsUm91dGVLZXkiLCJpc0xhc3QiLCJsZW5ndGgiLCJtYXRjaFNlZ21lbnQiLCJoYXNPd25Qcm9wZXJ0eSIsInN1YlRyZWUiLCJ3YWxrQWRkUmVmZXRjaCIsInVuZGVmaW5lZCIsInNsaWNlIiwiZmluZERPTU5vZGUiLCJpbnN0YW5jZSIsInByb2Nlc3MiLCJvcmlnaW5hbENvbnNvbGVFcnJvciIsImVycm9yIiwiY29uc29sZSIsIm1lc3NhZ2VzIiwiX3JlYWN0ZG9tIiwiZGVmYXVsdCIsInJlY3RQcm9wZXJ0aWVzIiwic2hvdWxkU2tpcEVsZW1lbnQiLCJlbGVtZW50IiwiaW5jbHVkZXMiLCJwb3NpdGlvbiIsIndhcm4iLCJyZWN0IiwiaXRlbSIsImV2ZXJ5IiwiZ2V0Qm91bmRpbmdDbGllbnRSZWN0IiwidG9wIiwidmlld3BvcnRIZWlnaHQiLCJnZXRIYXNoRnJhZ21lbnREb21Ob2RlIiwiaGFzaEZyYWdtZW50IiwiYm9keSIsImRvY3VtZW50IiwiX2RvY3VtZW50X2dldEVsZW1lbnRCeUlkIiwiZ2V0RWxlbWVudEJ5SWQiLCJnZXRFbGVtZW50c0J5TmFtZSIsImNvbXBvbmVudERpZE1vdW50IiwiX3JlYWN0IiwiQ29tcG9uZW50IiwiaGFuZGxlUG90ZW50aWFsU2Nyb2xsIiwiY29tcG9uZW50RGlkVXBkYXRlIiwiYXBwbHkiLCJyZW5kZXIiLCJwcm9wcyIsImNoaWxkcmVuIiwiZm9jdXNBbmRTY3JvbGxSZWYiLCJzZWdtZW50UGF0aCIsInNlZ21lbnRQYXRocyIsInNvbWUiLCJzY3JvbGxSZWZTZWdtZW50UGF0aCIsInNlZ21lbnQiLCJpbmRleCIsIl9tYXRjaHNlZ21lbnRzIiwiZG9tTm9kZSIsIkVsZW1lbnQiLCJIVE1MRWxlbWVudCIsIm5leHRFbGVtZW50U2libGluZyIsImhhbmRsZVNtb290aFNjcm9sbCIsIl9oYW5kbGVzbW9vdGhzY3JvbGwiLCJzY3JvbGxJbnRvVmlldyIsImh0bWxFbGVtZW50IiwiY2xpZW50SGVpZ2h0IiwidG9wT2ZFbGVtZW50SW5WaWV3cG9ydCIsInNjcm9sbFRvcCIsImRvbnRGb3JjZUxheW91dCIsIm9ubHlIYXNoQ2hhbmdlIiwiZm9jdXMiLCJTY3JvbGxBbmRGb2N1c0hhbmRsZXIiLCJwYXJhbSIsImNvbnRleHQiLCJ1c2VDb250ZXh0IiwiX2FwcHJvdXRlcmNvbnRleHRzaGFyZWRydW50aW1lIiwiR2xvYmFsTGF5b3V0Um91dGVyQ29udGV4dCIsIkVycm9yIiwicGFyYWxsZWxSb3V0ZXJLZXkiLCJ1cmwiLCJjaGlsZE5vZGVzIiwidHJlZSIsImNhY2hlS2V5IiwiYnVpbGRJZCIsImNoYW5nZUJ5U2VydmVyUmVzcG9uc2UiLCJmdWxsVHJlZSIsImNoaWxkTm9kZSIsImdldCIsIm5ld0xhenlDYWNoZU5vZGUiLCJsYXp5RGF0YSIsInJzYyIsInByZWZldGNoUnNjIiwiaGVhZCIsInByZWZldGNoSGVhZCIsInBhcmFsbGVsUm91dGVzIiwibGF6eURhdGFSZXNvbHZlZCIsIk1hcCIsImxvYWRpbmciLCJzZXQiLCJyZXNvbHZlZFByZWZldGNoUnNjIiwidXNlRGVmZXJyZWRWYWx1ZSIsInJlc29sdmVkUnNjIiwidGhlbiIsInVzZSIsInJlZmV0Y2hUcmVlIiwiZmV0Y2hTZXJ2ZXJSZXNwb25zZSIsImxvY2F0aW9uIiwiX2ZldGNoc2VydmVycmVzcG9uc2UiLCJVUkwiLCJvcmlnaW4iLCJpbmNsdWRlTmV4dFVybCIsIm5leHRVcmwiLCJzZXRUaW1lb3V0Iiwic3RhcnRUcmFuc2l0aW9uIiwic2VydmVyUmVzcG9uc2UiLCJfdW5yZXNvbHZlZHRoZW5hYmxlIiwidW5yZXNvbHZlZFRoZW5hYmxlIiwiX2pzeHJ1bnRpbWUiLCJqc3giLCJMYXlvdXRSb3V0ZXJDb250ZXh0IiwiUHJvdmlkZXIiLCJzdWJ0cmVlIiwiaGFzTG9hZGluZyIsImxvYWRpbmdTdHlsZXMiLCJsb2FkaW5nU2NyaXB0cyIsImZhbGxiYWNrIiwiU3VzcGVuc2UiLCJPdXRlckxheW91dFJvdXRlciIsInRlbXBsYXRlIiwibm90Rm91bmQiLCJub3RGb3VuZFN0eWxlcyIsImNoaWxkTm9kZXNGb3JQYXJhbGxlbFJvdXRlciIsInRyZWVTZWdtZW50IiwiY3VycmVudENoaWxkU2VnbWVudFZhbHVlIiwiX2dldHNlZ21lbnR2YWx1ZSIsImdldFNlZ21lbnRWYWx1ZSIsInByZXNlcnZlZFNlZ21lbnRzIiwicHJlc2VydmVkU2VnbWVudCIsInByZXNlcnZlZFNlZ21lbnRWYWx1ZSIsImNyZWF0ZVJvdXRlckNhY2hlS2V5IiwiX2NyZWF0ZXJvdXRlcmNhY2hla2V5IiwidmFsdWUiLCJqc3hzIiwiZXJyb3JDb21wb25lbnQiLCJlcnJvclN0eWxlcyIsImVycm9yU2NyaXB0cyIsIkJvb2xlYW4iLCJOb3RGb3VuZEJvdW5kYXJ5IiwiX3JlZGlyZWN0Ym91bmRhcnkiLCJJbm5lckxheW91dFJvdXRlciIsImlzQWN0aXZlIiwidGVtcGxhdGVTdHlsZXMiLCJ0ZW1wbGF0ZVNjcmlwdHMiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/layout-router.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/next/dist/client/components/match-segments.js": -/*!********************************************************************!*\ - !*** ./node_modules/next/dist/client/components/match-segments.js ***! - \********************************************************************/ -/***/ ((module, exports, __webpack_require__) => { - -"use strict"; -eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\n0 && (0);\nfunction _export(target, all) {\n for(var name in all)Object.defineProperty(target, name, {\n enumerable: true,\n get: all[name]\n });\n}\n_export(exports, {\n canSegmentBeOverridden: function() {\n return canSegmentBeOverridden;\n },\n matchSegment: function() {\n return matchSegment;\n }\n});\nconst _getsegmentparam = __webpack_require__(/*! ../../server/app-render/get-segment-param */ \"(ssr)/./node_modules/next/dist/server/app-render/get-segment-param.js\");\nconst matchSegment = (existingSegment, segment)=>{\n // segment is either Array or string\n if (typeof existingSegment === \"string\") {\n if (typeof segment === \"string\") {\n // Common case: segment is just a string\n return existingSegment === segment;\n }\n return false;\n }\n if (typeof segment === \"string\") {\n return false;\n }\n return existingSegment[0] === segment[0] && existingSegment[1] === segment[1];\n};\nconst canSegmentBeOverridden = (existingSegment, segment)=>{\n var _getSegmentParam;\n if (Array.isArray(existingSegment) || !Array.isArray(segment)) {\n return false;\n }\n return ((_getSegmentParam = (0, _getsegmentparam.getSegmentParam)(existingSegment)) == null ? void 0 : _getSegmentParam.param) === segment[0];\n};\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=match-segments.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL21hdGNoLXNlZ21lbnRzLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztJQXlCYUEsd0JBQXNCO2VBQXRCQTs7SUF0QkFDLGNBQVk7ZUFBWkE7Ozs2Q0FIbUI7QUFHekIsTUFBTUEsZUFBZSxDQUMxQkMsaUJBQ0FDO0lBRUEsb0NBQW9DO0lBQ3BDLElBQUksT0FBT0Qsb0JBQW9CLFVBQVU7UUFDdkMsSUFBSSxPQUFPQyxZQUFZLFVBQVU7WUFDL0Isd0NBQXdDO1lBQ3hDLE9BQU9ELG9CQUFvQkM7UUFDN0I7UUFDQSxPQUFPO0lBQ1Q7SUFFQSxJQUFJLE9BQU9BLFlBQVksVUFBVTtRQUMvQixPQUFPO0lBQ1Q7SUFDQSxPQUFPRCxlQUFlLENBQUMsRUFBRSxLQUFLQyxPQUFPLENBQUMsRUFBRSxJQUFJRCxlQUFlLENBQUMsRUFBRSxLQUFLQyxPQUFPLENBQUMsRUFBRTtBQUMvRTtBQUtPLE1BQU1ILHlCQUF5QixDQUNwQ0UsaUJBQ0FDO1FBTU9DO0lBSlAsSUFBSUMsTUFBTUMsT0FBTyxDQUFDSixvQkFBb0IsQ0FBQ0csTUFBTUMsT0FBTyxDQUFDSCxVQUFVO1FBQzdELE9BQU87SUFDVDtJQUVBLE9BQU9DLENBQUFBLENBQUFBLG1CQUFBQSxDQUFBQSxHQUFBQSxpQkFBQUEsZUFBZSxFQUFDRixnQkFBQUEsS0FBQUEsT0FBQUEsS0FBQUEsSUFBaEJFLGlCQUFrQ0csS0FBSyxNQUFLSixPQUFPLENBQUMsRUFBRTtBQUMvRCIsInNvdXJjZXMiOlsid2VicGFjazovL2FzdG9jay1hZ2VudC1mcm9udGVuZC8uLi8uLi8uLi9zcmMvY2xpZW50L2NvbXBvbmVudHMvbWF0Y2gtc2VnbWVudHMudHM/ZjY3MCJdLCJuYW1lcyI6WyJjYW5TZWdtZW50QmVPdmVycmlkZGVuIiwibWF0Y2hTZWdtZW50IiwiZXhpc3RpbmdTZWdtZW50Iiwic2VnbWVudCIsImdldFNlZ21lbnRQYXJhbSIsIkFycmF5IiwiaXNBcnJheSIsInBhcmFtIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/match-segments.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/next/dist/client/components/navigation.js": -/*!****************************************************************!*\ - !*** ./node_modules/next/dist/client/components/navigation.js ***! - \****************************************************************/ -/***/ ((module, exports, __webpack_require__) => { - -"use strict"; -eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\n0 && (0);\nfunction _export(target, all) {\n for(var name in all)Object.defineProperty(target, name, {\n enumerable: true,\n get: all[name]\n });\n}\n_export(exports, {\n ReadonlyURLSearchParams: function() {\n return _navigationreactserver.ReadonlyURLSearchParams;\n },\n RedirectType: function() {\n return _navigationreactserver.RedirectType;\n },\n ServerInsertedHTMLContext: function() {\n return _serverinsertedhtmlsharedruntime.ServerInsertedHTMLContext;\n },\n notFound: function() {\n return _navigationreactserver.notFound;\n },\n permanentRedirect: function() {\n return _navigationreactserver.permanentRedirect;\n },\n redirect: function() {\n return _navigationreactserver.redirect;\n },\n useParams: function() {\n return useParams;\n },\n usePathname: function() {\n return usePathname;\n },\n useRouter: function() {\n return useRouter;\n },\n useSearchParams: function() {\n return useSearchParams;\n },\n useSelectedLayoutSegment: function() {\n return useSelectedLayoutSegment;\n },\n useSelectedLayoutSegments: function() {\n return useSelectedLayoutSegments;\n },\n useServerInsertedHTML: function() {\n return _serverinsertedhtmlsharedruntime.useServerInsertedHTML;\n }\n});\nconst _react = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\nconst _approutercontextsharedruntime = __webpack_require__(/*! ../../shared/lib/app-router-context.shared-runtime */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/app-router-context.js\");\nconst _hooksclientcontextsharedruntime = __webpack_require__(/*! ../../shared/lib/hooks-client-context.shared-runtime */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/hooks-client-context.js\");\nconst _getsegmentvalue = __webpack_require__(/*! ./router-reducer/reducers/get-segment-value */ \"(ssr)/./node_modules/next/dist/client/components/router-reducer/reducers/get-segment-value.js\");\nconst _segment = __webpack_require__(/*! ../../shared/lib/segment */ \"(ssr)/./node_modules/next/dist/shared/lib/segment.js\");\nconst _navigationreactserver = __webpack_require__(/*! ./navigation.react-server */ \"(ssr)/./node_modules/next/dist/client/components/navigation.react-server.js\");\nconst _serverinsertedhtmlsharedruntime = __webpack_require__(/*! ../../shared/lib/server-inserted-html.shared-runtime */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/server-inserted-html.js\");\n/**\n * A [Client Component](https://nextjs.org/docs/app/building-your-application/rendering/client-components) hook\n * that lets you *read* the current URL's search parameters.\n *\n * Learn more about [`URLSearchParams` on MDN](https://developer.mozilla.org/docs/Web/API/URLSearchParams)\n *\n * @example\n * ```ts\n * \"use client\"\n * import { useSearchParams } from 'next/navigation'\n *\n * export default function Page() {\n * const searchParams = useSearchParams()\n * searchParams.get('foo') // returns 'bar' when ?foo=bar\n * // ...\n * }\n * ```\n *\n * Read more: [Next.js Docs: `useSearchParams`](https://nextjs.org/docs/app/api-reference/functions/use-search-params)\n */ function useSearchParams() {\n const searchParams = (0, _react.useContext)(_hooksclientcontextsharedruntime.SearchParamsContext);\n // In the case where this is `null`, the compat types added in\n // `next-env.d.ts` will add a new overload that changes the return type to\n // include `null`.\n const readonlySearchParams = (0, _react.useMemo)(()=>{\n if (!searchParams) {\n // When the router is not ready in pages, we won't have the search params\n // available.\n return null;\n }\n return new _navigationreactserver.ReadonlyURLSearchParams(searchParams);\n }, [\n searchParams\n ]);\n if (true) {\n // AsyncLocalStorage should not be included in the client bundle.\n const { bailoutToClientRendering } = __webpack_require__(/*! ./bailout-to-client-rendering */ \"(ssr)/./node_modules/next/dist/client/components/bailout-to-client-rendering.js\");\n // TODO-APP: handle dynamic = 'force-static' here and on the client\n bailoutToClientRendering(\"useSearchParams()\");\n }\n return readonlySearchParams;\n}\n/**\n * A [Client Component](https://nextjs.org/docs/app/building-your-application/rendering/client-components) hook\n * that lets you read the current URL's pathname.\n *\n * @example\n * ```ts\n * \"use client\"\n * import { usePathname } from 'next/navigation'\n *\n * export default function Page() {\n * const pathname = usePathname() // returns \"/dashboard\" on /dashboard?foo=bar\n * // ...\n * }\n * ```\n *\n * Read more: [Next.js Docs: `usePathname`](https://nextjs.org/docs/app/api-reference/functions/use-pathname)\n */ function usePathname() {\n // In the case where this is `null`, the compat types added in `next-env.d.ts`\n // will add a new overload that changes the return type to include `null`.\n return (0, _react.useContext)(_hooksclientcontextsharedruntime.PathnameContext);\n}\n/**\n *\n * This hook allows you to programmatically change routes inside [Client Component](https://nextjs.org/docs/app/building-your-application/rendering/client-components).\n *\n * @example\n * ```ts\n * \"use client\"\n * import { useRouter } from 'next/navigation'\n *\n * export default function Page() {\n * const router = useRouter()\n * // ...\n * router.push('/dashboard') // Navigate to /dashboard\n * }\n * ```\n *\n * Read more: [Next.js Docs: `useRouter`](https://nextjs.org/docs/app/api-reference/functions/use-router)\n */ function useRouter() {\n const router = (0, _react.useContext)(_approutercontextsharedruntime.AppRouterContext);\n if (router === null) {\n throw new Error(\"invariant expected app router to be mounted\");\n }\n return router;\n}\n/**\n * A [Client Component](https://nextjs.org/docs/app/building-your-application/rendering/client-components) hook\n * that lets you read a route's dynamic params filled in by the current URL.\n *\n * @example\n * ```ts\n * \"use client\"\n * import { useParams } from 'next/navigation'\n *\n * export default function Page() {\n * // on /dashboard/[team] where pathname is /dashboard/nextjs\n * const { team } = useParams() // team === \"nextjs\"\n * }\n * ```\n *\n * Read more: [Next.js Docs: `useParams`](https://nextjs.org/docs/app/api-reference/functions/use-params)\n */ function useParams() {\n return (0, _react.useContext)(_hooksclientcontextsharedruntime.PathParamsContext);\n}\n/** Get the canonical parameters from the current level to the leaf node. */ function getSelectedLayoutSegmentPath(tree, parallelRouteKey, first, segmentPath) {\n if (first === void 0) first = true;\n if (segmentPath === void 0) segmentPath = [];\n let node;\n if (first) {\n // Use the provided parallel route key on the first parallel route\n node = tree[1][parallelRouteKey];\n } else {\n // After first parallel route prefer children, if there's no children pick the first parallel route.\n const parallelRoutes = tree[1];\n var _parallelRoutes_children;\n node = (_parallelRoutes_children = parallelRoutes.children) != null ? _parallelRoutes_children : Object.values(parallelRoutes)[0];\n }\n if (!node) return segmentPath;\n const segment = node[0];\n const segmentValue = (0, _getsegmentvalue.getSegmentValue)(segment);\n if (!segmentValue || segmentValue.startsWith(_segment.PAGE_SEGMENT_KEY)) {\n return segmentPath;\n }\n segmentPath.push(segmentValue);\n return getSelectedLayoutSegmentPath(node, parallelRouteKey, false, segmentPath);\n}\n/**\n * A [Client Component](https://nextjs.org/docs/app/building-your-application/rendering/client-components) hook\n * that lets you read the active route segments **below** the Layout it is called from.\n *\n * @example\n * ```ts\n * 'use client'\n *\n * import { useSelectedLayoutSegments } from 'next/navigation'\n *\n * export default function ExampleClientComponent() {\n * const segments = useSelectedLayoutSegments()\n *\n * return (\n *
    \n * {segments.map((segment, index) => (\n *
  • {segment}
  • \n * ))}\n *
\n * )\n * }\n * ```\n *\n * Read more: [Next.js Docs: `useSelectedLayoutSegments`](https://nextjs.org/docs/app/api-reference/functions/use-selected-layout-segments)\n */ function useSelectedLayoutSegments(parallelRouteKey) {\n if (parallelRouteKey === void 0) parallelRouteKey = \"children\";\n const context = (0, _react.useContext)(_approutercontextsharedruntime.LayoutRouterContext);\n // @ts-expect-error This only happens in `pages`. Type is overwritten in navigation.d.ts\n if (!context) return null;\n return getSelectedLayoutSegmentPath(context.tree, parallelRouteKey);\n}\n/**\n * A [Client Component](https://nextjs.org/docs/app/building-your-application/rendering/client-components) hook\n * that lets you read the active route segment **one level below** the Layout it is called from.\n *\n * @example\n * ```ts\n * 'use client'\n * import { useSelectedLayoutSegment } from 'next/navigation'\n *\n * export default function ExampleClientComponent() {\n * const segment = useSelectedLayoutSegment()\n *\n * return

Active segment: {segment}

\n * }\n * ```\n *\n * Read more: [Next.js Docs: `useSelectedLayoutSegment`](https://nextjs.org/docs/app/api-reference/functions/use-selected-layout-segment)\n */ function useSelectedLayoutSegment(parallelRouteKey) {\n if (parallelRouteKey === void 0) parallelRouteKey = \"children\";\n const selectedLayoutSegments = useSelectedLayoutSegments(parallelRouteKey);\n if (!selectedLayoutSegments || selectedLayoutSegments.length === 0) {\n return null;\n }\n const selectedLayoutSegment = parallelRouteKey === \"children\" ? selectedLayoutSegments[0] : selectedLayoutSegments[selectedLayoutSegments.length - 1];\n // if the default slot is showing, we return null since it's not technically \"selected\" (it's a fallback)\n // and returning an internal value like `__DEFAULT__` would be confusing.\n return selectedLayoutSegment === _segment.DEFAULT_SEGMENT_KEY ? null : selectedLayoutSegment;\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=navigation.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL25hdmlnYXRpb24uanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0lBOFFFQSx5QkFBdUI7ZUFBdkJBLHVCQUFBQSx1QkFBdUI7O0lBRHZCQyxjQUFZO2VBQVpBLHVCQUFBQSxZQUFZOztJQVJaQywyQkFBeUI7ZUFBekJBLGlDQUFBQSx5QkFBeUI7O0lBS3pCQyxVQUFRO2VBQVJBLHVCQUFBQSxRQUFROztJQUVSQyxtQkFBaUI7ZUFBakJBLHVCQUFBQSxpQkFBaUI7O0lBRGpCQyxVQUFRO2VBQVJBLHVCQUFBQSxRQUFROztJQVRSQyxXQUFTO2VBQVRBOztJQUhBQyxhQUFXO2VBQVhBOztJQUlBQyxXQUFTO2VBQVRBOztJQUxBQyxpQkFBZTtlQUFmQTs7SUFFQUMsMEJBQXdCO2VBQXhCQTs7SUFDQUMsMkJBQXlCO2VBQXpCQTs7SUFHQUMsdUJBQXFCO2VBQXJCQSxpQ0FBQUEscUJBQXFCOzs7bUNBcFFhOzJEQU03Qjs2REFLQTs2Q0FDeUI7cUNBQ3NCO21EQUNkOzZEQTJFakM7QUF6RVA7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FtQkMsR0FDRCxTQUFTSDtJQUNQLE1BQU1JLGVBQWVDLENBQUFBLEdBQUFBLE9BQUFBLFVBQVUsRUFBQ0MsaUNBQUFBLG1CQUFtQjtJQUVuRCw4REFBOEQ7SUFDOUQsMEVBQTBFO0lBQzFFLGtCQUFrQjtJQUNsQixNQUFNQyx1QkFBdUJDLENBQUFBLEdBQUFBLE9BQUFBLE9BQU8sRUFBQztRQUNuQyxJQUFJLENBQUNKLGNBQWM7WUFDakIseUVBQXlFO1lBQ3pFLGFBQWE7WUFDYixPQUFPO1FBQ1Q7UUFFQSxPQUFPLElBQUliLHVCQUFBQSx1QkFBdUIsQ0FBQ2E7SUFDckMsR0FBRztRQUFDQTtLQUFhO0lBRWpCLElBQUksSUFBa0IsRUFBYTtRQUNqQyxpRUFBaUU7UUFDakUsTUFBTSxFQUFFSyx3QkFBd0IsRUFBRSxHQUNoQ0MsbUJBQUFBLENBQVE7UUFDVixtRUFBbUU7UUFDbkVELHlCQUF5QjtJQUMzQjtJQUVBLE9BQU9GO0FBQ1Q7QUFFQTs7Ozs7Ozs7Ozs7Ozs7OztDQWdCQyxHQUNELFNBQVNUO0lBQ1AsOEVBQThFO0lBQzlFLDBFQUEwRTtJQUMxRSxPQUFPTyxDQUFBQSxHQUFBQSxPQUFBQSxVQUFVLEVBQUNNLGlDQUFBQSxlQUFlO0FBQ25DO0FBT0E7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBaUJDLEdBQ0QsU0FBU1o7SUFDUCxNQUFNYSxTQUFTUCxDQUFBQSxHQUFBQSxPQUFBQSxVQUFVLEVBQUNRLCtCQUFBQSxnQkFBZ0I7SUFDMUMsSUFBSUQsV0FBVyxNQUFNO1FBQ25CLE1BQU0sSUFBSUUsTUFBTTtJQUNsQjtJQUVBLE9BQU9GO0FBQ1Q7QUFNQTs7Ozs7Ozs7Ozs7Ozs7OztDQWdCQyxHQUNELFNBQVNmO0lBQ1AsT0FBT1EsQ0FBQUEsR0FBQUEsT0FBQUEsVUFBVSxFQUFDVSxpQ0FBQUEsaUJBQWlCO0FBQ3JDO0FBRUEsMEVBQTBFLEdBQzFFLFNBQVNDLDZCQUNQQyxJQUF1QixFQUN2QkMsZ0JBQXdCLEVBQ3hCQyxLQUFZLEVBQ1pDLFdBQTBCO0lBRDFCRCxJQUFBQSxVQUFBQSxLQUFBQSxHQUFBQSxRQUFRO0lBQ1JDLElBQUFBLGdCQUFBQSxLQUFBQSxHQUFBQSxjQUF3QixFQUFFO0lBRTFCLElBQUlDO0lBQ0osSUFBSUYsT0FBTztRQUNULGtFQUFrRTtRQUNsRUUsT0FBT0osSUFBSSxDQUFDLEVBQUUsQ0FBQ0MsaUJBQWlCO0lBQ2xDLE9BQU87UUFDTCxvR0FBb0c7UUFDcEcsTUFBTUksaUJBQWlCTCxJQUFJLENBQUMsRUFBRTtZQUN2Qks7UUFBUEQsT0FBT0MsQ0FBQUEsMkJBQUFBLGVBQWVDLFFBQVEsWUFBdkJELDJCQUEyQkUsT0FBT0MsTUFBTSxDQUFDSCxlQUFlLENBQUMsRUFBRTtJQUNwRTtJQUVBLElBQUksQ0FBQ0QsTUFBTSxPQUFPRDtJQUNsQixNQUFNTSxVQUFVTCxJQUFJLENBQUMsRUFBRTtJQUV2QixNQUFNTSxlQUFlQyxDQUFBQSxHQUFBQSxpQkFBQUEsZUFBZSxFQUFDRjtJQUNyQyxJQUFJLENBQUNDLGdCQUFnQkEsYUFBYUUsVUFBVSxDQUFDQyxTQUFBQSxnQkFBZ0IsR0FBRztRQUM5RCxPQUFPVjtJQUNUO0lBRUFBLFlBQVlXLElBQUksQ0FBQ0o7SUFFakIsT0FBT1gsNkJBQ0xLLE1BQ0FILGtCQUNBLE9BQ0FFO0FBRUo7QUFFQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBd0JDLEdBQ0QsU0FBU2xCLDBCQUNQZ0IsZ0JBQXFDO0lBQXJDQSxJQUFBQSxxQkFBQUEsS0FBQUEsR0FBQUEsbUJBQTJCO0lBRTNCLE1BQU1jLFVBQVUzQixDQUFBQSxHQUFBQSxPQUFBQSxVQUFVLEVBQUM0QiwrQkFBQUEsbUJBQW1CO0lBQzlDLHdGQUF3RjtJQUN4RixJQUFJLENBQUNELFNBQVMsT0FBTztJQUVyQixPQUFPaEIsNkJBQTZCZ0IsUUFBUWYsSUFBSSxFQUFFQztBQUNwRDtBQUVBOzs7Ozs7Ozs7Ozs7Ozs7OztDQWlCQyxHQUNELFNBQVNqQix5QkFDUGlCLGdCQUFxQztJQUFyQ0EsSUFBQUEscUJBQUFBLEtBQUFBLEdBQUFBLG1CQUEyQjtJQUUzQixNQUFNZ0IseUJBQXlCaEMsMEJBQTBCZ0I7SUFFekQsSUFBSSxDQUFDZ0IsMEJBQTBCQSx1QkFBdUJDLE1BQU0sS0FBSyxHQUFHO1FBQ2xFLE9BQU87SUFDVDtJQUVBLE1BQU1DLHdCQUNKbEIscUJBQXFCLGFBQ2pCZ0Isc0JBQXNCLENBQUMsRUFBRSxHQUN6QkEsc0JBQXNCLENBQUNBLHVCQUF1QkMsTUFBTSxHQUFHLEVBQUU7SUFFL0QseUdBQXlHO0lBQ3pHLHlFQUF5RTtJQUN6RSxPQUFPQywwQkFBMEJDLFNBQUFBLG1CQUFtQixHQUNoRCxPQUNBRDtBQUNOIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vYXN0b2NrLWFnZW50LWZyb250ZW5kLy4uLy4uLy4uL3NyYy9jbGllbnQvY29tcG9uZW50cy9uYXZpZ2F0aW9uLnRzP2Y2MjQiXSwibmFtZXMiOlsiUmVhZG9ubHlVUkxTZWFyY2hQYXJhbXMiLCJSZWRpcmVjdFR5cGUiLCJTZXJ2ZXJJbnNlcnRlZEhUTUxDb250ZXh0Iiwibm90Rm91bmQiLCJwZXJtYW5lbnRSZWRpcmVjdCIsInJlZGlyZWN0IiwidXNlUGFyYW1zIiwidXNlUGF0aG5hbWUiLCJ1c2VSb3V0ZXIiLCJ1c2VTZWFyY2hQYXJhbXMiLCJ1c2VTZWxlY3RlZExheW91dFNlZ21lbnQiLCJ1c2VTZWxlY3RlZExheW91dFNlZ21lbnRzIiwidXNlU2VydmVySW5zZXJ0ZWRIVE1MIiwic2VhcmNoUGFyYW1zIiwidXNlQ29udGV4dCIsIlNlYXJjaFBhcmFtc0NvbnRleHQiLCJyZWFkb25seVNlYXJjaFBhcmFtcyIsInVzZU1lbW8iLCJiYWlsb3V0VG9DbGllbnRSZW5kZXJpbmciLCJyZXF1aXJlIiwiUGF0aG5hbWVDb250ZXh0Iiwicm91dGVyIiwiQXBwUm91dGVyQ29udGV4dCIsIkVycm9yIiwiUGF0aFBhcmFtc0NvbnRleHQiLCJnZXRTZWxlY3RlZExheW91dFNlZ21lbnRQYXRoIiwidHJlZSIsInBhcmFsbGVsUm91dGVLZXkiLCJmaXJzdCIsInNlZ21lbnRQYXRoIiwibm9kZSIsInBhcmFsbGVsUm91dGVzIiwiY2hpbGRyZW4iLCJPYmplY3QiLCJ2YWx1ZXMiLCJzZWdtZW50Iiwic2VnbWVudFZhbHVlIiwiZ2V0U2VnbWVudFZhbHVlIiwic3RhcnRzV2l0aCIsIlBBR0VfU0VHTUVOVF9LRVkiLCJwdXNoIiwiY29udGV4dCIsIkxheW91dFJvdXRlckNvbnRleHQiLCJzZWxlY3RlZExheW91dFNlZ21lbnRzIiwibGVuZ3RoIiwic2VsZWN0ZWRMYXlvdXRTZWdtZW50IiwiREVGQVVMVF9TRUdNRU5UX0tFWSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/navigation.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/next/dist/client/components/navigation.react-server.js": -/*!*****************************************************************************!*\ - !*** ./node_modules/next/dist/client/components/navigation.react-server.js ***! - \*****************************************************************************/ -/***/ ((module, exports, __webpack_require__) => { - -"use strict"; -eval("/** @internal */ \nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\n0 && (0);\nfunction _export(target, all) {\n for(var name in all)Object.defineProperty(target, name, {\n enumerable: true,\n get: all[name]\n });\n}\n_export(exports, {\n ReadonlyURLSearchParams: function() {\n return ReadonlyURLSearchParams;\n },\n RedirectType: function() {\n return _redirect.RedirectType;\n },\n notFound: function() {\n return _notfound.notFound;\n },\n permanentRedirect: function() {\n return _redirect.permanentRedirect;\n },\n redirect: function() {\n return _redirect.redirect;\n }\n});\nconst _redirect = __webpack_require__(/*! ./redirect */ \"(ssr)/./node_modules/next/dist/client/components/redirect.js\");\nconst _notfound = __webpack_require__(/*! ./not-found */ \"(ssr)/./node_modules/next/dist/client/components/not-found.js\");\nclass ReadonlyURLSearchParamsError extends Error {\n constructor(){\n super(\"Method unavailable on `ReadonlyURLSearchParams`. Read more: https://nextjs.org/docs/app/api-reference/functions/use-search-params#updating-searchparams\");\n }\n}\nclass ReadonlyURLSearchParams extends URLSearchParams {\n /** @deprecated Method unavailable on `ReadonlyURLSearchParams`. Read more: https://nextjs.org/docs/app/api-reference/functions/use-search-params#updating-searchparams */ append() {\n throw new ReadonlyURLSearchParamsError();\n }\n /** @deprecated Method unavailable on `ReadonlyURLSearchParams`. Read more: https://nextjs.org/docs/app/api-reference/functions/use-search-params#updating-searchparams */ delete() {\n throw new ReadonlyURLSearchParamsError();\n }\n /** @deprecated Method unavailable on `ReadonlyURLSearchParams`. Read more: https://nextjs.org/docs/app/api-reference/functions/use-search-params#updating-searchparams */ set() {\n throw new ReadonlyURLSearchParamsError();\n }\n /** @deprecated Method unavailable on `ReadonlyURLSearchParams`. Read more: https://nextjs.org/docs/app/api-reference/functions/use-search-params#updating-searchparams */ sort() {\n throw new ReadonlyURLSearchParamsError();\n }\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=navigation.react-server.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL25hdmlnYXRpb24ucmVhY3Qtc2VydmVyLmpzIiwibWFwcGluZ3MiOiJBQUFBLGNBQWM7Ozs7Ozs7Ozs7OztJQThCTEEseUJBQXVCO2VBQXZCQTs7SUFGNkJDLGNBQVk7ZUFBWkEsVUFBQUEsWUFBWTs7SUFDekNDLFVBQVE7ZUFBUkEsVUFBQUEsUUFBUTs7SUFERUMsbUJBQWlCO2VBQWpCQSxVQUFBQSxpQkFBaUI7O0lBQTNCQyxVQUFRO2VBQVJBLFVBQUFBLFFBQVE7OztzQ0FBeUM7c0NBQ2pDO0FBNUJ6QixNQUFNQyxxQ0FBcUNDO0lBQ3pDQyxhQUFjO1FBQ1osS0FBSyxDQUNIO0lBRUo7QUFDRjtBQUVBLE1BQU1QLGdDQUFnQ1E7SUFDcEMsd0tBQXdLLEdBQ3hLQyxTQUFTO1FBQ1AsTUFBTSxJQUFJSjtJQUNaO0lBQ0Esd0tBQXdLLEdBQ3hLSyxTQUFTO1FBQ1AsTUFBTSxJQUFJTDtJQUNaO0lBQ0Esd0tBQXdLLEdBQ3hLTSxNQUFNO1FBQ0osTUFBTSxJQUFJTjtJQUNaO0lBQ0Esd0tBQXdLLEdBQ3hLTyxPQUFPO1FBQ0wsTUFBTSxJQUFJUDtJQUNaO0FBQ0YiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9hc3RvY2stYWdlbnQtZnJvbnRlbmQvLi4vLi4vLi4vc3JjL2NsaWVudC9jb21wb25lbnRzL25hdmlnYXRpb24ucmVhY3Qtc2VydmVyLnRzP2RiYzAiXSwibmFtZXMiOlsiUmVhZG9ubHlVUkxTZWFyY2hQYXJhbXMiLCJSZWRpcmVjdFR5cGUiLCJub3RGb3VuZCIsInBlcm1hbmVudFJlZGlyZWN0IiwicmVkaXJlY3QiLCJSZWFkb25seVVSTFNlYXJjaFBhcmFtc0Vycm9yIiwiRXJyb3IiLCJjb25zdHJ1Y3RvciIsIlVSTFNlYXJjaFBhcmFtcyIsImFwcGVuZCIsImRlbGV0ZSIsInNldCIsInNvcnQiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/navigation.react-server.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/next/dist/client/components/not-found-boundary.js": -/*!************************************************************************!*\ - !*** ./node_modules/next/dist/client/components/not-found-boundary.js ***! - \************************************************************************/ -/***/ ((module, exports, __webpack_require__) => { - -"use strict"; -eval("/* __next_internal_client_entry_do_not_use__ cjs */ \nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"NotFoundBoundary\", ({\n enumerable: true,\n get: function() {\n return NotFoundBoundary;\n }\n}));\nconst _interop_require_wildcard = __webpack_require__(/*! @swc/helpers/_/_interop_require_wildcard */ \"(ssr)/./node_modules/@swc/helpers/esm/_interop_require_wildcard.js\");\nconst _jsxruntime = __webpack_require__(/*! react/jsx-runtime */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react-jsx-runtime.js\");\nconst _react = /*#__PURE__*/ _interop_require_wildcard._(__webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\"));\nconst _navigation = __webpack_require__(/*! ./navigation */ \"(ssr)/./node_modules/next/dist/client/components/navigation.js\");\nconst _notfound = __webpack_require__(/*! ./not-found */ \"(ssr)/./node_modules/next/dist/client/components/not-found.js\");\nconst _warnonce = __webpack_require__(/*! ../../shared/lib/utils/warn-once */ \"(ssr)/./node_modules/next/dist/shared/lib/utils/warn-once.js\");\nconst _approutercontextsharedruntime = __webpack_require__(/*! ../../shared/lib/app-router-context.shared-runtime */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/app-router-context.js\");\nclass NotFoundErrorBoundary extends _react.default.Component {\n componentDidCatch() {\n if ( true && // A missing children slot is the typical not-found case, so no need to warn\n !this.props.missingSlots.has(\"children\")) {\n let warningMessage = \"No default component was found for a parallel route rendered on this page. Falling back to nearest NotFound boundary.\\n\" + \"Learn more: https://nextjs.org/docs/app/building-your-application/routing/parallel-routes#defaultjs\\n\\n\";\n if (this.props.missingSlots.size > 0) {\n const formattedSlots = Array.from(this.props.missingSlots).sort((a, b)=>a.localeCompare(b)).map((slot)=>\"@\" + slot).join(\", \");\n warningMessage += \"Missing slots: \" + formattedSlots;\n }\n (0, _warnonce.warnOnce)(warningMessage);\n }\n }\n static getDerivedStateFromError(error) {\n if ((0, _notfound.isNotFoundError)(error)) {\n return {\n notFoundTriggered: true\n };\n }\n // Re-throw if error is not for 404\n throw error;\n }\n static getDerivedStateFromProps(props, state) {\n /**\n * Handles reset of the error boundary when a navigation happens.\n * Ensures the error boundary does not stay enabled when navigating to a new page.\n * Approach of setState in render is safe as it checks the previous pathname and then overrides\n * it as outlined in https://react.dev/reference/react/useState#storing-information-from-previous-renders\n */ if (props.pathname !== state.previousPathname && state.notFoundTriggered) {\n return {\n notFoundTriggered: false,\n previousPathname: props.pathname\n };\n }\n return {\n notFoundTriggered: state.notFoundTriggered,\n previousPathname: props.pathname\n };\n }\n render() {\n if (this.state.notFoundTriggered) {\n return /*#__PURE__*/ (0, _jsxruntime.jsxs)(_jsxruntime.Fragment, {\n children: [\n /*#__PURE__*/ (0, _jsxruntime.jsx)(\"meta\", {\n name: \"robots\",\n content: \"noindex\"\n }),\n true && /*#__PURE__*/ (0, _jsxruntime.jsx)(\"meta\", {\n name: \"next-error\",\n content: \"not-found\"\n }),\n this.props.notFoundStyles,\n this.props.notFound\n ]\n });\n }\n return this.props.children;\n }\n constructor(props){\n super(props);\n this.state = {\n notFoundTriggered: !!props.asNotFound,\n previousPathname: props.pathname\n };\n }\n}\nfunction NotFoundBoundary(param) {\n let { notFound, notFoundStyles, asNotFound, children } = param;\n const pathname = (0, _navigation.usePathname)();\n const missingSlots = (0, _react.useContext)(_approutercontextsharedruntime.MissingSlotContext);\n return notFound ? /*#__PURE__*/ (0, _jsxruntime.jsx)(NotFoundErrorBoundary, {\n pathname: pathname,\n notFound: notFound,\n notFoundStyles: notFoundStyles,\n asNotFound: asNotFound,\n missingSlots: missingSlots,\n children: children\n }) : /*#__PURE__*/ (0, _jsxruntime.jsx)(_jsxruntime.Fragment, {\n children: children\n });\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=not-found-boundary.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL25vdC1mb3VuZC1ib3VuZGFyeS5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7NkJBRzRCQSwwQkFBQUMsQ0FBQSxDQUFBQyxtQkFBQUEsQ0FBQTt3Q0FDSTtzQ0FDUDs7QUFvQnpCLE1BQU1DLGlDQUE4QkMsbUJBQUFBLENBQUFBLHVLQUFBQTtNQVlsQ0MsOEJBQTBCQyxPQUFBQyxPQUFBLENBQUFDLFNBQUE7d0JBRVZDO1FBRVosSUFBQ0MsS0FBNEIsSUFDN0I7YUFDQSxDQUFBQyxLQUFJQyxDQUFBQSxZQUFBQSxDQUNGQyxHQUFBO1lBR0YsSUFBSUQsaUJBQVdFLDRIQUF1QjtnQkFDcEMsS0FBQUgsS0FBTUksQ0FBQUEsWUFBaUJDLENBQUFBLElBQUFBLEdBQU1DLEdBQUs7Z0JBS2xDTCxNQUFBQSxpQkFBa0JJLE1BQUFDLElBQUEsS0FBb0JGLENBQUFBLEtBQUFBLENBQUFBLFlBQUFBLEVBQUFBLElBQUFBLENBQUFBLENBQUFBLEdBQUFBLElBQUFBLEVBQUFBLGFBQUFBLENBQUFBLElBQUFBLEdBQUFBLENBQUFBLENBQUFBLE9BQUFBLE1BQUFBLE1BQUFBLElBQUFBLENBQUFBO2dCQUN4Q0gsa0JBQUEsb0JBQUFHO1lBRUFHO1lBQ0YsSUFBQUMsVUFBQUQsUUFBQSxFQUFBTjtRQUNGO0lBRUE7V0FDRVEseUJBQUlDLEtBQWUsRUFBQ0M7WUFDbEIsSUFBQUMsVUFBT0YsZUFBQSxFQUFBQyxRQUFBO21CQUNMRTtnQkFDRkEsbUJBQUE7WUFDRjtRQUNBO1FBQ0EsbUNBQU1GO1FBQ1IsTUFBQUE7SUFFQTtXQUlFRyx5QkFBQWQsS0FBQSxFQUFBZSxLQUFBOzs7Ozs7WUFPRWYsTUFBQWdCLFFBQU8sS0FBQUQsTUFBQUUsZ0JBQUEsSUFBQUYsTUFBQUYsaUJBQUE7bUJBQ0xBO2dCQUNBSSxtQkFBa0JqQjtnQkFDcEJpQixrQkFBQWpCLE1BQUFnQixRQUFBO1lBQ0Y7UUFDQTtlQUNFSDtZQUNBSSxtQkFBa0JqQixNQUFNZ0IsaUJBQVE7WUFDbENDLGtCQUFBakIsTUFBQWdCLFFBQUE7UUFDRjtJQUVBRTthQUNNO1lBQ0YsS0FBQUgsS0FBQSxDQUFBRixpQkFDRTs7OytCQUNhLE9BQUFNLFlBQUFDLEdBQUE7d0JBQVNDLE1BQUFBOztvQkFDbkJ0QjtvQkFqR1gsS0FrR3VCLHNCQUFBb0IsWUFBQUMsR0FBQTt3QkFBYUMsTUFBQUE7O29CQUV6QjtvQkFDQSxJQUFJLENBQUNyQixLQUFLLENBQUNzQixjQUFROzs7WUFHMUI7UUFFQTtRQUNGLFlBQUF0QixLQUFBLENBQUF1QixRQUFBO0lBOUVBQztnQkFDUXhCLEtBQUFBLENBQUFBO1FBQ04sS0FBS2UsQ0FBQUE7WUFDSEYsQ0FBQUEsS0FBQUEsR0FBQUE7WUFDQUksbUJBQWtCakIsQ0FBQUEsQ0FBQUEsTUFBTWdCLFVBQVE7WUFDbENDLGtCQUFBakIsTUFBQWdCLFFBQUE7UUFDRjtJQXlFRjtBQUVPO1NBQTBCUyxpQkFFL0JDLEtBQUFBO0lBSUEsTUFBTVYsUUFBQUEsRUFBQUEsY0FBV1csRUFBQUEsVUFBQUEsRUFBV0osUUFBQSxLQUFBSztJQUM1QixNQUFNekIsV0FBQUEsQ0FBQUEsR0FBZTBCLFlBQUFBLFdBQVdDO0lBQ2hDLE1BQUEzQixlQUFPbUIsQ0FBQUEsR0FBQUEsT0FDTE8sVUFBQSxFQUFBRSwrQkFBQ3ZDLGtCQUFBQTtXQUNDd0IsV0FBVUEsV0FBQUEsR0FBQUEsQ0FBQUEsR0FBQUEsWUFBQUEsR0FBQUEsRUFBQUEsdUJBQUFBO1FBQ1ZNLFVBQVVBO1FBQ1ZJLFVBQUFBO1FBQ0FNLGdCQUFZQTtRQUNaN0IsWUFBQUE7c0JBRUNvQjs7U0FHQUEsV0FBQUEsR0FBQUEsQ0FBQUEsR0FBQUEsWUFBQUEsR0FBQUEsRUFBQUEsWUFBQUEsUUFBQUEsRUFBQUE7O0lBRVAiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9hc3RvY2stYWdlbnQtZnJvbnRlbmQvLi4vLi4vLi4vc3JjL2NsaWVudC9jb21wb25lbnRzL25vdC1mb3VuZC1ib3VuZGFyeS50c3g/MTcyNCJdLCJuYW1lcyI6WyJfaW50ZXJvcF9yZXF1aXJlX3dpbGRjYXJkIiwiXyIsInJlcXVpcmUiLCJOb3RGb3VuZEVycm9yQm91bmRhcnkiLCJSZWFjdCIsImNvbXBvbmVudERpZENhdGNoIiwiX3JlYWN0IiwiZGVmYXVsdCIsIkNvbXBvbmVudCIsIk5PREVfRU5WIiwicHJvY2VzcyIsInByb3BzIiwid2FybmluZ01lc3NhZ2UiLCJoYXMiLCJtaXNzaW5nU2xvdHMiLCJmb3JtYXR0ZWRTbG90cyIsIkFycmF5IiwiZnJvbSIsIndhcm5PbmNlIiwiX3dhcm5vbmNlIiwiZ2V0RGVyaXZlZFN0YXRlRnJvbUVycm9yIiwiaXNOb3RGb3VuZEVycm9yIiwiZXJyb3IiLCJfbm90Zm91bmQiLCJub3RGb3VuZFRyaWdnZXJlZCIsImdldERlcml2ZWRTdGF0ZUZyb21Qcm9wcyIsInN0YXRlIiwicGF0aG5hbWUiLCJwcmV2aW91c1BhdGhuYW1lIiwicmVuZGVyIiwiX2pzeHJ1bnRpbWUiLCJqc3giLCJjb250ZW50Iiwibm90Rm91bmQiLCJjaGlsZHJlbiIsImNvbnN0cnVjdG9yIiwiTm90Rm91bmRCb3VuZGFyeSIsIm5vdEZvdW5kU3R5bGVzIiwidXNlUGF0aG5hbWUiLCJwYXJhbSIsInVzZUNvbnRleHQiLCJNaXNzaW5nU2xvdENvbnRleHQiLCJfYXBwcm91dGVyY29udGV4dHNoYXJlZHJ1bnRpbWUiLCJhc05vdEZvdW5kIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/not-found-boundary.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/next/dist/client/components/not-found.js": -/*!***************************************************************!*\ - !*** ./node_modules/next/dist/client/components/not-found.js ***! - \***************************************************************/ -/***/ ((module, exports) => { - -"use strict"; -eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\n0 && (0);\nfunction _export(target, all) {\n for(var name in all)Object.defineProperty(target, name, {\n enumerable: true,\n get: all[name]\n });\n}\n_export(exports, {\n isNotFoundError: function() {\n return isNotFoundError;\n },\n notFound: function() {\n return notFound;\n }\n});\nconst NOT_FOUND_ERROR_CODE = \"NEXT_NOT_FOUND\";\nfunction notFound() {\n // eslint-disable-next-line no-throw-literal\n const error = new Error(NOT_FOUND_ERROR_CODE);\n error.digest = NOT_FOUND_ERROR_CODE;\n throw error;\n}\nfunction isNotFoundError(error) {\n if (typeof error !== \"object\" || error === null || !(\"digest\" in error)) {\n return false;\n }\n return error.digest === NOT_FOUND_ERROR_CODE;\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=not-found.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL25vdC1mb3VuZC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7SUFnQ2dCQSxpQkFBZTtlQUFmQTs7SUFkQUMsVUFBUTtlQUFSQTs7O0FBbEJoQixNQUFNQyx1QkFBdUI7QUFrQnRCLFNBQVNEO0lBQ2QsNENBQTRDO0lBQzVDLE1BQU1FLFFBQVEsSUFBSUMsTUFBTUY7SUFDdEJDLE1BQXdCRSxNQUFNLEdBQUdIO0lBQ25DLE1BQU1DO0FBQ1I7QUFTTyxTQUFTSCxnQkFBZ0JHLEtBQWM7SUFDNUMsSUFBSSxPQUFPQSxVQUFVLFlBQVlBLFVBQVUsUUFBUSxDQUFFLGFBQVlBLEtBQUFBLEdBQVE7UUFDdkUsT0FBTztJQUNUO0lBRUEsT0FBT0EsTUFBTUUsTUFBTSxLQUFLSDtBQUMxQiIsInNvdXJjZXMiOlsid2VicGFjazovL2FzdG9jay1hZ2VudC1mcm9udGVuZC8uLi8uLi8uLi9zcmMvY2xpZW50L2NvbXBvbmVudHMvbm90LWZvdW5kLnRzPzA3ZmIiXSwibmFtZXMiOlsiaXNOb3RGb3VuZEVycm9yIiwibm90Rm91bmQiLCJOT1RfRk9VTkRfRVJST1JfQ09ERSIsImVycm9yIiwiRXJyb3IiLCJkaWdlc3QiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/not-found.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/next/dist/client/components/promise-queue.js": -/*!*******************************************************************!*\ - !*** ./node_modules/next/dist/client/components/promise-queue.js ***! - \*******************************************************************/ -/***/ ((module, exports, __webpack_require__) => { - -"use strict"; -eval("/*\n This is a simple promise queue that allows you to limit the number of concurrent promises\n that are running at any given time. It's used to limit the number of concurrent\n prefetch requests that are being made to the server but could be used for other\n things as well.\n*/ \nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"PromiseQueue\", ({\n enumerable: true,\n get: function() {\n return PromiseQueue;\n }\n}));\nconst _class_private_field_loose_base = __webpack_require__(/*! @swc/helpers/_/_class_private_field_loose_base */ \"(ssr)/./node_modules/@swc/helpers/esm/_class_private_field_loose_base.js\");\nconst _class_private_field_loose_key = __webpack_require__(/*! @swc/helpers/_/_class_private_field_loose_key */ \"(ssr)/./node_modules/@swc/helpers/esm/_class_private_field_loose_key.js\");\nvar _maxConcurrency = /*#__PURE__*/ _class_private_field_loose_key._(\"_maxConcurrency\"), _runningCount = /*#__PURE__*/ _class_private_field_loose_key._(\"_runningCount\"), _queue = /*#__PURE__*/ _class_private_field_loose_key._(\"_queue\"), _processNext = /*#__PURE__*/ _class_private_field_loose_key._(\"_processNext\");\nclass PromiseQueue {\n enqueue(promiseFn) {\n let taskResolve;\n let taskReject;\n const taskPromise = new Promise((resolve, reject)=>{\n taskResolve = resolve;\n taskReject = reject;\n });\n const task = async ()=>{\n try {\n _class_private_field_loose_base._(this, _runningCount)[_runningCount]++;\n const result = await promiseFn();\n taskResolve(result);\n } catch (error) {\n taskReject(error);\n } finally{\n _class_private_field_loose_base._(this, _runningCount)[_runningCount]--;\n _class_private_field_loose_base._(this, _processNext)[_processNext]();\n }\n };\n const enqueueResult = {\n promiseFn: taskPromise,\n task\n };\n // wonder if we should take a LIFO approach here\n _class_private_field_loose_base._(this, _queue)[_queue].push(enqueueResult);\n _class_private_field_loose_base._(this, _processNext)[_processNext]();\n return taskPromise;\n }\n bump(promiseFn) {\n const index = _class_private_field_loose_base._(this, _queue)[_queue].findIndex((item)=>item.promiseFn === promiseFn);\n if (index > -1) {\n const bumpedItem = _class_private_field_loose_base._(this, _queue)[_queue].splice(index, 1)[0];\n _class_private_field_loose_base._(this, _queue)[_queue].unshift(bumpedItem);\n _class_private_field_loose_base._(this, _processNext)[_processNext](true);\n }\n }\n constructor(maxConcurrency = 5){\n Object.defineProperty(this, _processNext, {\n value: processNext\n });\n Object.defineProperty(this, _maxConcurrency, {\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, _runningCount, {\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, _queue, {\n writable: true,\n value: void 0\n });\n _class_private_field_loose_base._(this, _maxConcurrency)[_maxConcurrency] = maxConcurrency;\n _class_private_field_loose_base._(this, _runningCount)[_runningCount] = 0;\n _class_private_field_loose_base._(this, _queue)[_queue] = [];\n }\n}\nfunction processNext(forced) {\n if (forced === void 0) forced = false;\n if ((_class_private_field_loose_base._(this, _runningCount)[_runningCount] < _class_private_field_loose_base._(this, _maxConcurrency)[_maxConcurrency] || forced) && _class_private_field_loose_base._(this, _queue)[_queue].length > 0) {\n var _class_private_field_loose_base__queue_shift;\n (_class_private_field_loose_base__queue_shift = _class_private_field_loose_base._(this, _queue)[_queue].shift()) == null ? void 0 : _class_private_field_loose_base__queue_shift.task();\n }\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=promise-queue.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3Byb21pc2UtcXVldWUuanMiLCJtYXBwaW5ncyI6IkFBQUE7Ozs7O0FBS0E7Ozs7Z0RBQ2FBOzs7ZUFBQUE7Ozs7O0lBQ1hDLGtCQUFBLGNBQUFDLCtCQUFBQyxDQUFBLHFCQUNBQyxnQkFBQSxjQUFBRiwrQkFBQUMsQ0FBQSxtQkFDQUUsU0FBQSxjQUFBSCwrQkFBQUMsQ0FBQSxZQW1EQUcsZUFBQSxjQUFBSiwrQkFBQUMsQ0FBQTtBQXRESyxNQUFNSDtJQWNYTyxRQUFXQyxTQUEyQixFQUFjO1FBQ2xELElBQUlDO1FBQ0osSUFBSUM7UUFFSixNQUFNQyxjQUFjLElBQUlDLFFBQVEsQ0FBQ0MsU0FBU0M7WUFDeENMLGNBQWNJO1lBQ2RILGFBQWFJO1FBQ2Y7UUFFQSxNQUFNQyxPQUFPO1lBQ1gsSUFBSTtnQkFDRkMsZ0NBQUFiLENBQUEsS0FBSSxFQUFFYyxjQUFBQSxDQUFBQSxjQUFBQTtnQkFDTixNQUFNQyxTQUFTLE1BQU1WO2dCQUNyQkMsWUFBWVM7WUFDZCxFQUFFLE9BQU9DLE9BQU87Z0JBQ2RULFdBQVdTO1lBQ2IsU0FBVTtnQkFDUkgsZ0NBQUFiLENBQUEsS0FBSSxFQUFFYyxjQUFBQSxDQUFBQSxjQUFBQTtnQkFDTkQsZ0NBQUFiLENBQUEsS0FBSSxFQUFFaUIsYUFBQUEsQ0FBQUEsYUFBQUE7WUFDUjtRQUNGO1FBRUEsTUFBTUMsZ0JBQWdCO1lBQUViLFdBQVdHO1lBQWFJO1FBQUs7UUFDckQsZ0RBQWdEO1FBQ2hEQyxnQ0FBQWIsQ0FBQSxLQUFJLEVBQUVtQixPQUFBQSxDQUFBQSxPQUFBQSxDQUFNQyxJQUFJLENBQUNGO1FBQ2pCTCxnQ0FBQWIsQ0FBQSxLQUFJLEVBQUVpQixhQUFBQSxDQUFBQSxhQUFBQTtRQUVOLE9BQU9UO0lBQ1Q7SUFFQWEsS0FBS2hCLFNBQXVCLEVBQUU7UUFDNUIsTUFBTWlCLFFBQVFULGdDQUFBYixDQUFBLEtBQUksRUFBRW1CLE9BQUFBLENBQUFBLE9BQUFBLENBQU1JLFNBQVMsQ0FBQyxDQUFDQyxPQUFTQSxLQUFLbkIsU0FBUyxLQUFLQTtRQUVqRSxJQUFJaUIsUUFBUSxDQUFDLEdBQUc7WUFDZCxNQUFNRyxhQUFhWixnQ0FBQWIsQ0FBQSxLQUFJLEVBQUVtQixPQUFBQSxDQUFBQSxPQUFBQSxDQUFNTyxNQUFNLENBQUNKLE9BQU8sRUFBRSxDQUFDLEVBQUU7WUFDbERULGdDQUFBYixDQUFBLEtBQUksRUFBRW1CLE9BQUFBLENBQUFBLE9BQUFBLENBQU1RLE9BQU8sQ0FBQ0Y7WUFDcEJaLGdDQUFBYixDQUFBLEtBQUksRUFBRWlCLGFBQUFBLENBQUFBLGFBQUFBLENBQVk7UUFDcEI7SUFDRjtJQTVDQVcsWUFBWUMsaUJBQWlCLENBQUMsQ0FBRTtRQThDaENDLE9BQUFDLGNBQUEsT0FBQTVCLGNBQUE7bUJBQUFjOztRQXJEQWEsT0FBQUMsY0FBQSxPQUFBakMsaUJBQUE7O21CQUFBOztRQUNBZ0MsT0FBQUMsY0FBQSxPQUFBOUIsZUFBQTs7bUJBQUE7O1FBQ0E2QixPQUFBQyxjQUFBLE9BQUE3QixRQUFBOzttQkFBQTs7UUFNRVcsZ0NBQUFiLENBQUEsS0FBSSxFQUFFNkIsZ0JBQUFBLENBQUFBLGdCQUFBQSxHQUFpQkE7UUFDdkJoQixnQ0FBQWIsQ0FBQSxLQUFJLEVBQUVjLGNBQUFBLENBQUFBLGNBQUFBLEdBQWU7UUFDckJELGdDQUFBYixDQUFBLEtBQUksRUFBRW1CLE9BQUFBLENBQUFBLE9BQUFBLEdBQVEsRUFBRTtJQUNsQjtBQWtERjtBQVJFLFNBQUFGLFlBQWFlLE1BQWM7SUFBZEEsSUFBQUEsV0FBQUEsS0FBQUEsR0FBQUEsU0FBUztJQUNwQixJQUNFLENBQUNuQixnQ0FBQWIsQ0FBQSxLQUFJLEVBQUVjLGNBQUFBLENBQUFBLGNBQUFBLEdBQWVELGdDQUFBYixDQUFBLEtBQUksRUFBRTZCLGdCQUFBQSxDQUFBQSxnQkFBQUEsSUFBa0JHLE1BQUFBLEtBQzlDbkIsZ0NBQUFiLENBQUEsS0FBSSxFQUFFbUIsT0FBQUEsQ0FBQUEsT0FBQUEsQ0FBTWMsTUFBTSxHQUFHLEdBQ3JCO1lBQ0FDO1FBQUFBLENBQUFBLCtDQUFBckIsZ0NBQUFiLENBQUEsS0FBSSxFQUFFbUIsT0FBQUEsQ0FBQUEsT0FBQUEsQ0FBTWdCLEtBQUssdUJBQWpCRCw2Q0FBcUJ0QixJQUFJO0lBQzNCO0FBQ0YiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9hc3RvY2stYWdlbnQtZnJvbnRlbmQvLi4vLi4vLi4vc3JjL2NsaWVudC9jb21wb25lbnRzL3Byb21pc2UtcXVldWUudHM/ZTczNCJdLCJuYW1lcyI6WyJQcm9taXNlUXVldWUiLCJfbWF4Q29uY3VycmVuY3kiLCJfY2xhc3NfcHJpdmF0ZV9maWVsZF9sb29zZV9rZXkiLCJfIiwiX3J1bm5pbmdDb3VudCIsIl9xdWV1ZSIsIl9wcm9jZXNzTmV4dCIsImVucXVldWUiLCJwcm9taXNlRm4iLCJ0YXNrUmVzb2x2ZSIsInRhc2tSZWplY3QiLCJ0YXNrUHJvbWlzZSIsIlByb21pc2UiLCJyZXNvbHZlIiwicmVqZWN0IiwidGFzayIsIl9jbGFzc19wcml2YXRlX2ZpZWxkX2xvb3NlX2Jhc2UiLCJydW5uaW5nQ291bnQiLCJyZXN1bHQiLCJlcnJvciIsInByb2Nlc3NOZXh0IiwiZW5xdWV1ZVJlc3VsdCIsInF1ZXVlIiwicHVzaCIsImJ1bXAiLCJpbmRleCIsImZpbmRJbmRleCIsIml0ZW0iLCJidW1wZWRJdGVtIiwic3BsaWNlIiwidW5zaGlmdCIsImNvbnN0cnVjdG9yIiwibWF4Q29uY3VycmVuY3kiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImZvcmNlZCIsImxlbmd0aCIsIl9jbGFzc19wcml2YXRlX2ZpZWxkX2xvb3NlX2Jhc2VfX3F1ZXVlX3NoaWZ0Iiwic2hpZnQiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/promise-queue.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/app/ReactDevOverlay.js": -/*!*******************************************************************************************!*\ - !*** ./node_modules/next/dist/client/components/react-dev-overlay/app/ReactDevOverlay.js ***! - \*******************************************************************************************/ -/***/ ((module, exports, __webpack_require__) => { - -"use strict"; -eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"default\", ({\n enumerable: true,\n get: function() {\n return ReactDevOverlay;\n }\n}));\nconst _interop_require_wildcard = __webpack_require__(/*! @swc/helpers/_/_interop_require_wildcard */ \"(ssr)/./node_modules/@swc/helpers/esm/_interop_require_wildcard.js\");\nconst _jsxruntime = __webpack_require__(/*! react/jsx-runtime */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react-jsx-runtime.js\");\nconst _react = /*#__PURE__*/ _interop_require_wildcard._(__webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\"));\nconst _shared = __webpack_require__(/*! ../shared */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/shared.js\");\nconst _ShadowPortal = __webpack_require__(/*! ../internal/components/ShadowPortal */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/ShadowPortal.js\");\nconst _BuildError = __webpack_require__(/*! ../internal/container/BuildError */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/container/BuildError.js\");\nconst _Errors = __webpack_require__(/*! ../internal/container/Errors */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/container/Errors.js\");\nconst _parseStack = __webpack_require__(/*! ../internal/helpers/parseStack */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/helpers/parseStack.js\");\nconst _Base = __webpack_require__(/*! ../internal/styles/Base */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/styles/Base.js\");\nconst _ComponentStyles = __webpack_require__(/*! ../internal/styles/ComponentStyles */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/styles/ComponentStyles.js\");\nconst _CssReset = __webpack_require__(/*! ../internal/styles/CssReset */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/styles/CssReset.js\");\nconst _rootlayoutmissingtagserror = __webpack_require__(/*! ../internal/container/root-layout-missing-tags-error */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/container/root-layout-missing-tags-error.js\");\nclass ReactDevOverlay extends _react.PureComponent {\n static getDerivedStateFromError(error) {\n if (!error.stack) return {\n reactError: null\n };\n return {\n reactError: {\n id: 0,\n event: {\n type: _shared.ACTION_UNHANDLED_ERROR,\n reason: error,\n frames: (0, _parseStack.parseStack)(error.stack)\n }\n }\n };\n }\n componentDidCatch(componentErr) {\n this.props.onReactError(componentErr);\n }\n render() {\n var _state_rootLayoutMissingTags, _state_rootLayoutMissingTags1;\n const { state, children } = this.props;\n const { reactError } = this.state;\n const hasBuildError = state.buildError != null;\n const hasRuntimeErrors = Boolean(state.errors.length);\n const hasMissingTags = Boolean((_state_rootLayoutMissingTags = state.rootLayoutMissingTags) == null ? void 0 : _state_rootLayoutMissingTags.length);\n const isMounted = hasBuildError || hasRuntimeErrors || reactError || hasMissingTags;\n return /*#__PURE__*/ (0, _jsxruntime.jsxs)(_jsxruntime.Fragment, {\n children: [\n reactError ? /*#__PURE__*/ (0, _jsxruntime.jsxs)(\"html\", {\n children: [\n /*#__PURE__*/ (0, _jsxruntime.jsx)(\"head\", {}),\n /*#__PURE__*/ (0, _jsxruntime.jsx)(\"body\", {})\n ]\n }) : children,\n isMounted ? /*#__PURE__*/ (0, _jsxruntime.jsxs)(_ShadowPortal.ShadowPortal, {\n children: [\n /*#__PURE__*/ (0, _jsxruntime.jsx)(_CssReset.CssReset, {}),\n /*#__PURE__*/ (0, _jsxruntime.jsx)(_Base.Base, {}),\n /*#__PURE__*/ (0, _jsxruntime.jsx)(_ComponentStyles.ComponentStyles, {}),\n ((_state_rootLayoutMissingTags1 = state.rootLayoutMissingTags) == null ? void 0 : _state_rootLayoutMissingTags1.length) ? /*#__PURE__*/ (0, _jsxruntime.jsx)(_rootlayoutmissingtagserror.RootLayoutMissingTagsError, {\n missingTags: state.rootLayoutMissingTags\n }) : hasBuildError ? /*#__PURE__*/ (0, _jsxruntime.jsx)(_BuildError.BuildError, {\n message: state.buildError,\n versionInfo: state.versionInfo\n }) : reactError ? /*#__PURE__*/ (0, _jsxruntime.jsx)(_Errors.Errors, {\n isAppDir: true,\n versionInfo: state.versionInfo,\n initialDisplayState: \"fullscreen\",\n errors: [\n reactError\n ]\n }) : hasRuntimeErrors ? /*#__PURE__*/ (0, _jsxruntime.jsx)(_Errors.Errors, {\n isAppDir: true,\n initialDisplayState: \"minimized\",\n errors: state.errors,\n versionInfo: state.versionInfo\n }) : undefined\n ]\n }) : undefined\n ]\n });\n }\n constructor(...args){\n super(...args);\n this.state = {\n reactError: null\n };\n }\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=ReactDevOverlay.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2FwcC9SZWFjdERldk92ZXJsYXkuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7OztlQWdCcUJBOzs7Ozs2RUFoQkU7b0NBQ21DOzBDQUU3Qjt3Q0FDRjtvQ0FDSjt3Q0FFSTtrQ0FDTjs2Q0FDVztzQ0FDUDt3REFDa0I7QUFLNUIsTUFBTUEsd0JBQXdCQyxPQUFNQyxhQUFhO0lBVTlELE9BQU9DLHlCQUF5QkMsS0FBWSxFQUF3QjtRQUNsRSxJQUFJLENBQUNBLE1BQU1DLEtBQUssRUFBRSxPQUFPO1lBQUVDLFlBQVk7UUFBSztRQUM1QyxPQUFPO1lBQ0xBLFlBQVk7Z0JBQ1ZDLElBQUk7Z0JBQ0pDLE9BQU87b0JBQ0xDLE1BQU1DLFFBQUFBLHNCQUFzQjtvQkFDNUJDLFFBQVFQO29CQUNSUSxRQUFRQyxDQUFBQSxHQUFBQSxZQUFBQSxVQUFVLEVBQUNULE1BQU1DLEtBQUs7Z0JBQ2hDO1lBQ0Y7UUFDRjtJQUNGO0lBRUFTLGtCQUFrQkMsWUFBbUIsRUFBRTtRQUNyQyxJQUFJLENBQUNDLEtBQUssQ0FBQ0MsWUFBWSxDQUFDRjtJQUMxQjtJQUVBRyxTQUFTO1lBTXdCQyw4QkFtQnRCQTtRQXhCVCxNQUFNLEVBQUVBLEtBQUssRUFBRUMsUUFBUSxFQUFFLEdBQUcsSUFBSSxDQUFDSixLQUFLO1FBQ3RDLE1BQU0sRUFBRVYsVUFBVSxFQUFFLEdBQUcsSUFBSSxDQUFDYSxLQUFLO1FBRWpDLE1BQU1FLGdCQUFnQkYsTUFBTUcsVUFBVSxJQUFJO1FBQzFDLE1BQU1DLG1CQUFtQkMsUUFBUUwsTUFBTU0sTUFBTSxDQUFDQyxNQUFNO1FBQ3BELE1BQU1DLGlCQUFpQkgsUUFBQUEsQ0FBUUwsK0JBQUFBLE1BQU1TLHFCQUFxQixxQkFBM0JULDZCQUE2Qk8sTUFBTTtRQUNsRSxNQUFNRyxZQUNKUixpQkFBaUJFLG9CQUFvQmpCLGNBQWNxQjtRQUVyRCxPQUNFLFdBREYsR0FDRSxJQUFBRyxZQUFBQyxJQUFBLEVBQUFELFlBQUFFLFFBQUE7O2dCQUNHMUIsYUFDQyxXQUREQSxHQUNDLElBQUF3QixZQUFBQyxJQUFBLEVBQUNFLFFBQUFBOztzQ0FDQyxJQUFBSCxZQUFBSSxHQUFBLEVBQUNDLFFBQUFBLENBQUFBO3NDQUNELElBQUFMLFlBQUFJLEdBQUEsRUFBQ0UsUUFBQUEsQ0FBQUE7O3FCQUdIaEI7Z0JBRURTLFlBQ0MsV0FEREEsR0FDQyxJQUFBQyxZQUFBQyxJQUFBLEVBQUNNLGNBQUFBLFlBQVk7O3NDQUNYLElBQUFQLFlBQUFJLEdBQUEsRUFBQ0ksVUFBQUEsUUFBUTtzQ0FDVCxJQUFBUixZQUFBSSxHQUFBLEVBQUNLLE1BQUFBLElBQUk7c0NBQ0wsSUFBQVQsWUFBQUksR0FBQSxFQUFDTSxpQkFBQUEsZUFBZTt3QkFDZnJCLENBQUFBLENBQUFBLGdDQUFBQSxNQUFNUyxxQkFBcUIscUJBQTNCVCw4QkFBNkJPLE1BQU0sSUFDbEMsV0FEa0MsR0FDbEMsSUFBQUksWUFBQUksR0FBQSxFQUFDTyw0QkFBQUEsMEJBQTBCOzRCQUN6QkMsYUFBYXZCLE1BQU1TLHFCQUFxQjs2QkFFeENQLGdCQUNGLFdBREVBLEdBQ0YsSUFBQVMsWUFBQUksR0FBQSxFQUFDUyxZQUFBQSxVQUFVOzRCQUNUQyxTQUFTekIsTUFBTUcsVUFBVTs0QkFDekJ1QixhQUFhMUIsTUFBTTBCLFdBQVc7NkJBRTlCdkMsYUFDRixXQURFQSxHQUNGLElBQUF3QixZQUFBSSxHQUFBLEVBQUNZLFFBQUFBLE1BQU07NEJBQ0xDLFVBQVU7NEJBQ1ZGLGFBQWExQixNQUFNMEIsV0FBVzs0QkFDOUJHLHFCQUFvQjs0QkFDcEJ2QixRQUFRO2dDQUFDbkI7NkJBQVc7NkJBRXBCaUIsbUJBQ0YsV0FERUEsR0FDRixJQUFBTyxZQUFBSSxHQUFBLEVBQUNZLFFBQUFBLE1BQU07NEJBQ0xDLFVBQVU7NEJBQ1ZDLHFCQUFvQjs0QkFDcEJ2QixRQUFRTixNQUFNTSxNQUFNOzRCQUNwQm9CLGFBQWExQixNQUFNMEIsV0FBVzs2QkFFOUJJOztxQkFFSkE7OztJQUdWOzs7YUF6RUE5QixLQUFBQSxHQUFRO1lBQUViLFlBQVk7UUFBSzs7QUEwRTdCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vYXN0b2NrLWFnZW50LWZyb250ZW5kLy4uLy4uLy4uLy4uLy4uL3NyYy9jbGllbnQvY29tcG9uZW50cy9yZWFjdC1kZXYtb3ZlcmxheS9hcHAvUmVhY3REZXZPdmVybGF5LnRzeD9mMWJmIl0sIm5hbWVzIjpbIlJlYWN0RGV2T3ZlcmxheSIsIlJlYWN0IiwiUHVyZUNvbXBvbmVudCIsImdldERlcml2ZWRTdGF0ZUZyb21FcnJvciIsImVycm9yIiwic3RhY2siLCJyZWFjdEVycm9yIiwiaWQiLCJldmVudCIsInR5cGUiLCJBQ1RJT05fVU5IQU5ETEVEX0VSUk9SIiwicmVhc29uIiwiZnJhbWVzIiwicGFyc2VTdGFjayIsImNvbXBvbmVudERpZENhdGNoIiwiY29tcG9uZW50RXJyIiwicHJvcHMiLCJvblJlYWN0RXJyb3IiLCJyZW5kZXIiLCJzdGF0ZSIsImNoaWxkcmVuIiwiaGFzQnVpbGRFcnJvciIsImJ1aWxkRXJyb3IiLCJoYXNSdW50aW1lRXJyb3JzIiwiQm9vbGVhbiIsImVycm9ycyIsImxlbmd0aCIsImhhc01pc3NpbmdUYWdzIiwicm9vdExheW91dE1pc3NpbmdUYWdzIiwiaXNNb3VudGVkIiwiX2pzeHJ1bnRpbWUiLCJqc3hzIiwiRnJhZ21lbnQiLCJodG1sIiwianN4IiwiaGVhZCIsImJvZHkiLCJTaGFkb3dQb3J0YWwiLCJDc3NSZXNldCIsIkJhc2UiLCJDb21wb25lbnRTdHlsZXMiLCJSb290TGF5b3V0TWlzc2luZ1RhZ3NFcnJvciIsIm1pc3NpbmdUYWdzIiwiQnVpbGRFcnJvciIsIm1lc3NhZ2UiLCJ2ZXJzaW9uSW5mbyIsIkVycm9ycyIsImlzQXBwRGlyIiwiaW5pdGlhbERpc3BsYXlTdGF0ZSIsInVuZGVmaW5lZCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/app/ReactDevOverlay.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/app/hot-reloader-client.js": -/*!***********************************************************************************************!*\ - !*** ./node_modules/next/dist/client/components/react-dev-overlay/app/hot-reloader-client.js ***! - \***********************************************************************************************/ -/***/ ((module, exports, __webpack_require__) => { - -"use strict"; -eval("/* module decorator */ module = __webpack_require__.nmd(module);\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"default\", ({\n enumerable: true,\n get: function() {\n return HotReload;\n }\n}));\nconst _interop_require_default = __webpack_require__(/*! @swc/helpers/_/_interop_require_default */ \"(ssr)/./node_modules/@swc/helpers/esm/_interop_require_default.js\");\nconst _jsxruntime = __webpack_require__(/*! react/jsx-runtime */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react-jsx-runtime.js\");\nconst _react = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\nconst _stripansi = /*#__PURE__*/ _interop_require_default._(__webpack_require__(/*! next/dist/compiled/strip-ansi */ \"(ssr)/./node_modules/next/dist/compiled/strip-ansi/index.js\"));\nconst _formatwebpackmessages = /*#__PURE__*/ _interop_require_default._(__webpack_require__(/*! ../internal/helpers/format-webpack-messages */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/helpers/format-webpack-messages.js\"));\nconst _navigation = __webpack_require__(/*! ../../navigation */ \"(ssr)/./node_modules/next/dist/client/components/navigation.js\");\nconst _shared = __webpack_require__(/*! ../shared */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/shared.js\");\nconst _parseStack = __webpack_require__(/*! ../internal/helpers/parseStack */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/helpers/parseStack.js\");\nconst _ReactDevOverlay = /*#__PURE__*/ _interop_require_default._(__webpack_require__(/*! ./ReactDevOverlay */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/app/ReactDevOverlay.js\"));\nconst _useerrorhandler = __webpack_require__(/*! ../internal/helpers/use-error-handler */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/helpers/use-error-handler.js\");\nconst _runtimeerrorhandler = __webpack_require__(/*! ../internal/helpers/runtime-error-handler */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/helpers/runtime-error-handler.js\");\nconst _usewebsocket = __webpack_require__(/*! ../internal/helpers/use-websocket */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/helpers/use-websocket.js\");\nconst _parsecomponentstack = __webpack_require__(/*! ../internal/helpers/parse-component-stack */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/helpers/parse-component-stack.js\");\nconst _hotreloadertypes = __webpack_require__(/*! ../../../../server/dev/hot-reloader-types */ \"(ssr)/./node_modules/next/dist/server/dev/hot-reloader-types.js\");\nconst _extractmodulesfromturbopackmessage = __webpack_require__(/*! ../../../../server/dev/extract-modules-from-turbopack-message */ \"(ssr)/./node_modules/next/dist/server/dev/extract-modules-from-turbopack-message.js\");\nlet mostRecentCompilationHash = null;\nlet __nextDevClientId = Math.round(Math.random() * 100 + Date.now());\nlet reloading = false;\nlet startLatency = null;\nfunction onBeforeFastRefresh(dispatcher, hasUpdates) {\n if (hasUpdates) {\n dispatcher.onBeforeRefresh();\n }\n}\nfunction onFastRefresh(dispatcher, sendMessage, updatedModules) {\n dispatcher.onBuildOk();\n reportHmrLatency(sendMessage, updatedModules);\n dispatcher.onRefresh();\n}\nfunction reportHmrLatency(sendMessage, updatedModules) {\n if (!startLatency) return;\n let endLatency = Date.now();\n const latency = endLatency - startLatency;\n console.log(\"[Fast Refresh] done in \" + latency + \"ms\");\n sendMessage(JSON.stringify({\n event: \"client-hmr-latency\",\n id: window.__nextDevClientId,\n startTime: startLatency,\n endTime: endLatency,\n page: window.location.pathname,\n updatedModules,\n // Whether the page (tab) was hidden at the time the event occurred.\n // This can impact the accuracy of the event's timing.\n isPageHidden: document.visibilityState === \"hidden\"\n }));\n}\n// There is a newer version of the code available.\nfunction handleAvailableHash(hash) {\n // Update last known compilation hash.\n mostRecentCompilationHash = hash;\n}\n/**\n * Is there a newer version of this code available?\n * For webpack: Check if the hash changed compared to __webpack_hash__\n * For Turbopack: Always true because it doesn't have __webpack_hash__\n */ function isUpdateAvailable() {\n if (false) {}\n /* globals __webpack_hash__ */ // __webpack_hash__ is the hash of the current compilation.\n // It's a global variable injected by Webpack.\n return mostRecentCompilationHash !== __webpack_require__.h();\n}\n// Webpack disallows updates in other states.\nfunction canApplyUpdates() {\n // @ts-expect-error module.hot exists\n return module.hot.status() === \"idle\";\n}\nfunction afterApplyUpdates(fn) {\n if (canApplyUpdates()) {\n fn();\n } else {\n function handler(status) {\n if (status === \"idle\") {\n // @ts-expect-error module.hot exists\n module.hot.removeStatusHandler(handler);\n fn();\n }\n }\n // @ts-expect-error module.hot exists\n module.hot.addStatusHandler(handler);\n }\n}\nfunction performFullReload(err, sendMessage) {\n const stackTrace = err && (err.stack && err.stack.split(\"\\n\").slice(0, 5).join(\"\\n\") || err.message || err + \"\");\n sendMessage(JSON.stringify({\n event: \"client-full-reload\",\n stackTrace,\n hadRuntimeError: !!_runtimeerrorhandler.RuntimeErrorHandler.hadRuntimeError,\n dependencyChain: err ? err.dependencyChain : undefined\n }));\n if (reloading) return;\n reloading = true;\n window.location.reload();\n}\n// Attempt to update code on the fly, fall back to a hard reload.\nfunction tryApplyUpdates(onBeforeUpdate, onHotUpdateSuccess, sendMessage, dispatcher) {\n if (!isUpdateAvailable() || !canApplyUpdates()) {\n dispatcher.onBuildOk();\n return;\n }\n function handleApplyUpdates(err, updatedModules) {\n if (err || _runtimeerrorhandler.RuntimeErrorHandler.hadRuntimeError || !updatedModules) {\n if (err) {\n console.warn(\"[Fast Refresh] performing full reload\\n\\n\" + \"Fast Refresh will perform a full reload when you edit a file that's imported by modules outside of the React rendering tree.\\n\" + \"You might have a file which exports a React component but also exports a value that is imported by a non-React component file.\\n\" + \"Consider migrating the non-React component export to a separate file and importing it into both files.\\n\\n\" + \"It is also possible the parent component of the component you edited is a class component, which disables Fast Refresh.\\n\" + \"Fast Refresh requires at least one parent function component in your React tree.\");\n } else if (_runtimeerrorhandler.RuntimeErrorHandler.hadRuntimeError) {\n console.warn(_shared.REACT_REFRESH_FULL_RELOAD_FROM_ERROR);\n }\n performFullReload(err, sendMessage);\n return;\n }\n const hasUpdates = Boolean(updatedModules.length);\n if (typeof onHotUpdateSuccess === \"function\") {\n // Maybe we want to do something.\n onHotUpdateSuccess(updatedModules);\n }\n if (isUpdateAvailable()) {\n // While we were updating, there was a new update! Do it again.\n tryApplyUpdates(hasUpdates ? ()=>{} : onBeforeUpdate, hasUpdates ? ()=>dispatcher.onBuildOk() : onHotUpdateSuccess, sendMessage, dispatcher);\n } else {\n dispatcher.onBuildOk();\n if (false) {}\n }\n }\n // https://webpack.js.org/api/hot-module-replacement/#check\n // @ts-expect-error module.hot exists\n module.hot.check(/* autoApply */ false).then((updatedModules)=>{\n if (!updatedModules) {\n return null;\n }\n if (typeof onBeforeUpdate === \"function\") {\n const hasUpdates = Boolean(updatedModules.length);\n onBeforeUpdate(hasUpdates);\n }\n // https://webpack.js.org/api/hot-module-replacement/#apply\n // @ts-expect-error module.hot exists\n return module.hot.apply();\n }).then((updatedModules)=>{\n handleApplyUpdates(null, updatedModules);\n }, (err)=>{\n handleApplyUpdates(err, null);\n });\n}\n/** Handles messages from the sevrer for the App Router. */ function processMessage(obj, sendMessage, processTurbopackMessage, router, dispatcher) {\n if (!(\"action\" in obj)) {\n return;\n }\n function handleErrors(errors) {\n // \"Massage\" webpack messages.\n const formatted = (0, _formatwebpackmessages.default)({\n errors: errors,\n warnings: []\n });\n // Only show the first error.\n dispatcher.onBuildError(formatted.errors[0]);\n // Also log them to the console.\n for(let i = 0; i < formatted.errors.length; i++){\n console.error((0, _stripansi.default)(formatted.errors[i]));\n }\n // Do not attempt to reload now.\n // We will reload on next success instead.\n if (false) {}\n }\n function handleHotUpdate() {\n if (false) {} else {\n tryApplyUpdates(function onBeforeHotUpdate(hasUpdates) {\n onBeforeFastRefresh(dispatcher, hasUpdates);\n }, function onSuccessfulHotUpdate(webpackUpdatedModules) {\n // Only dismiss it when we're sure it's a hot update.\n // Otherwise it would flicker right before the reload.\n onFastRefresh(dispatcher, sendMessage, webpackUpdatedModules);\n }, sendMessage, dispatcher);\n }\n }\n switch(obj.action){\n case _hotreloadertypes.HMR_ACTIONS_SENT_TO_BROWSER.BUILDING:\n {\n startLatency = Date.now();\n console.log(\"[Fast Refresh] rebuilding\");\n break;\n }\n case _hotreloadertypes.HMR_ACTIONS_SENT_TO_BROWSER.BUILT:\n case _hotreloadertypes.HMR_ACTIONS_SENT_TO_BROWSER.SYNC:\n {\n if (obj.hash) {\n handleAvailableHash(obj.hash);\n }\n const { errors, warnings } = obj;\n // Is undefined when it's a 'built' event\n if (\"versionInfo\" in obj) dispatcher.onVersionInfo(obj.versionInfo);\n const hasErrors = Boolean(errors && errors.length);\n // Compilation with errors (e.g. syntax error or missing modules).\n if (hasErrors) {\n sendMessage(JSON.stringify({\n event: \"client-error\",\n errorCount: errors.length,\n clientId: __nextDevClientId\n }));\n handleErrors(errors);\n return;\n }\n const hasWarnings = Boolean(warnings && warnings.length);\n if (hasWarnings) {\n sendMessage(JSON.stringify({\n event: \"client-warning\",\n warningCount: warnings.length,\n clientId: __nextDevClientId\n }));\n // Print warnings to the console.\n const formattedMessages = (0, _formatwebpackmessages.default)({\n warnings: warnings,\n errors: []\n });\n for(let i = 0; i < formattedMessages.warnings.length; i++){\n if (i === 5) {\n console.warn(\"There were more warnings in other files.\\n\" + \"You can find a complete log in the terminal.\");\n break;\n }\n console.warn((0, _stripansi.default)(formattedMessages.warnings[i]));\n }\n // No early return here as we need to apply modules in the same way between warnings only and compiles without warnings\n }\n sendMessage(JSON.stringify({\n event: \"client-success\",\n clientId: __nextDevClientId\n }));\n if (obj.action === _hotreloadertypes.HMR_ACTIONS_SENT_TO_BROWSER.BUILT) {\n // Handle hot updates\n handleHotUpdate();\n }\n return;\n }\n case _hotreloadertypes.HMR_ACTIONS_SENT_TO_BROWSER.TURBOPACK_CONNECTED:\n {\n processTurbopackMessage({\n type: _hotreloadertypes.HMR_ACTIONS_SENT_TO_BROWSER.TURBOPACK_CONNECTED\n });\n break;\n }\n case _hotreloadertypes.HMR_ACTIONS_SENT_TO_BROWSER.TURBOPACK_MESSAGE:\n {\n const updatedModules = (0, _extractmodulesfromturbopackmessage.extractModulesFromTurbopackMessage)(obj.data);\n dispatcher.onBeforeRefresh();\n processTurbopackMessage({\n type: _hotreloadertypes.HMR_ACTIONS_SENT_TO_BROWSER.TURBOPACK_MESSAGE,\n data: obj.data\n });\n dispatcher.onRefresh();\n if (_runtimeerrorhandler.RuntimeErrorHandler.hadRuntimeError) {\n console.warn(_shared.REACT_REFRESH_FULL_RELOAD_FROM_ERROR);\n performFullReload(null, sendMessage);\n }\n reportHmrLatency(sendMessage, updatedModules);\n break;\n }\n // TODO-APP: make server component change more granular\n case _hotreloadertypes.HMR_ACTIONS_SENT_TO_BROWSER.SERVER_COMPONENT_CHANGES:\n {\n sendMessage(JSON.stringify({\n event: \"server-component-reload-page\",\n clientId: __nextDevClientId\n }));\n if (_runtimeerrorhandler.RuntimeErrorHandler.hadRuntimeError) {\n if (reloading) return;\n reloading = true;\n return window.location.reload();\n }\n (0, _react.startTransition)(()=>{\n router.fastRefresh();\n dispatcher.onRefresh();\n });\n if (false) {}\n return;\n }\n case _hotreloadertypes.HMR_ACTIONS_SENT_TO_BROWSER.RELOAD_PAGE:\n {\n sendMessage(JSON.stringify({\n event: \"client-reload-page\",\n clientId: __nextDevClientId\n }));\n if (reloading) return;\n reloading = true;\n return window.location.reload();\n }\n case _hotreloadertypes.HMR_ACTIONS_SENT_TO_BROWSER.ADDED_PAGE:\n case _hotreloadertypes.HMR_ACTIONS_SENT_TO_BROWSER.REMOVED_PAGE:\n {\n // TODO-APP: potentially only refresh if the currently viewed page was added/removed.\n return router.fastRefresh();\n }\n case _hotreloadertypes.HMR_ACTIONS_SENT_TO_BROWSER.SERVER_ERROR:\n {\n const { errorJSON } = obj;\n if (errorJSON) {\n const { message, stack } = JSON.parse(errorJSON);\n const error = new Error(message);\n error.stack = stack;\n handleErrors([\n error\n ]);\n }\n return;\n }\n case _hotreloadertypes.HMR_ACTIONS_SENT_TO_BROWSER.DEV_PAGES_MANIFEST_UPDATE:\n {\n return;\n }\n default:\n {}\n }\n}\nfunction HotReload(param) {\n let { assetPrefix, children } = param;\n const [state, dispatch] = (0, _shared.useErrorOverlayReducer)();\n const dispatcher = (0, _react.useMemo)(()=>{\n return {\n onBuildOk () {\n dispatch({\n type: _shared.ACTION_BUILD_OK\n });\n },\n onBuildError (message) {\n dispatch({\n type: _shared.ACTION_BUILD_ERROR,\n message\n });\n },\n onBeforeRefresh () {\n dispatch({\n type: _shared.ACTION_BEFORE_REFRESH\n });\n },\n onRefresh () {\n dispatch({\n type: _shared.ACTION_REFRESH\n });\n },\n onVersionInfo (versionInfo) {\n dispatch({\n type: _shared.ACTION_VERSION_INFO,\n versionInfo\n });\n }\n };\n }, [\n dispatch\n ]);\n const handleOnUnhandledError = (0, _react.useCallback)((error)=>{\n const errorDetails = error.details;\n // Component stack is added to the error in use-error-handler in case there was a hydration errror\n const componentStack = errorDetails == null ? void 0 : errorDetails.componentStack;\n const warning = errorDetails == null ? void 0 : errorDetails.warning;\n dispatch({\n type: _shared.ACTION_UNHANDLED_ERROR,\n reason: error,\n frames: (0, _parseStack.parseStack)(error.stack),\n componentStackFrames: componentStack ? (0, _parsecomponentstack.parseComponentStack)(componentStack) : undefined,\n warning\n });\n }, [\n dispatch\n ]);\n const handleOnUnhandledRejection = (0, _react.useCallback)((reason)=>{\n dispatch({\n type: _shared.ACTION_UNHANDLED_REJECTION,\n reason: reason,\n frames: (0, _parseStack.parseStack)(reason.stack)\n });\n }, [\n dispatch\n ]);\n const handleOnReactError = (0, _react.useCallback)(()=>{\n _runtimeerrorhandler.RuntimeErrorHandler.hadRuntimeError = true;\n }, []);\n (0, _useerrorhandler.useErrorHandler)(handleOnUnhandledError, handleOnUnhandledRejection);\n const webSocketRef = (0, _usewebsocket.useWebsocket)(assetPrefix);\n (0, _usewebsocket.useWebsocketPing)(webSocketRef);\n const sendMessage = (0, _usewebsocket.useSendMessage)(webSocketRef);\n const processTurbopackMessage = (0, _usewebsocket.useTurbopack)(sendMessage, (err)=>performFullReload(err, sendMessage));\n const router = (0, _navigation.useRouter)();\n (0, _react.useEffect)(()=>{\n const websocket = webSocketRef.current;\n if (!websocket) return;\n const handler = (event)=>{\n try {\n const obj = JSON.parse(event.data);\n processMessage(obj, sendMessage, processTurbopackMessage, router, dispatcher);\n } catch (err) {\n var _err_stack;\n console.warn(\"[HMR] Invalid message: \" + event.data + \"\\n\" + ((_err_stack = err == null ? void 0 : err.stack) != null ? _err_stack : \"\"));\n }\n };\n websocket.addEventListener(\"message\", handler);\n return ()=>websocket.removeEventListener(\"message\", handler);\n }, [\n sendMessage,\n router,\n webSocketRef,\n dispatcher,\n processTurbopackMessage\n ]);\n return /*#__PURE__*/ (0, _jsxruntime.jsx)(_ReactDevOverlay.default, {\n onReactError: handleOnReactError,\n state: state,\n children: children\n });\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=hot-reloader-client.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2FwcC9ob3QtcmVsb2FkZXItY2xpZW50LmpzIiwibWFwcGluZ3MiOiI7Ozs7OzJDQWtjQTs7O2VBQXdCQTs7Ozs7bUNBamN5QztnRkFDM0M7NEZBQ1k7d0NBQ1I7b0NBVW5CO3dDQUNvQjtzRkFDQzs2Q0FDSTtpREFDSTswQ0FNN0I7aURBQzZCOzhDQUVRO2dFQUtPO0FBV25ELElBQUlDLDRCQUFpQztBQUNyQyxJQUFJQyxvQkFBb0JDLEtBQUtDLEtBQUssQ0FBQ0QsS0FBS0UsTUFBTSxLQUFLLE1BQU1DLEtBQUtDLEdBQUc7QUFDakUsSUFBSUMsWUFBWTtBQUNoQixJQUFJQyxlQUE4QjtBQUVsQyxTQUFTQyxvQkFBb0JDLFVBQXNCLEVBQUVDLFVBQW1CO0lBQ3RFLElBQUlBLFlBQVk7UUFDZEQsV0FBV0UsZUFBZTtJQUM1QjtBQUNGO0FBRUEsU0FBU0MsY0FDUEgsVUFBc0IsRUFDdEJJLFdBQXNDLEVBQ3RDQyxjQUFxQztJQUVyQ0wsV0FBV00sU0FBUztJQUVwQkMsaUJBQWlCSCxhQUFhQztJQUU5QkwsV0FBV1EsU0FBUztBQUN0QjtBQUVBLFNBQVNELGlCQUNQSCxXQUFzQyxFQUN0Q0MsY0FBcUM7SUFFckMsSUFBSSxDQUFDUCxjQUFjO0lBQ25CLElBQUlXLGFBQWFkLEtBQUtDLEdBQUc7SUFDekIsTUFBTWMsVUFBVUQsYUFBYVg7SUFDN0JhLFFBQVFDLEdBQUcsQ0FBQyw0QkFBMEJGLFVBQVE7SUFDOUNOLFlBQ0VTLEtBQUtDLFNBQVMsQ0FBQztRQUNiQyxPQUFPO1FBQ1BDLElBQUlDLE9BQU8xQixpQkFBaUI7UUFDNUIyQixXQUFXcEI7UUFDWHFCLFNBQVNWO1FBQ1RXLE1BQU1ILE9BQU9JLFFBQVEsQ0FBQ0MsUUFBUTtRQUM5QmpCO1FBQ0Esb0VBQW9FO1FBQ3BFLHNEQUFzRDtRQUN0RGtCLGNBQWNDLFNBQVNDLGVBQWUsS0FBSztJQUM3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L0csVUFBVSxDQUFDeEI7WUFDZixJQUFJO2dCQUNGLE1BQU11RCxNQUFNekQsS0FBS21HLEtBQUssQ0FBQ2pHLE1BQU13RixJQUFJO2dCQUNqQ2xDLGVBQ0VDLEtBQ0FsRSxhQUNBbUUseUJBQ0FDLFFBQ0F4RTtZQUVKLEVBQUUsT0FBTzJDLEtBQVU7b0JBRWtDQTtnQkFEbkRoQyxRQUFRZ0QsSUFBSSxDQUNWLDRCQUE0QjVDLE1BQU13RixJQUFJLEdBQUcsT0FBUTVELENBQUFBLENBQUFBLGFBQUFBLE9BQUFBLE9BQUFBLEtBQUFBLElBQUFBLElBQUtFLEtBQUssWUFBVkYsYUFBYztZQUVuRTtRQUNGO1FBRUEyRyxVQUFVRSxnQkFBZ0IsQ0FBQyxXQUFXakg7UUFDdEMsT0FBTyxJQUFNK0csVUFBVUcsbUJBQW1CLENBQUMsV0FBV2xIO0lBQ3hELEdBQUc7UUFBQ25DO1FBQWFvRTtRQUFRdUU7UUFBYy9JO1FBQVl1RTtLQUF3QjtJQUUzRSxPQUNFLFdBREYsR0FDRSxJQUFBbUYsWUFBQUMsR0FBQSxFQUFDQyxpQkFBQUEsT0FBZTtRQUFDQyxjQUFjaEI7UUFBb0J2QixPQUFPQTtrQkFDdkREOztBQUdQIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vYXN0b2NrLWFnZW50LWZyb250ZW5kLy4uLy4uLy4uLy4uLy4uL3NyYy9jbGllbnQvY29tcG9uZW50cy9yZWFjdC1kZXYtb3ZlcmxheS9hcHAvaG90LXJlbG9hZGVyLWNsaWVudC50c3g/MGRiYSJdLCJuYW1lcyI6WyJIb3RSZWxvYWQiLCJtb3N0UmVjZW50Q29tcGlsYXRpb25IYXNoIiwiX19uZXh0RGV2Q2xpZW50SWQiLCJNYXRoIiwicm91bmQiLCJyYW5kb20iLCJEYXRlIiwibm93IiwicmVsb2FkaW5nIiwic3RhcnRMYXRlbmN5Iiwib25CZWZvcmVGYXN0UmVmcmVzaCIsImRpc3BhdGNoZXIiLCJoYXNVcGRhdGVzIiwib25CZWZvcmVSZWZyZXNoIiwib25GYXN0UmVmcmVzaCIsInNlbmRNZXNzYWdlIiwidXBkYXRlZE1vZHVsZXMiLCJvbkJ1aWxkT2siLCJyZXBvcnRIbXJMYXRlbmN5Iiwib25SZWZyZXNoIiwiZW5kTGF0ZW5jeSIsImxhdGVuY3kiLCJjb25zb2xlIiwibG9nIiwiSlNPTiIsInN0cmluZ2lmeSIsImV2ZW50IiwiaWQiLCJ3aW5kb3ciLCJzdGFydFRpbWUiLCJlbmRUaW1lIiwicGFnZSIsImxvY2F0aW9uIiwicGF0aG5hbWUiLCJpc1BhZ2VIaWRkZW4iLCJkb2N1bWVudCIsInZpc2liaWxpdHlTdGF0ZSIsImhhbmRsZUF2YWlsYWJsZUhhc2giLCJoYXNoIiwiaXNVcGRhdGVBdmFpbGFibGUiLCJwcm9jZXNzIiwiZW52IiwiVFVSQk9QQUNLIiwiX193ZWJwYWNrX2hhc2hfXyIsImNhbkFwcGx5VXBkYXRlcyIsIm1vZHVsZSIsImhvdCIsInN0YXR1cyIsImFmdGVyQXBwbHlVcGRhdGVzIiwiZm4iLCJoYW5kbGVyIiwicmVtb3ZlU3RhdHVzSGFuZGxlciIsImFkZFN0YXR1c0hhbmRsZXIiLCJwZXJmb3JtRnVsbFJlbG9hZCIsImVyciIsInN0YWNrVHJhY2UiLCJzdGFjayIsInNwbGl0Iiwic2xpY2UiLCJqb2luIiwibWVzc2FnZSIsImhhZFJ1bnRpbWVFcnJvciIsIlJ1bnRpbWVFcnJvckhhbmRsZXIiLCJkZXBlbmRlbmN5Q2hhaW4iLCJ1bmRlZmluZWQiLCJyZWxvYWQiLCJ0cnlBcHBseVVwZGF0ZXMiLCJvbkJlZm9yZVVwZGF0ZSIsIm9uSG90VXBkYXRlU3VjY2VzcyIsImhhbmRsZUFwcGx5VXBkYXRlcyIsIndhcm4iLCJSRUFDVF9SRUZSRVNIX0ZVTExfUkVMT0FEX0ZST01fRVJST1IiLCJCb29sZWFuIiwibGVuZ3RoIiwiX19ORVhUX1RFU1RfTU9ERSIsInNlbGYiLCJfX05FWFRfSE1SX0NCIiwiY2hlY2siLCJ0aGVuIiwiYXBwbHkiLCJwcm9jZXNzTWVzc2FnZSIsIm9iaiIsInByb2Nlc3NUdXJib3BhY2tNZXNzYWdlIiwicm91dGVyIiwiaGFuZGxlRXJyb3JzIiwiZXJyb3JzIiwiZm9ybWF0dGVkIiwiZm9ybWF0V2VicGFja01lc3NhZ2VzIiwid2FybmluZ3MiLCJvbkJ1aWxkRXJyb3IiLCJpIiwiZXJyb3IiLCJzdHJpcEFuc2kiLCJoYW5kbGVIb3RVcGRhdGUiLCJvbkJlZm9yZUhvdFVwZGF0ZSIsIm9uU3VjY2Vzc2Z1bEhvdFVwZGF0ZSIsIndlYnBhY2tVcGRhdGVkTW9kdWxlcyIsImFjdGlvbiIsIkhNUl9BQ1RJT05TX1NFTlRfVE9fQlJPV1NFUiIsIkJVSUxESU5HIiwiQlVJTFQiLCJTWU5DIiwib25WZXJzaW9uSW5mbyIsInZlcnNpb25JbmZvIiwiaGFzRXJyb3JzIiwiZXJyb3JDb3VudCIsImNsaWVudElkIiwiaGFzV2FybmluZ3MiLCJ3YXJuaW5nQ291bnQiLCJmb3JtYXR0ZWRNZXNzYWdlcyIsIlRVUkJPUEFDS19DT05ORUNURUQiLCJ0eXBlIiwiVFVSQk9QQUNLX01FU1NBR0UiLCJleHRyYWN0TW9kdWxlc0Zyb21UdXJib3BhY2tNZXNzYWdlIiwiZGF0YSIsIlNFUlZFUl9DT01QT05FTlRfQ0hBTkdFUyIsInN0YXJ0VHJhbnNpdGlvbiIsImZhc3RSZWZyZXNoIiwiUkVMT0FEX1BBR0UiLCJBRERFRF9QQUdFIiwiUkVNT1ZFRF9QQUdFIiwiU0VSVkVSX0VSUk9SIiwiZXJyb3JKU09OIiwicGFyc2UiLCJFcnJvciIsIkRFVl9QQUdFU19NQU5JRkVTVF9VUERBVEUiLCJwYXJhbSIsImFzc2V0UHJlZml4IiwiY2hpbGRyZW4iLCJzdGF0ZSIsImRpc3BhdGNoIiwidXNlRXJyb3JPdmVybGF5UmVkdWNlciIsInVzZU1lbW8iLCJBQ1RJT05fQlVJTERfT0siLCJBQ1RJT05fQlVJTERfRVJST1IiLCJBQ1RJT05fQkVGT1JFX1JFRlJFU0giLCJBQ1RJT05fUkVGUkVTSCIsIkFDVElPTl9WRVJTSU9OX0lORk8iLCJoYW5kbGVPblVuaGFuZGxlZEVycm9yIiwidXNlQ2FsbGJhY2siLCJlcnJvckRldGFpbHMiLCJkZXRhaWxzIiwiY29tcG9uZW50U3RhY2siLCJ3YXJuaW5nIiwiQUNUSU9OX1VOSEFORExFRF9FUlJPUiIsInJlYXNvbiIsImZyYW1lcyIsInBhcnNlU3RhY2siLCJjb21wb25lbnRTdGFja0ZyYW1lcyIsInBhcnNlQ29tcG9uZW50U3RhY2siLCJoYW5kbGVPblVuaGFuZGxlZFJlamVjdGlvbiIsIkFDVElPTl9VTkhBTkRMRURfUkVKRUNUSU9OIiwiaGFuZGxlT25SZWFjdEVycm9yIiwidXNlRXJyb3JIYW5kbGVyIiwid2ViU29ja2V0UmVmIiwidXNlV2Vic29ja2V0IiwidXNlV2Vic29ja2V0UGluZyIsInVzZVNlbmRNZXNzYWdlIiwidXNlVHVyYm9wYWNrIiwidXNlUm91dGVyIiwidXNlRWZmZWN0Iiwid2Vic29ja2V0IiwiY3VycmVudCIsImFkZEV2ZW50TGlzdGVuZXIiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwiX2pzeHJ1bnRpbWUiLCJqc3giLCJSZWFjdERldk92ZXJsYXkiLCJvblJlYWN0RXJyb3IiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/app/hot-reloader-client.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/CodeFrame/CodeFrame.js": -/*!***************************************************************************************************************!*\ - !*** ./node_modules/next/dist/client/components/react-dev-overlay/internal/components/CodeFrame/CodeFrame.js ***! - \***************************************************************************************************************/ -/***/ ((module, exports, __webpack_require__) => { - -"use strict"; -eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"CodeFrame\", ({\n enumerable: true,\n get: function() {\n return CodeFrame;\n }\n}));\nconst _interop_require_default = __webpack_require__(/*! @swc/helpers/_/_interop_require_default */ \"(ssr)/./node_modules/@swc/helpers/esm/_interop_require_default.js\");\nconst _interop_require_wildcard = __webpack_require__(/*! @swc/helpers/_/_interop_require_wildcard */ \"(ssr)/./node_modules/@swc/helpers/esm/_interop_require_wildcard.js\");\nconst _jsxruntime = __webpack_require__(/*! react/jsx-runtime */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react-jsx-runtime.js\");\nconst _anser = /*#__PURE__*/ _interop_require_default._(__webpack_require__(/*! next/dist/compiled/anser */ \"(ssr)/./node_modules/next/dist/compiled/anser/index.js\"));\nconst _react = /*#__PURE__*/ _interop_require_wildcard._(__webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\"));\nconst _stripansi = /*#__PURE__*/ _interop_require_default._(__webpack_require__(/*! next/dist/compiled/strip-ansi */ \"(ssr)/./node_modules/next/dist/compiled/strip-ansi/index.js\"));\nconst _stackframe = __webpack_require__(/*! ../../helpers/stack-frame */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/helpers/stack-frame.js\");\nconst _useopenineditor = __webpack_require__(/*! ../../helpers/use-open-in-editor */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/helpers/use-open-in-editor.js\");\nconst _hotlinkedtext = __webpack_require__(/*! ../hot-linked-text */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/hot-linked-text/index.js\");\nconst CodeFrame = function CodeFrame(param) {\n let { stackFrame, codeFrame } = param;\n // Strip leading spaces out of the code frame:\n const formattedFrame = _react.useMemo(()=>{\n const lines = codeFrame.split(/\\r?\\n/g);\n // Find the minimum length of leading spaces after `|` in the code frame\n const miniLeadingSpacesLength = lines.map((line)=>/^>? +\\d+ +\\| [ ]+/.exec((0, _stripansi.default)(line)) === null ? null : /^>? +\\d+ +\\| ( *)/.exec((0, _stripansi.default)(line))).filter(Boolean).map((v)=>v.pop()).reduce((c, n)=>isNaN(c) ? n.length : Math.min(c, n.length), NaN);\n // When the minimum length of leading spaces is greater than 1, remove them\n // from the code frame to help the indentation looks better when there's a lot leading spaces.\n if (miniLeadingSpacesLength > 1) {\n return lines.map((line, a)=>~(a = line.indexOf(\"|\")) ? line.substring(0, a) + line.substring(a).replace(\"^\\\\ {\" + miniLeadingSpacesLength + \"}\", \"\") : line).join(\"\\n\");\n }\n return lines.join(\"\\n\");\n }, [\n codeFrame\n ]);\n const decoded = _react.useMemo(()=>{\n return _anser.default.ansiToJson(formattedFrame, {\n json: true,\n use_classes: true,\n remove_empty: true\n });\n }, [\n formattedFrame\n ]);\n const open = (0, _useopenineditor.useOpenInEditor)({\n file: stackFrame.file,\n lineNumber: stackFrame.lineNumber,\n column: stackFrame.column\n });\n // TODO: make the caret absolute\n return /*#__PURE__*/ (0, _jsxruntime.jsxs)(\"div\", {\n \"data-nextjs-codeframe\": true,\n children: [\n /*#__PURE__*/ (0, _jsxruntime.jsx)(\"div\", {\n children: /*#__PURE__*/ (0, _jsxruntime.jsxs)(\"p\", {\n role: \"link\",\n onClick: open,\n tabIndex: 1,\n title: \"Click to open in your editor\",\n children: [\n /*#__PURE__*/ (0, _jsxruntime.jsxs)(\"span\", {\n children: [\n (0, _stackframe.getFrameSource)(stackFrame),\n \" @\",\n \" \",\n /*#__PURE__*/ (0, _jsxruntime.jsx)(_hotlinkedtext.HotlinkedText, {\n text: stackFrame.methodName\n })\n ]\n }),\n /*#__PURE__*/ (0, _jsxruntime.jsxs)(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n stroke: \"currentColor\",\n strokeWidth: \"2\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n children: [\n /*#__PURE__*/ (0, _jsxruntime.jsx)(\"path\", {\n d: \"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6\"\n }),\n /*#__PURE__*/ (0, _jsxruntime.jsx)(\"polyline\", {\n points: \"15 3 21 3 21 9\"\n }),\n /*#__PURE__*/ (0, _jsxruntime.jsx)(\"line\", {\n x1: \"10\",\n y1: \"14\",\n x2: \"21\",\n y2: \"3\"\n })\n ]\n })\n ]\n })\n }),\n /*#__PURE__*/ (0, _jsxruntime.jsx)(\"pre\", {\n children: decoded.map((entry, index)=>/*#__PURE__*/ (0, _jsxruntime.jsx)(\"span\", {\n style: {\n color: entry.fg ? \"var(--color-\" + entry.fg + \")\" : undefined,\n ...entry.decoration === \"bold\" ? {\n fontWeight: 800\n } : entry.decoration === \"italic\" ? {\n fontStyle: \"italic\"\n } : undefined\n },\n children: entry.content\n }, \"frame-\" + index))\n })\n ]\n });\n};\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=CodeFrame.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL2NvbXBvbmVudHMvQ29kZUZyYW1lL0NvZGVGcmFtZS5qcyIsIm1hcHBpbmdzIjoiOzs7OzZDQVVhQTs7O2VBQUFBOzs7Ozs7NEVBVks7NkVBQ0s7Z0ZBRUQ7d0NBQ1M7NkNBQ0M7MkNBQ0Y7QUFJdkIsTUFBTUEsWUFBc0MsU0FBU0EsVUFBVUMsS0FHckU7SUFIcUUsTUFDcEVDLFVBQVUsRUFDVkMsU0FBUyxFQUNWLEdBSHFFRjtJQUlwRSw4Q0FBOEM7SUFDOUMsTUFBTUcsaUJBQWlCQyxPQUFNQyxPQUFPLENBQVM7UUFDM0MsTUFBTUMsUUFBUUosVUFBVUssS0FBSyxDQUFDO1FBRTlCLHdFQUF3RTtRQUN4RSxNQUFNQywwQkFBMEJGLE1BQzdCRyxHQUFHLENBQUMsQ0FBQ0MsT0FDSixvQkFBb0JDLElBQUksQ0FBQ0MsQ0FBQUEsR0FBQUEsV0FBQUEsT0FBUyxFQUFDRixXQUFXLE9BQzFDLE9BQ0Esb0JBQW9CQyxJQUFJLENBQUNDLENBQUFBLEdBQUFBLFdBQUFBLE9BQVMsRUFBQ0YsUUFFeENHLE1BQU0sQ0FBQ0MsU0FDUEwsR0FBRyxDQUFDLENBQUNNLElBQU1BLEVBQUdDLEdBQUcsSUFDakJDLE1BQU0sQ0FBQyxDQUFDQyxHQUFHQyxJQUFPQyxNQUFNRixLQUFLQyxFQUFFRSxNQUFNLEdBQUdDLEtBQUtDLEdBQUcsQ0FBQ0wsR0FBR0MsRUFBRUUsTUFBTSxHQUFJRztRQUVuRSwyRUFBMkU7UUFDM0UsOEZBQThGO1FBQzlGLElBQUloQiwwQkFBMEIsR0FBRztZQUMvQixPQUFPRixNQUNKRyxHQUFHLENBQUMsQ0FBQ0MsTUFBTWUsSUFDVixDQUFFQSxDQUFBQSxJQUFJZixLQUFLZ0IsT0FBTyxDQUFDLFFBQ2ZoQixLQUFLaUIsU0FBUyxDQUFDLEdBQUdGLEtBQ2xCZixLQUFLaUIsU0FBUyxDQUFDRixHQUFHRyxPQUFPLENBQUMsVUFBUXBCLDBCQUF3QixLQUFJLE1BQzlERSxNQUVMbUIsSUFBSSxDQUFDO1FBQ1Y7UUFDQSxPQUFPdkIsTUFBTXVCLElBQUksQ0FBQztJQUNwQixHQUFHO1FBQUMzQjtLQUFVO0lBRWQsTUFBTTRCLFVBQVUxQixPQUFNQyxPQUFPLENBQUM7UUFDNUIsT0FBTzBCLE9BQUFBLE9BQUssQ0FBQ0MsVUFBVSxDQUFDN0IsZ0JBQWdCO1lBQ3RDOEIsTUFBTTtZQUNOQyxhQUFhO1lBQ2JDLGNBQWM7UUFDaEI7SUFDRixHQUFHO1FBQUNoQztLQUFlO0lBRW5CLE1BQU1pQyxPQUFPQyxDQUFBQSxHQUFBQSxpQkFBQUEsZUFBZSxFQUFDO1FBQzNCQyxNQUFNckMsV0FBV3FDLElBQUk7UUFDckJDLFlBQVl0QyxXQUFXc0MsVUFBVTtRQUNqQ0MsUUFBUXZDLFdBQVd1QyxNQUFNO0lBQzNCO0lBRUEsZ0NBQWdDO0lBQ2hDLE9BQ0UsV0FERixHQUNFLElBQUFDLFlBQUFDLElBQUEsRUFBQ0MsT0FBQUE7UUFBSUMseUJBQXFCOzswQkFDeEIsSUFBQUgsWUFBQUksR0FBQSxFQUFDRixPQUFBQTswQkFDQyxrQkFBQUYsWUFBQUMsSUFBQSxFQUFDSSxLQUFBQTtvQkFDQ0MsTUFBSztvQkFDTEMsU0FBU1o7b0JBQ1RhLFVBQVU7b0JBQ1ZDLE9BQU07O3NDQUVOLElBQUFULFlBQUFDLElBQUEsRUFBQ1MsUUFBQUE7O2dDQUNFQyxDQUFBQSxHQUFBQSxZQUFBQSxjQUFjLEVBQUNuRDtnQ0FBWTtnQ0FBRzs4Q0FDL0IsSUFBQXdDLFlBQUFJLEdBQUEsRUFBQ1EsZUFBQUEsYUFBYTtvQ0FBQ0MsTUFBTXJELFdBQVdzRCxVQUFVOzs7O3NDQUU1QyxJQUFBZCxZQUFBQyxJQUFBLEVBQUNjLE9BQUFBOzRCQUNDQyxPQUFNOzRCQUNOQyxTQUFROzRCQUNSQyxNQUFLOzRCQUNMQyxRQUFPOzRCQUNQQyxhQUFZOzRCQUNaQyxlQUFjOzRCQUNkQyxnQkFBZTs7OENBRWYsSUFBQXRCLFlBQUFJLEdBQUEsRUFBQ21CLFFBQUFBO29DQUFLQyxHQUFFOzs4Q0FDUixJQUFBeEIsWUFBQUksR0FBQSxFQUFDcUIsWUFBQUE7b0NBQVNDLFFBQU87OzhDQUNqQixJQUFBMUIsWUFBQUksR0FBQSxFQUFDbkMsUUFBQUE7b0NBQUswRCxJQUFHO29DQUFLQyxJQUFHO29DQUFLQyxJQUFHO29DQUFLQyxJQUFHOzs7Ozs7OzBCQUl2QyxJQUFBOUIsWUFBQUksR0FBQSxFQUFDMkIsT0FBQUE7MEJBQ0UxQyxRQUFRckIsR0FBRyxDQUFDLENBQUNnRSxPQUFPQyxRQUNuQixXQURtQkEsR0FDbkIsSUFBQWpDLFlBQUFJLEdBQUEsRUFBQ00sUUFBQUE7d0JBRUN3QixPQUFPOzRCQUNMQyxPQUFPSCxNQUFNSSxFQUFFLEdBQUcsaUJBQWVKLE1BQU1JLEVBQUUsR0FBQyxNQUFLQzs0QkFDL0MsR0FBSUwsTUFBTU0sVUFBVSxLQUFLLFNBQ3JCO2dDQUFFQyxZQUFZOzRCQUFJLElBQ2xCUCxNQUFNTSxVQUFVLEtBQUssV0FDckI7Z0NBQUVFLFdBQVc7NEJBQVMsSUFDdEJILFNBQVM7d0JBQ2Y7a0NBRUNMLE1BQU1TLE9BQU87dUJBVlQsV0FBU1I7Ozs7QUFnQjFCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vYXN0b2NrLWFnZW50LWZyb250ZW5kLy4uLy4uLy4uLy4uLy4uL3NyYy9jbGllbnQvY29tcG9uZW50cy9yZWFjdC1kZXYtb3ZlcmxheS9pbnRlcm5hbC9jb21wb25lbnRzL0NvZGVGcmFtZS9Db2RlRnJhbWUudHN4P2I3OGIiXSwibmFtZXMiOlsiQ29kZUZyYW1lIiwicGFyYW0iLCJzdGFja0ZyYW1lIiwiY29kZUZyYW1lIiwiZm9ybWF0dGVkRnJhbWUiLCJSZWFjdCIsInVzZU1lbW8iLCJsaW5lcyIsInNwbGl0IiwibWluaUxlYWRpbmdTcGFjZXNMZW5ndGgiLCJtYXAiLCJsaW5lIiwiZXhlYyIsInN0cmlwQW5zaSIsImZpbHRlciIsIkJvb2xlYW4iLCJ2IiwicG9wIiwicmVkdWNlIiwiYyIsIm4iLCJpc05hTiIsImxlbmd0aCIsIk1hdGgiLCJtaW4iLCJOYU4iLCJhIiwiaW5kZXhPZiIsInN1YnN0cmluZyIsInJlcGxhY2UiLCJqb2luIiwiZGVjb2RlZCIsIkFuc2VyIiwiYW5zaVRvSnNvbiIsImpzb24iLCJ1c2VfY2xhc3NlcyIsInJlbW92ZV9lbXB0eSIsIm9wZW4iLCJ1c2VPcGVuSW5FZGl0b3IiLCJmaWxlIiwibGluZU51bWJlciIsImNvbHVtbiIsIl9qc3hydW50aW1lIiwianN4cyIsImRpdiIsImRhdGEtbmV4dGpzLWNvZGVmcmFtZSIsImpzeCIsInAiLCJyb2xlIiwib25DbGljayIsInRhYkluZGV4IiwidGl0bGUiLCJzcGFuIiwiZ2V0RnJhbWVTb3VyY2UiLCJIb3RsaW5rZWRUZXh0IiwidGV4dCIsIm1ldGhvZE5hbWUiLCJzdmciLCJ4bWxucyIsInZpZXdCb3giLCJmaWxsIiwic3Ryb2tlIiwic3Ryb2tlV2lkdGgiLCJzdHJva2VMaW5lY2FwIiwic3Ryb2tlTGluZWpvaW4iLCJwYXRoIiwiZCIsInBvbHlsaW5lIiwicG9pbnRzIiwieDEiLCJ5MSIsIngyIiwieTIiLCJwcmUiLCJlbnRyeSIsImluZGV4Iiwic3R5bGUiLCJjb2xvciIsImZnIiwidW5kZWZpbmVkIiwiZGVjb3JhdGlvbiIsImZvbnRXZWlnaHQiLCJmb250U3R5bGUiLCJjb250ZW50Il0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/CodeFrame/CodeFrame.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/CodeFrame/index.js": -/*!***********************************************************************************************************!*\ - !*** ./node_modules/next/dist/client/components/react-dev-overlay/internal/components/CodeFrame/index.js ***! - \***********************************************************************************************************/ -/***/ ((module, exports, __webpack_require__) => { - -"use strict"; -eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"CodeFrame\", ({\n enumerable: true,\n get: function() {\n return _CodeFrame.CodeFrame;\n }\n}));\nconst _CodeFrame = __webpack_require__(/*! ./CodeFrame */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/CodeFrame/CodeFrame.js\");\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=index.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL2NvbXBvbmVudHMvQ29kZUZyYW1lL2luZGV4LmpzIiwibWFwcGluZ3MiOiI7Ozs7NkNBQVNBOzs7ZUFBQUEsV0FBQUEsU0FBUzs7O3VDQUFRIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vYXN0b2NrLWFnZW50LWZyb250ZW5kLy4uLy4uLy4uLy4uLy4uL3NyYy9jbGllbnQvY29tcG9uZW50cy9yZWFjdC1kZXYtb3ZlcmxheS9pbnRlcm5hbC9jb21wb25lbnRzL0NvZGVGcmFtZS9pbmRleC50c3g/NGU3ZCJdLCJuYW1lcyI6WyJDb2RlRnJhbWUiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/CodeFrame/index.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/CodeFrame/styles.js": -/*!************************************************************************************************************!*\ - !*** ./node_modules/next/dist/client/components/react-dev-overlay/internal/components/CodeFrame/styles.js ***! - \************************************************************************************************************/ -/***/ ((module, exports, __webpack_require__) => { - -"use strict"; -eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"styles\", ({\n enumerable: true,\n get: function() {\n return styles;\n }\n}));\nconst _tagged_template_literal_loose = __webpack_require__(/*! @swc/helpers/_/_tagged_template_literal_loose */ \"(ssr)/./node_modules/@swc/helpers/esm/_tagged_template_literal_loose.js\");\nconst _nooptemplate = __webpack_require__(/*! ../../helpers/noop-template */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/helpers/noop-template.js\");\nfunction _templateObject() {\n const data = _tagged_template_literal_loose._([\n \"\\n [data-nextjs-codeframe] {\\n overflow: auto;\\n border-radius: var(--size-gap-half);\\n background-color: var(--color-ansi-bg);\\n color: var(--color-ansi-fg);\\n }\\n [data-nextjs-codeframe]::selection,\\n [data-nextjs-codeframe] *::selection {\\n background-color: var(--color-ansi-selection);\\n }\\n [data-nextjs-codeframe] * {\\n color: inherit;\\n background-color: transparent;\\n font-family: var(--font-stack-monospace);\\n }\\n\\n [data-nextjs-codeframe] > * {\\n margin: 0;\\n padding: calc(var(--size-gap) + var(--size-gap-half))\\n calc(var(--size-gap-double) + var(--size-gap-half));\\n }\\n [data-nextjs-codeframe] > div {\\n display: inline-block;\\n width: auto;\\n min-width: 100%;\\n border-bottom: 1px solid var(--color-ansi-bright-black);\\n }\\n [data-nextjs-codeframe] > div > p {\\n display: flex;\\n align-items: center;\\n justify-content: space-between;\\n cursor: pointer;\\n margin: 0;\\n }\\n [data-nextjs-codeframe] > div > p:hover {\\n text-decoration: underline dotted;\\n }\\n [data-nextjs-codeframe] div > p > svg {\\n width: auto;\\n height: 1em;\\n margin-left: 8px;\\n }\\n [data-nextjs-codeframe] div > pre {\\n overflow: hidden;\\n display: inline-block;\\n }\\n\"\n ]);\n _templateObject = function() {\n return data;\n };\n return data;\n}\nconst styles = (0, _nooptemplate.noop)(_templateObject());\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=styles.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL2NvbXBvbmVudHMvQ29kZUZyYW1lL3N0eWxlcy5qcyIsIm1hcHBpbmdzIjoiOzs7OzBDQW1EU0E7OztlQUFBQTs7OzswQ0FuRG1COzs7Ozs7Ozs7O0FBRTVCLE1BQU1BLFNBQUFBLENBQUFBLEdBQVNDLGNBQUFBLElBQUcsRUFBQUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9hc3RvY2stYWdlbnQtZnJvbnRlbmQvLi4vLi4vLi4vLi4vLi4vc3JjL2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL2NvbXBvbmVudHMvQ29kZUZyYW1lL3N0eWxlcy50c3g/ZDI3MSJdLCJuYW1lcyI6WyJzdHlsZXMiLCJjc3MiLCJfdGVtcGxhdGVPYmplY3QiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/CodeFrame/styles.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/Dialog.js": -/*!*********************************************************************************************************!*\ - !*** ./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/Dialog.js ***! - \*********************************************************************************************************/ -/***/ ((module, exports, __webpack_require__) => { - -"use strict"; -eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"Dialog\", ({\n enumerable: true,\n get: function() {\n return Dialog;\n }\n}));\nconst _interop_require_wildcard = __webpack_require__(/*! @swc/helpers/_/_interop_require_wildcard */ \"(ssr)/./node_modules/@swc/helpers/esm/_interop_require_wildcard.js\");\nconst _jsxruntime = __webpack_require__(/*! react/jsx-runtime */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react-jsx-runtime.js\");\nconst _react = /*#__PURE__*/ _interop_require_wildcard._(__webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\"));\nconst _useonclickoutside = __webpack_require__(/*! ../../hooks/use-on-click-outside */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/hooks/use-on-click-outside.js\");\nconst Dialog = function Dialog(param) {\n let { children, type, onClose, ...props } = param;\n const [dialog, setDialog] = _react.useState(null);\n const [role, setRole] = _react.useState(typeof document !== \"undefined\" && document.hasFocus() ? \"dialog\" : undefined);\n const onDialog = _react.useCallback((node)=>{\n setDialog(node);\n }, []);\n (0, _useonclickoutside.useOnClickOutside)(dialog, (e)=>{\n e.preventDefault();\n return onClose == null ? void 0 : onClose();\n });\n // Make HTMLElements with `role=link` accessible to be triggered by the\n // keyboard, i.e. [Enter].\n _react.useEffect(()=>{\n if (dialog == null) {\n return;\n }\n const root = dialog.getRootNode();\n // Always true, but we do this for TypeScript:\n if (!(root instanceof ShadowRoot)) {\n return;\n }\n const shadowRoot = root;\n function handler(e) {\n const el = shadowRoot.activeElement;\n if (e.key === \"Enter\" && el instanceof HTMLElement && el.getAttribute(\"role\") === \"link\") {\n e.preventDefault();\n e.stopPropagation();\n el.click();\n }\n }\n function handleFocus() {\n // safari will force itself as the active application when a background page triggers any sort of autofocus\n // this is a workaround to only set the dialog role if the document has focus\n setRole(document.hasFocus() ? \"dialog\" : undefined);\n }\n shadowRoot.addEventListener(\"keydown\", handler);\n window.addEventListener(\"focus\", handleFocus);\n window.addEventListener(\"blur\", handleFocus);\n return ()=>{\n shadowRoot.removeEventListener(\"keydown\", handler);\n window.removeEventListener(\"focus\", handleFocus);\n window.removeEventListener(\"blur\", handleFocus);\n };\n }, [\n dialog\n ]);\n return /*#__PURE__*/ (0, _jsxruntime.jsxs)(\"div\", {\n ref: onDialog,\n \"data-nextjs-dialog\": true,\n tabIndex: -1,\n role: role,\n \"aria-labelledby\": props[\"aria-labelledby\"],\n \"aria-describedby\": props[\"aria-describedby\"],\n \"aria-modal\": \"true\",\n children: [\n /*#__PURE__*/ (0, _jsxruntime.jsx)(\"div\", {\n \"data-nextjs-dialog-banner\": true,\n className: \"banner-\" + type\n }),\n children\n ]\n });\n};\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=Dialog.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL2NvbXBvbmVudHMvRGlhbG9nL0RpYWxvZy5qcyIsIm1hcHBpbmdzIjoiOzs7OzBDQTBGU0E7OztlQUFBQTs7Ozs7NkVBMUZjOytDQUNXO0FBVWxDLE1BQU1BLFNBQWdDLFNBQVNBLE9BQU9DLEtBS3JEO0lBTHFELE1BQ3BEQyxRQUFRLEVBQ1JDLElBQUksRUFDSkMsT0FBTyxFQUNQLEdBQUdDLE9BQ0osR0FMcURKO0lBTXBELE1BQU0sQ0FBQ0ssUUFBUUMsVUFBVSxHQUFHQyxPQUFNQyxRQUFRLENBQXdCO0lBQ2xFLE1BQU0sQ0FBQ0MsTUFBTUMsUUFBUSxHQUFHSCxPQUFNQyxRQUFRLENBQ3BDLE9BQU9HLGFBQWEsZUFBZUEsU0FBU0MsUUFBUSxLQUNoRCxXQUNBQztJQUVOLE1BQU1DLFdBQVdQLE9BQU1RLFdBQVcsQ0FBQyxDQUFDQztRQUNsQ1YsVUFBVVU7SUFDWixHQUFHLEVBQUU7SUFDTEMsQ0FBQUEsR0FBQUEsbUJBQUFBLGlCQUFpQixFQUFDWixRQUFRLENBQUNhO1FBQ3pCQSxFQUFFQyxjQUFjO1FBQ2hCLE9BQU9oQixXQUFBQSxPQUFBQSxLQUFBQSxJQUFBQTtJQUNUO0lBRUEsdUVBQXVFO0lBQ3ZFLDBCQUEwQjtJQUMxQkksT0FBTWEsU0FBUyxDQUFDO1FBQ2QsSUFBSWYsVUFBVSxNQUFNO1lBQ2xCO1FBQ0Y7UUFFQSxNQUFNZ0IsT0FBT2hCLE9BQU9pQixXQUFXO1FBQy9CLDhDQUE4QztRQUM5QyxJQUFJLENBQUVELENBQUFBLGdCQUFnQkUsVUFBQUEsR0FBYTtZQUNqQztRQUNGO1FBQ0EsTUFBTUMsYUFBYUg7UUFDbkIsU0FBU0ksUUFBUVAsQ0FBZ0I7WUFDL0IsTUFBTVEsS0FBS0YsV0FBV0csYUFBYTtZQUNuQyxJQUNFVCxFQUFFVSxHQUFHLEtBQUssV0FDVkYsY0FBY0csZUFDZEgsR0FBR0ksWUFBWSxDQUFDLFlBQVksUUFDNUI7Z0JBQ0FaLEVBQUVDLGNBQWM7Z0JBQ2hCRCxFQUFFYSxlQUFlO2dCQUVqQkwsR0FBR00sS0FBSztZQUNWO1FBQ0Y7UUFFQSxTQUFTQztZQUNQLDJHQUEyRztZQUMzRyw2RUFBNkU7WUFDN0V2QixRQUFRQyxTQUFTQyxRQUFRLEtBQUssV0FBV0M7UUFDM0M7UUFFQVcsV0FBV1UsZ0JBQWdCLENBQUMsV0FBV1Q7UUFDdkNVLE9BQU9ELGdCQUFnQixDQUFDLFNBQVNEO1FBQ2pDRSxPQUFPRCxnQkFBZ0IsQ0FBQyxRQUFRRDtRQUNoQyxPQUFPO1lBQ0xULFdBQVdZLG1CQUFtQixDQUFDLFdBQVdYO1lBQzFDVSxPQUFPQyxtQkFBbUIsQ0FBQyxTQUFTSDtZQUNwQ0UsT0FBT0MsbUJBQW1CLENBQUMsUUFBUUg7UUFDckM7SUFDRixHQUFHO1FBQUM1QjtLQUFPO0lBRVgsT0FDRSxXQURGLEdBQ0UsSUFBQWdDLFlBQUFDLElBQUEsRUFBQ0MsT0FBQUE7UUFDQ0MsS0FBSzFCO1FBQ0wyQixzQkFBa0I7UUFDbEJDLFVBQVUsQ0FBQztRQUNYakMsTUFBTUE7UUFDTmtDLG1CQUFpQnZDLEtBQUssQ0FBQyxrQkFBa0I7UUFDekN3QyxvQkFBa0J4QyxLQUFLLENBQUMsbUJBQW1CO1FBQzNDeUMsY0FBVzs7MEJBRVgsSUFBQVIsWUFBQVMsR0FBQSxFQUFDUCxPQUFBQTtnQkFBSVEsNkJBQXlCO2dCQUFDQyxXQUFXLFlBQVU5Qzs7WUFDbkREOzs7QUFHUCIsInNvdXJjZXMiOlsid2VicGFjazovL2FzdG9jay1hZ2VudC1mcm9udGVuZC8uLi8uLi8uLi8uLi8uLi9zcmMvY2xpZW50L2NvbXBvbmVudHMvcmVhY3QtZGV2LW92ZXJsYXkvaW50ZXJuYWwvY29tcG9uZW50cy9EaWFsb2cvRGlhbG9nLnRzeD9lNDdkIl0sIm5hbWVzIjpbIkRpYWxvZyIsInBhcmFtIiwiY2hpbGRyZW4iLCJ0eXBlIiwib25DbG9zZSIsInByb3BzIiwiZGlhbG9nIiwic2V0RGlhbG9nIiwiUmVhY3QiLCJ1c2VTdGF0ZSIsInJvbGUiLCJzZXRSb2xlIiwiZG9jdW1lbnQiLCJoYXNGb2N1cyIsInVuZGVmaW5lZCIsIm9uRGlhbG9nIiwidXNlQ2FsbGJhY2siLCJub2RlIiwidXNlT25DbGlja091dHNpZGUiLCJlIiwicHJldmVudERlZmF1bHQiLCJ1c2VFZmZlY3QiLCJyb290IiwiZ2V0Um9vdE5vZGUiLCJTaGFkb3dSb290Iiwic2hhZG93Um9vdCIsImhhbmRsZXIiLCJlbCIsImFjdGl2ZUVsZW1lbnQiLCJrZXkiLCJIVE1MRWxlbWVudCIsImdldEF0dHJpYnV0ZSIsInN0b3BQcm9wYWdhdGlvbiIsImNsaWNrIiwiaGFuZGxlRm9jdXMiLCJhZGRFdmVudExpc3RlbmVyIiwid2luZG93IiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsIl9qc3hydW50aW1lIiwianN4cyIsImRpdiIsInJlZiIsImRhdGEtbmV4dGpzLWRpYWxvZyIsInRhYkluZGV4IiwiYXJpYS1sYWJlbGxlZGJ5IiwiYXJpYS1kZXNjcmliZWRieSIsImFyaWEtbW9kYWwiLCJqc3giLCJkYXRhLW5leHRqcy1kaWFsb2ctYmFubmVyIiwiY2xhc3NOYW1lIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/Dialog.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/DialogBody.js": -/*!*************************************************************************************************************!*\ - !*** ./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/DialogBody.js ***! - \*************************************************************************************************************/ -/***/ ((module, exports, __webpack_require__) => { - -"use strict"; -eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"DialogBody\", ({\n enumerable: true,\n get: function() {\n return DialogBody;\n }\n}));\nconst _interop_require_wildcard = __webpack_require__(/*! @swc/helpers/_/_interop_require_wildcard */ \"(ssr)/./node_modules/@swc/helpers/esm/_interop_require_wildcard.js\");\nconst _jsxruntime = __webpack_require__(/*! react/jsx-runtime */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react-jsx-runtime.js\");\nconst _react = /*#__PURE__*/ _interop_require_wildcard._(__webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\"));\nconst DialogBody = function DialogBody(param) {\n let { children, className } = param;\n return /*#__PURE__*/ (0, _jsxruntime.jsx)(\"div\", {\n \"data-nextjs-dialog-body\": true,\n className: className,\n children: children\n });\n};\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=DialogBody.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL2NvbXBvbmVudHMvRGlhbG9nL0RpYWxvZ0JvZHkuanMiLCJtYXBwaW5ncyI6Ijs7Ozs4Q0FrQlNBOzs7ZUFBQUE7Ozs7OzZFQWxCYztBQU92QixNQUFNQSxhQUF3QyxTQUFTQSxXQUFXQyxLQUdqRTtJQUhpRSxNQUNoRUMsUUFBUSxFQUNSQyxTQUFTLEVBQ1YsR0FIaUVGO0lBSWhFLE9BQ0UsV0FERixHQUNFLElBQUFHLFlBQUFDLEdBQUEsRUFBQ0MsT0FBQUE7UUFBSUMsMkJBQXVCO1FBQUNKLFdBQVdBO2tCQUNyQ0Q7O0FBR1AiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9hc3RvY2stYWdlbnQtZnJvbnRlbmQvLi4vLi4vLi4vLi4vLi4vc3JjL2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL2NvbXBvbmVudHMvRGlhbG9nL0RpYWxvZ0JvZHkudHN4PzJhMmQiXSwibmFtZXMiOlsiRGlhbG9nQm9keSIsInBhcmFtIiwiY2hpbGRyZW4iLCJjbGFzc05hbWUiLCJfanN4cnVudGltZSIsImpzeCIsImRpdiIsImRhdGEtbmV4dGpzLWRpYWxvZy1ib2R5Il0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/DialogBody.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/DialogContent.js": -/*!****************************************************************************************************************!*\ - !*** ./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/DialogContent.js ***! - \****************************************************************************************************************/ -/***/ ((module, exports, __webpack_require__) => { - -"use strict"; -eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"DialogContent\", ({\n enumerable: true,\n get: function() {\n return DialogContent;\n }\n}));\nconst _interop_require_wildcard = __webpack_require__(/*! @swc/helpers/_/_interop_require_wildcard */ \"(ssr)/./node_modules/@swc/helpers/esm/_interop_require_wildcard.js\");\nconst _jsxruntime = __webpack_require__(/*! react/jsx-runtime */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react-jsx-runtime.js\");\nconst _react = /*#__PURE__*/ _interop_require_wildcard._(__webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\"));\nconst DialogContent = function DialogContent(param) {\n let { children, className } = param;\n return /*#__PURE__*/ (0, _jsxruntime.jsx)(\"div\", {\n \"data-nextjs-dialog-content\": true,\n className: className,\n children: children\n });\n};\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=DialogContent.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL2NvbXBvbmVudHMvRGlhbG9nL0RpYWxvZ0NvbnRlbnQuanMiLCJtYXBwaW5ncyI6Ijs7OztpREFrQlNBOzs7ZUFBQUE7Ozs7OzZFQWxCYztBQU92QixNQUFNQSxnQkFBOEMsU0FBU0EsY0FBY0MsS0FHMUU7SUFIMEUsTUFDekVDLFFBQVEsRUFDUkMsU0FBUyxFQUNWLEdBSDBFRjtJQUl6RSxPQUNFLFdBREYsR0FDRSxJQUFBRyxZQUFBQyxHQUFBLEVBQUNDLE9BQUFBO1FBQUlDLDhCQUEwQjtRQUFDSixXQUFXQTtrQkFDeENEOztBQUdQIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vYXN0b2NrLWFnZW50LWZyb250ZW5kLy4uLy4uLy4uLy4uLy4uL3NyYy9jbGllbnQvY29tcG9uZW50cy9yZWFjdC1kZXYtb3ZlcmxheS9pbnRlcm5hbC9jb21wb25lbnRzL0RpYWxvZy9EaWFsb2dDb250ZW50LnRzeD9kZDdjIl0sIm5hbWVzIjpbIkRpYWxvZ0NvbnRlbnQiLCJwYXJhbSIsImNoaWxkcmVuIiwiY2xhc3NOYW1lIiwiX2pzeHJ1bnRpbWUiLCJqc3giLCJkaXYiLCJkYXRhLW5leHRqcy1kaWFsb2ctY29udGVudCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/DialogContent.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/DialogHeader.js": -/*!***************************************************************************************************************!*\ - !*** ./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/DialogHeader.js ***! - \***************************************************************************************************************/ -/***/ ((module, exports, __webpack_require__) => { - -"use strict"; -eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"DialogHeader\", ({\n enumerable: true,\n get: function() {\n return DialogHeader;\n }\n}));\nconst _interop_require_wildcard = __webpack_require__(/*! @swc/helpers/_/_interop_require_wildcard */ \"(ssr)/./node_modules/@swc/helpers/esm/_interop_require_wildcard.js\");\nconst _jsxruntime = __webpack_require__(/*! react/jsx-runtime */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react-jsx-runtime.js\");\nconst _react = /*#__PURE__*/ _interop_require_wildcard._(__webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\"));\nconst DialogHeader = function DialogHeader(param) {\n let { children, className } = param;\n return /*#__PURE__*/ (0, _jsxruntime.jsx)(\"div\", {\n \"data-nextjs-dialog-header\": true,\n className: className,\n children: children\n });\n};\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=DialogHeader.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL2NvbXBvbmVudHMvRGlhbG9nL0RpYWxvZ0hlYWRlci5qcyIsIm1hcHBpbmdzIjoiOzs7O2dEQWtCU0E7OztlQUFBQTs7Ozs7NkVBbEJjO0FBT3ZCLE1BQU1BLGVBQTRDLFNBQVNBLGFBQWFDLEtBR3ZFO0lBSHVFLE1BQ3RFQyxRQUFRLEVBQ1JDLFNBQVMsRUFDVixHQUh1RUY7SUFJdEUsT0FDRSxXQURGLEdBQ0UsSUFBQUcsWUFBQUMsR0FBQSxFQUFDQyxPQUFBQTtRQUFJQyw2QkFBeUI7UUFBQ0osV0FBV0E7a0JBQ3ZDRDs7QUFHUCIsInNvdXJjZXMiOlsid2VicGFjazovL2FzdG9jay1hZ2VudC1mcm9udGVuZC8uLi8uLi8uLi8uLi8uLi9zcmMvY2xpZW50L2NvbXBvbmVudHMvcmVhY3QtZGV2LW92ZXJsYXkvaW50ZXJuYWwvY29tcG9uZW50cy9EaWFsb2cvRGlhbG9nSGVhZGVyLnRzeD80NmY4Il0sIm5hbWVzIjpbIkRpYWxvZ0hlYWRlciIsInBhcmFtIiwiY2hpbGRyZW4iLCJjbGFzc05hbWUiLCJfanN4cnVudGltZSIsImpzeCIsImRpdiIsImRhdGEtbmV4dGpzLWRpYWxvZy1oZWFkZXIiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/DialogHeader.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/index.js": -/*!********************************************************************************************************!*\ - !*** ./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/index.js ***! - \********************************************************************************************************/ -/***/ ((module, exports, __webpack_require__) => { - -"use strict"; -eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\n0 && (0);\nfunction _export(target, all) {\n for(var name in all)Object.defineProperty(target, name, {\n enumerable: true,\n get: all[name]\n });\n}\n_export(exports, {\n Dialog: function() {\n return _Dialog.Dialog;\n },\n DialogBody: function() {\n return _DialogBody.DialogBody;\n },\n DialogContent: function() {\n return _DialogContent.DialogContent;\n },\n DialogHeader: function() {\n return _DialogHeader.DialogHeader;\n },\n styles: function() {\n return _styles.styles;\n }\n});\nconst _Dialog = __webpack_require__(/*! ./Dialog */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/Dialog.js\");\nconst _DialogBody = __webpack_require__(/*! ./DialogBody */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/DialogBody.js\");\nconst _DialogContent = __webpack_require__(/*! ./DialogContent */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/DialogContent.js\");\nconst _DialogHeader = __webpack_require__(/*! ./DialogHeader */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/DialogHeader.js\");\nconst _styles = __webpack_require__(/*! ./styles */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/styles.js\");\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=index.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL2NvbXBvbmVudHMvRGlhbG9nL2luZGV4LmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztJQUFTQSxRQUFNO2VBQU5BLFFBQUFBLE1BQU07O0lBQ05DLFlBQVU7ZUFBVkEsWUFBQUEsVUFBVTs7SUFDVkMsZUFBYTtlQUFiQSxlQUFBQSxhQUFhOztJQUNiQyxjQUFZO2VBQVpBLGNBQUFBLFlBQVk7O0lBQ1pDLFFBQU07ZUFBTkEsUUFBQUEsTUFBTTs7O29DQUpRO3dDQUNJOzJDQUNHOzBDQUNEO29DQUNOIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vYXN0b2NrLWFnZW50LWZyb250ZW5kLy4uLy4uLy4uLy4uLy4uL3NyYy9jbGllbnQvY29tcG9uZW50cy9yZWFjdC1kZXYtb3ZlcmxheS9pbnRlcm5hbC9jb21wb25lbnRzL0RpYWxvZy9pbmRleC50cz85ZjM3Il0sIm5hbWVzIjpbIkRpYWxvZyIsIkRpYWxvZ0JvZHkiLCJEaWFsb2dDb250ZW50IiwiRGlhbG9nSGVhZGVyIiwic3R5bGVzIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/index.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/styles.js": -/*!*********************************************************************************************************!*\ - !*** ./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/styles.js ***! - \*********************************************************************************************************/ -/***/ ((module, exports, __webpack_require__) => { - -"use strict"; -eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"styles\", ({\n enumerable: true,\n get: function() {\n return styles;\n }\n}));\nconst _tagged_template_literal_loose = __webpack_require__(/*! @swc/helpers/_/_tagged_template_literal_loose */ \"(ssr)/./node_modules/@swc/helpers/esm/_tagged_template_literal_loose.js\");\nconst _nooptemplate = __webpack_require__(/*! ../../helpers/noop-template */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/helpers/noop-template.js\");\nfunction _templateObject() {\n const data = _tagged_template_literal_loose._([\n \"\\n [data-nextjs-dialog] {\\n display: flex;\\n flex-direction: column;\\n width: 100%;\\n margin-right: auto;\\n margin-left: auto;\\n outline: none;\\n background: var(--color-background);\\n border-radius: var(--size-gap);\\n box-shadow: 0 var(--size-gap-half) var(--size-gap-double)\\n rgba(0, 0, 0, 0.25);\\n max-height: calc(100% - 56px);\\n overflow-y: hidden;\\n }\\n\\n @media (max-height: 812px) {\\n [data-nextjs-dialog-overlay] {\\n max-height: calc(100% - 15px);\\n }\\n }\\n\\n @media (min-width: 576px) {\\n [data-nextjs-dialog] {\\n max-width: 540px;\\n box-shadow: 0 var(--size-gap) var(--size-gap-quad) rgba(0, 0, 0, 0.25);\\n }\\n }\\n\\n @media (min-width: 768px) {\\n [data-nextjs-dialog] {\\n max-width: 720px;\\n }\\n }\\n\\n @media (min-width: 992px) {\\n [data-nextjs-dialog] {\\n max-width: 960px;\\n }\\n }\\n\\n [data-nextjs-dialog-banner] {\\n position: relative;\\n }\\n [data-nextjs-dialog-banner].banner-warning {\\n border-color: var(--color-ansi-yellow);\\n }\\n [data-nextjs-dialog-banner].banner-error {\\n border-color: var(--color-ansi-red);\\n }\\n\\n [data-nextjs-dialog-banner]::after {\\n z-index: 2;\\n content: '';\\n position: absolute;\\n top: 0;\\n right: 0;\\n width: 100%;\\n /* banner width: */\\n border-top-width: var(--size-gap-half);\\n border-bottom-width: 0;\\n border-top-style: solid;\\n border-bottom-style: solid;\\n border-top-color: inherit;\\n border-bottom-color: transparent;\\n }\\n\\n [data-nextjs-dialog-content] {\\n overflow-y: auto;\\n border: none;\\n margin: 0;\\n /* calc(padding + banner width offset) */\\n padding: calc(var(--size-gap-double) + var(--size-gap-half))\\n var(--size-gap-double);\\n height: 100%;\\n display: flex;\\n flex-direction: column;\\n }\\n [data-nextjs-dialog-content] > [data-nextjs-dialog-header] {\\n flex-shrink: 0;\\n margin-bottom: var(--size-gap-double);\\n }\\n [data-nextjs-dialog-content] > [data-nextjs-dialog-body] {\\n position: relative;\\n flex: 1 1 auto;\\n }\\n\"\n ]);\n _templateObject = function() {\n return data;\n };\n return data;\n}\nconst styles = (0, _nooptemplate.noop)(_templateObject());\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=styles.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL2NvbXBvbmVudHMvRGlhbG9nL3N0eWxlcy5qcyIsIm1hcHBpbmdzIjoiOzs7OzBDQTBGU0E7OztlQUFBQTs7OzswQ0ExRm1COzs7Ozs7Ozs7O0FBRTVCLE1BQU1BLFNBQUFBLENBQUFBLEdBQVNDLGNBQUFBLElBQUcsRUFBQUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9hc3RvY2stYWdlbnQtZnJvbnRlbmQvLi4vLi4vLi4vLi4vLi4vc3JjL2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL2NvbXBvbmVudHMvRGlhbG9nL3N0eWxlcy50cz8wOTAyIl0sIm5hbWVzIjpbInN0eWxlcyIsImNzcyIsIl90ZW1wbGF0ZU9iamVjdCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/styles.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/LeftRightDialogHeader/LeftRightDialogHeader.js": -/*!***************************************************************************************************************************************!*\ - !*** ./node_modules/next/dist/client/components/react-dev-overlay/internal/components/LeftRightDialogHeader/LeftRightDialogHeader.js ***! - \***************************************************************************************************************************************/ -/***/ ((module, exports, __webpack_require__) => { - -"use strict"; -eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"LeftRightDialogHeader\", ({\n enumerable: true,\n get: function() {\n return LeftRightDialogHeader;\n }\n}));\nconst _interop_require_wildcard = __webpack_require__(/*! @swc/helpers/_/_interop_require_wildcard */ \"(ssr)/./node_modules/@swc/helpers/esm/_interop_require_wildcard.js\");\nconst _jsxruntime = __webpack_require__(/*! react/jsx-runtime */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react-jsx-runtime.js\");\nconst _react = /*#__PURE__*/ _interop_require_wildcard._(__webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\"));\nconst _CloseIcon = __webpack_require__(/*! ../../icons/CloseIcon */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/icons/CloseIcon.js\");\nconst LeftRightDialogHeader = function LeftRightDialogHeader(param) {\n let { children, className, previous, next, close } = param;\n const buttonLeft = _react.useRef(null);\n const buttonRight = _react.useRef(null);\n const buttonClose = _react.useRef(null);\n const [nav, setNav] = _react.useState(null);\n const onNav = _react.useCallback((el)=>{\n setNav(el);\n }, []);\n _react.useEffect(()=>{\n if (nav == null) {\n return;\n }\n const root = nav.getRootNode();\n const d = self.document;\n function handler(e) {\n if (e.key === \"ArrowLeft\") {\n e.preventDefault();\n e.stopPropagation();\n if (buttonLeft.current) {\n buttonLeft.current.focus();\n }\n previous && previous();\n } else if (e.key === \"ArrowRight\") {\n e.preventDefault();\n e.stopPropagation();\n if (buttonRight.current) {\n buttonRight.current.focus();\n }\n next && next();\n } else if (e.key === \"Escape\") {\n e.preventDefault();\n e.stopPropagation();\n if (root instanceof ShadowRoot) {\n const a = root.activeElement;\n if (a && a !== buttonClose.current && a instanceof HTMLElement) {\n a.blur();\n return;\n }\n }\n close == null ? void 0 : close();\n }\n }\n root.addEventListener(\"keydown\", handler);\n if (root !== d) {\n d.addEventListener(\"keydown\", handler);\n }\n return function() {\n root.removeEventListener(\"keydown\", handler);\n if (root !== d) {\n d.removeEventListener(\"keydown\", handler);\n }\n };\n }, [\n close,\n nav,\n next,\n previous\n ]);\n // Unlock focus for browsers like Firefox, that break all user focus if the\n // currently focused item becomes disabled.\n _react.useEffect(()=>{\n if (nav == null) {\n return;\n }\n const root = nav.getRootNode();\n // Always true, but we do this for TypeScript:\n if (root instanceof ShadowRoot) {\n const a = root.activeElement;\n if (previous == null) {\n if (buttonLeft.current && a === buttonLeft.current) {\n buttonLeft.current.blur();\n }\n } else if (next == null) {\n if (buttonRight.current && a === buttonRight.current) {\n buttonRight.current.blur();\n }\n }\n }\n }, [\n nav,\n next,\n previous\n ]);\n return /*#__PURE__*/ (0, _jsxruntime.jsxs)(\"div\", {\n \"data-nextjs-dialog-left-right\": true,\n className: className,\n children: [\n /*#__PURE__*/ (0, _jsxruntime.jsxs)(\"nav\", {\n ref: onNav,\n children: [\n /*#__PURE__*/ (0, _jsxruntime.jsx)(\"button\", {\n ref: buttonLeft,\n type: \"button\",\n disabled: previous == null ? true : undefined,\n \"aria-disabled\": previous == null ? true : undefined,\n onClick: previous != null ? previous : undefined,\n children: /*#__PURE__*/ (0, _jsxruntime.jsxs)(\"svg\", {\n viewBox: \"0 0 14 14\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n children: [\n /*#__PURE__*/ (0, _jsxruntime.jsx)(\"title\", {\n children: \"previous\"\n }),\n /*#__PURE__*/ (0, _jsxruntime.jsx)(\"path\", {\n d: \"M6.99996 1.16666L1.16663 6.99999L6.99996 12.8333M12.8333 6.99999H1.99996H12.8333Z\",\n stroke: \"currentColor\",\n strokeWidth: \"2\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })\n ]\n })\n }),\n /*#__PURE__*/ (0, _jsxruntime.jsx)(\"button\", {\n ref: buttonRight,\n type: \"button\",\n disabled: next == null ? true : undefined,\n \"aria-disabled\": next == null ? true : undefined,\n onClick: next != null ? next : undefined,\n children: /*#__PURE__*/ (0, _jsxruntime.jsxs)(\"svg\", {\n viewBox: \"0 0 14 14\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n children: [\n /*#__PURE__*/ (0, _jsxruntime.jsx)(\"title\", {\n children: \"next\"\n }),\n /*#__PURE__*/ (0, _jsxruntime.jsx)(\"path\", {\n d: \"M6.99996 1.16666L12.8333 6.99999L6.99996 12.8333M1.16663 6.99999H12H1.16663Z\",\n stroke: \"currentColor\",\n strokeWidth: \"2\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })\n ]\n })\n }),\n children\n ]\n }),\n close ? /*#__PURE__*/ (0, _jsxruntime.jsx)(\"button\", {\n \"data-nextjs-errors-dialog-left-right-close-button\": true,\n ref: buttonClose,\n type: \"button\",\n onClick: close,\n \"aria-label\": \"Close\",\n children: /*#__PURE__*/ (0, _jsxruntime.jsx)(\"span\", {\n \"aria-hidden\": \"true\",\n children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_CloseIcon.CloseIcon, {})\n })\n }) : null\n ]\n });\n};\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=LeftRightDialogHeader.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL2NvbXBvbmVudHMvTGVmdFJpZ2h0RGlhbG9nSGVhZGVyL0xlZnRSaWdodERpYWxvZ0hlYWRlci5qcyIsIm1hcHBpbmdzIjoiOzs7O3lEQXdLU0E7OztlQUFBQTs7Ozs7NkVBeEtjO3VDQUNHO0FBVTFCLE1BQU1BLHdCQUNKLFNBQVNBLHNCQUFzQkMsS0FNOUI7SUFOOEIsTUFDN0JDLFFBQVEsRUFDUkMsU0FBUyxFQUNUQyxRQUFRLEVBQ1JDLElBQUksRUFDSkMsS0FBSyxFQUNOLEdBTjhCTDtJQU83QixNQUFNTSxhQUFhQyxPQUFNQyxNQUFNLENBQTJCO0lBQzFELE1BQU1DLGNBQWNGLE9BQU1DLE1BQU0sQ0FBMkI7SUFDM0QsTUFBTUUsY0FBY0gsT0FBTUMsTUFBTSxDQUEyQjtJQUUzRCxNQUFNLENBQUNHLEtBQUtDLE9BQU8sR0FBR0wsT0FBTU0sUUFBUSxDQUFxQjtJQUN6RCxNQUFNQyxRQUFRUCxPQUFNUSxXQUFXLENBQUMsQ0FBQ0M7UUFDL0JKLE9BQU9JO0lBQ1QsR0FBRyxFQUFFO0lBRUxULE9BQU1VLFNBQVMsQ0FBQztRQUNkLElBQUlOLE9BQU8sTUFBTTtZQUNmO1FBQ0Y7UUFFQSxNQUFNTyxPQUFPUCxJQUFJUSxXQUFXO1FBQzVCLE1BQU1DLElBQUlDLEtBQUtDLFFBQVE7UUFFdkIsU0FBU0MsUUFBUUMsQ0FBZ0I7WUFDL0IsSUFBSUEsRUFBRUMsR0FBRyxLQUFLLGFBQWE7Z0JBQ3pCRCxFQUFFRSxjQUFjO2dCQUNoQkYsRUFBRUcsZUFBZTtnQkFDakIsSUFBSXJCLFdBQVdzQixPQUFPLEVBQUU7b0JBQ3RCdEIsV0FBV3NCLE9BQU8sQ0FBQ0MsS0FBSztnQkFDMUI7Z0JBQ0ExQixZQUFZQTtZQUNkLE9BQU8sSUFBSXFCLEVBQUVDLEdBQUcsS0FBSyxjQUFjO2dCQUNqQ0QsRUFBRUUsY0FBYztnQkFDaEJGLEVBQUVH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QUVOLElBQUFmLFlBQUFLLEdBQUEsRUFBQ1csU0FBQUE7OENBQU07OzhDQUNQLElBQUFoQixZQUFBSyxHQUFBLEVBQUNZLFFBQUFBO29DQUNDbEMsR0FBRTtvQ0FDRm1DLFFBQU87b0NBQ1BDLGFBQVk7b0NBQ1pDLGVBQWM7b0NBQ2RDLGdCQUFlOzs7OztvQkFJcEJ6RDs7O1lBRUZJLFFBQ0MsV0FEREEsR0FDQyxJQUFBZ0MsWUFBQUssR0FBQSxFQUFDQyxVQUFBQTtnQkFDQ2dCLHFEQUFpRDtnQkFDakRsQixLQUFLL0I7Z0JBQ0xrQyxNQUFLO2dCQUNMSSxTQUFTM0M7Z0JBQ1R1RCxjQUFXOzBCQUVYLGtCQUFBdkIsWUFBQUssR0FBQSxFQUFDbUIsUUFBQUE7b0JBQUtDLGVBQVk7OEJBQ2hCLGtCQUFBekIsWUFBQUssR0FBQSxFQUFDcUIsV0FBQUEsU0FBUzs7aUJBR1o7OztBQUdWIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vYXN0b2NrLWFnZW50LWZyb250ZW5kLy4uLy4uLy4uLy4uLy4uL3NyYy9jbGllbnQvY29tcG9uZW50cy9yZWFjdC1kZXYtb3ZlcmxheS9pbnRlcm5hbC9jb21wb25lbnRzL0xlZnRSaWdodERpYWxvZ0hlYWRlci9MZWZ0UmlnaHREaWFsb2dIZWFkZXIudHN4PzQxMjEiXSwibmFtZXMiOlsiTGVmdFJpZ2h0RGlhbG9nSGVhZGVyIiwicGFyYW0iLCJjaGlsZHJlbiIsImNsYXNzTmFtZSIsInByZXZpb3VzIiwibmV4dCIsImNsb3NlIiwiYnV0dG9uTGVmdCIsIlJlYWN0IiwidXNlUmVmIiwiYnV0dG9uUmlnaHQiLCJidXR0b25DbG9zZSIsIm5hdiIsInNldE5hdiIsInVzZVN0YXRlIiwib25OYXYiLCJ1c2VDYWxsYmFjayIsImVsIiwidXNlRWZmZWN0Iiwicm9vdCIsImdldFJvb3ROb2RlIiwiZCIsInNlbGYiLCJkb2N1bWVudCIsImhhbmRsZXIiLCJlIiwia2V5IiwicHJldmVudERlZmF1bHQiLCJzdG9wUHJvcGFnYXRpb24iLCJjdXJyZW50IiwiZm9jdXMiLCJTaGFkb3dSb290IiwiYSIsImFjdGl2ZUVsZW1lbnQiLCJIVE1MRWxlbWVudCIsImJsdXIiLCJhZGRFdmVudExpc3RlbmVyIiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsIl9qc3hydW50aW1lIiwianN4cyIsImRpdiIsImRhdGEtbmV4dGpzLWRpYWxvZy1sZWZ0LXJpZ2h0IiwicmVmIiwianN4IiwiYnV0dG9uIiwidHlwZSIsImRpc2FibGVkIiwidW5kZWZpbmVkIiwiYXJpYS1kaXNhYmxlZCIsIm9uQ2xpY2siLCJzdmciLCJ2aWV3Qm94IiwiZmlsbCIsInhtbG5zIiwidGl0bGUiLCJwYXRoIiwic3Ryb2tlIiwic3Ryb2tlV2lkdGgiLCJzdHJva2VMaW5lY2FwIiwic3Ryb2tlTGluZWpvaW4iLCJkYXRhLW5leHRqcy1lcnJvcnMtZGlhbG9nLWxlZnQtcmlnaHQtY2xvc2UtYnV0dG9uIiwiYXJpYS1sYWJlbCIsInNwYW4iLCJhcmlhLWhpZGRlbiIsIkNsb3NlSWNvbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/LeftRightDialogHeader/LeftRightDialogHeader.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/LeftRightDialogHeader/index.js": -/*!***********************************************************************************************************************!*\ - !*** ./node_modules/next/dist/client/components/react-dev-overlay/internal/components/LeftRightDialogHeader/index.js ***! - \***********************************************************************************************************************/ -/***/ ((module, exports, __webpack_require__) => { - -"use strict"; -eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\n0 && (0);\nfunction _export(target, all) {\n for(var name in all)Object.defineProperty(target, name, {\n enumerable: true,\n get: all[name]\n });\n}\n_export(exports, {\n LeftRightDialogHeader: function() {\n return _LeftRightDialogHeader.LeftRightDialogHeader;\n },\n styles: function() {\n return _styles.styles;\n }\n});\nconst _LeftRightDialogHeader = __webpack_require__(/*! ./LeftRightDialogHeader */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/LeftRightDialogHeader/LeftRightDialogHeader.js\");\nconst _styles = __webpack_require__(/*! ./styles */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/LeftRightDialogHeader/styles.js\");\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=index.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL2NvbXBvbmVudHMvTGVmdFJpZ2h0RGlhbG9nSGVhZGVyL2luZGV4LmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztJQUFTQSx1QkFBcUI7ZUFBckJBLHVCQUFBQSxxQkFBcUI7O0lBQ3JCQyxRQUFNO2VBQU5BLFFBQUFBLE1BQU07OzttREFEdUI7b0NBQ2YiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9hc3RvY2stYWdlbnQtZnJvbnRlbmQvLi4vLi4vLi4vLi4vLi4vc3JjL2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL2NvbXBvbmVudHMvTGVmdFJpZ2h0RGlhbG9nSGVhZGVyL2luZGV4LnRzPzYxMzMiXSwibmFtZXMiOlsiTGVmdFJpZ2h0RGlhbG9nSGVhZGVyIiwic3R5bGVzIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/LeftRightDialogHeader/index.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/LeftRightDialogHeader/styles.js": -/*!************************************************************************************************************************!*\ - !*** ./node_modules/next/dist/client/components/react-dev-overlay/internal/components/LeftRightDialogHeader/styles.js ***! - \************************************************************************************************************************/ -/***/ ((module, exports, __webpack_require__) => { - -"use strict"; -eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"styles\", ({\n enumerable: true,\n get: function() {\n return styles;\n }\n}));\nconst _tagged_template_literal_loose = __webpack_require__(/*! @swc/helpers/_/_tagged_template_literal_loose */ \"(ssr)/./node_modules/@swc/helpers/esm/_tagged_template_literal_loose.js\");\nconst _nooptemplate = __webpack_require__(/*! ../../helpers/noop-template */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/helpers/noop-template.js\");\nfunction _templateObject() {\n const data = _tagged_template_literal_loose._([\n \"\\n [data-nextjs-dialog-left-right] {\\n display: flex;\\n flex-direction: row;\\n align-content: center;\\n align-items: center;\\n justify-content: space-between;\\n }\\n [data-nextjs-dialog-left-right] > nav {\\n flex: 1;\\n display: flex;\\n align-items: center;\\n margin-right: var(--size-gap);\\n }\\n [data-nextjs-dialog-left-right] > nav > button {\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n\\n width: calc(var(--size-gap-double) + var(--size-gap));\\n height: calc(var(--size-gap-double) + var(--size-gap));\\n font-size: 0;\\n border: none;\\n background-color: rgba(255, 85, 85, 0.1);\\n color: var(--color-ansi-red);\\n cursor: pointer;\\n transition: background-color 0.25s ease;\\n }\\n [data-nextjs-dialog-left-right] > nav > button > svg {\\n width: auto;\\n height: calc(var(--size-gap) + var(--size-gap-half));\\n }\\n [data-nextjs-dialog-left-right] > nav > button:hover {\\n background-color: rgba(255, 85, 85, 0.2);\\n }\\n [data-nextjs-dialog-left-right] > nav > button:disabled {\\n background-color: rgba(255, 85, 85, 0.1);\\n color: rgba(255, 85, 85, 0.4);\\n cursor: not-allowed;\\n }\\n\\n [data-nextjs-dialog-left-right] > nav > button:first-of-type {\\n border-radius: var(--size-gap-half) 0 0 var(--size-gap-half);\\n margin-right: 1px;\\n }\\n [data-nextjs-dialog-left-right] > nav > button:last-of-type {\\n border-radius: 0 var(--size-gap-half) var(--size-gap-half) 0;\\n }\\n\\n [data-nextjs-dialog-left-right] > button:last-of-type {\\n border: 0;\\n padding: 0;\\n\\n background-color: transparent;\\n appearance: none;\\n\\n opacity: 0.4;\\n transition: opacity 0.25s ease;\\n\\n color: var(--color-font);\\n }\\n [data-nextjs-dialog-left-right] > button:last-of-type:hover {\\n opacity: 0.7;\\n }\\n\"\n ]);\n _templateObject = function() {\n return data;\n };\n return data;\n}\nconst styles = (0, _nooptemplate.noop)(_templateObject());\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=styles.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL2NvbXBvbmVudHMvTGVmdFJpZ2h0RGlhbG9nSGVhZGVyL3N0eWxlcy5qcyIsIm1hcHBpbmdzIjoiOzs7OzBDQW9FU0E7OztlQUFBQTs7OzswQ0FwRW1COzs7Ozs7Ozs7O0FBRTVCLE1BQU1BLFNBQUFBLENBQUFBLEdBQVNDLGNBQUFBLElBQUcsRUFBQUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9hc3RvY2stYWdlbnQtZnJvbnRlbmQvLi4vLi4vLi4vLi4vLi4vc3JjL2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL2NvbXBvbmVudHMvTGVmdFJpZ2h0RGlhbG9nSGVhZGVyL3N0eWxlcy50cz82ZDg0Il0sIm5hbWVzIjpbInN0eWxlcyIsImNzcyIsIl90ZW1wbGF0ZU9iamVjdCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/LeftRightDialogHeader/styles.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Overlay/Overlay.js": -/*!***********************************************************************************************************!*\ - !*** ./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Overlay/Overlay.js ***! - \***********************************************************************************************************/ -/***/ ((module, exports, __webpack_require__) => { - -"use strict"; -eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"Overlay\", ({\n enumerable: true,\n get: function() {\n return Overlay;\n }\n}));\nconst _interop_require_default = __webpack_require__(/*! @swc/helpers/_/_interop_require_default */ \"(ssr)/./node_modules/@swc/helpers/esm/_interop_require_default.js\");\nconst _interop_require_wildcard = __webpack_require__(/*! @swc/helpers/_/_interop_require_wildcard */ \"(ssr)/./node_modules/@swc/helpers/esm/_interop_require_wildcard.js\");\nconst _jsxruntime = __webpack_require__(/*! react/jsx-runtime */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react-jsx-runtime.js\");\nconst _maintaintabfocus = /*#__PURE__*/ _interop_require_default._(__webpack_require__(/*! ./maintain--tab-focus */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Overlay/maintain--tab-focus.js\"));\nconst _react = /*#__PURE__*/ _interop_require_wildcard._(__webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\"));\nconst _bodylocker = __webpack_require__(/*! ./body-locker */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Overlay/body-locker.js\");\nconst Overlay = function Overlay(param) {\n let { className, children, fixed } = param;\n _react.useEffect(()=>{\n (0, _bodylocker.lock)();\n return ()=>{\n (0, _bodylocker.unlock)();\n };\n }, []);\n const [overlay, setOverlay] = _react.useState(null);\n const onOverlay = _react.useCallback((el)=>{\n setOverlay(el);\n }, []);\n _react.useEffect(()=>{\n if (overlay == null) {\n return;\n }\n const handle2 = (0, _maintaintabfocus.default)({\n context: overlay\n });\n return ()=>{\n handle2.disengage();\n };\n }, [\n overlay\n ]);\n return /*#__PURE__*/ (0, _jsxruntime.jsxs)(\"div\", {\n \"data-nextjs-dialog-overlay\": true,\n className: className,\n ref: onOverlay,\n children: [\n /*#__PURE__*/ (0, _jsxruntime.jsx)(\"div\", {\n \"data-nextjs-dialog-backdrop\": true,\n \"data-nextjs-dialog-backdrop-fixed\": fixed ? true : undefined\n }),\n children\n ]\n });\n};\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=Overlay.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL2NvbXBvbmVudHMvT3ZlcmxheS9PdmVybGF5LmpzIiwibWFwcGluZ3MiOiI7Ozs7MkNBaURTQTs7O2VBQUFBOzs7Ozs7dUZBakRZOzZFQUNFO3dDQUNNO0FBUTdCLE1BQU1BLFVBQWtDLFNBQVNBLFFBQVFDLEtBSXhEO0lBSndELE1BQ3ZEQyxTQUFTLEVBQ1RDLFFBQVEsRUFDUkMsS0FBSyxFQUNOLEdBSndESDtJQUt2REksT0FBTUMsU0FBUyxDQUFDO1FBQ2RDLENBQUFBLEdBQUFBLFlBQUFBLElBQUk7UUFDSixPQUFPO1lBQ0xDLENBQUFBLEdBQUFBLFlBQUFBLE1BQU07UUFDUjtJQUNGLEdBQUcsRUFBRTtJQUVMLE1BQU0sQ0FBQ0MsU0FBU0MsV0FBVyxHQUFHTCxPQUFNTSxRQUFRLENBQXdCO0lBQ3BFLE1BQU1DLFlBQVlQLE9BQU1RLFdBQVcsQ0FBQyxDQUFDQztRQUNuQ0osV0FBV0k7SUFDYixHQUFHLEVBQUU7SUFFTFQsT0FBTUMsU0FBUyxDQUFDO1FBQ2QsSUFBSUcsV0FBVyxNQUFNO1lBQ25CO1FBQ0Y7UUFFQSxNQUFNTSxVQUFVQyxDQUFBQSxHQUFBQSxrQkFBQUEsT0FBUSxFQUFDO1lBQUVDLFNBQVNSO1FBQVE7UUFDNUMsT0FBTztZQUNMTSxRQUFRRyxTQUFTO1FBQ25CO0lBQ0YsR0FBRztRQUFDVDtLQUFRO0lBRVosT0FDRSxXQURGLEdBQ0UsSUFBQVUsWUFBQUMsSUFBQSxFQUFDQyxPQUFBQTtRQUFJQyw4QkFBMEI7UUFBQ3BCLFdBQVdBO1FBQVdxQixLQUFLWDs7MEJBQ3pELElBQUFPLFlBQUFLLEdBQUEsRUFBQ0gsT0FBQUE7Z0JBQ0NJLCtCQUEyQjtnQkFDM0JDLHFDQUFtQ3RCLFFBQVEsT0FBT3VCOztZQUVuRHhCOzs7QUFHUCIsInNvdXJjZXMiOlsid2VicGFjazovL2FzdG9jay1hZ2VudC1mcm9udGVuZC8uLi8uLi8uLi8uLi8uLi9zcmMvY2xpZW50L2NvbXBvbmVudHMvcmVhY3QtZGV2LW92ZXJsYXkvaW50ZXJuYWwvY29tcG9uZW50cy9PdmVybGF5L092ZXJsYXkudHN4PzViYTQiXSwibmFtZXMiOlsiT3ZlcmxheSIsInBhcmFtIiwiY2xhc3NOYW1lIiwiY2hpbGRyZW4iLCJmaXhlZCIsIlJlYWN0IiwidXNlRWZmZWN0IiwibG9jayIsInVubG9jayIsIm92ZXJsYXkiLCJzZXRPdmVybGF5IiwidXNlU3RhdGUiLCJvbk92ZXJsYXkiLCJ1c2VDYWxsYmFjayIsImVsIiwiaGFuZGxlMiIsImFsbHlUcmFwIiwiY29udGV4dCIsImRpc2VuZ2FnZSIsIl9qc3hydW50aW1lIiwianN4cyIsImRpdiIsImRhdGEtbmV4dGpzLWRpYWxvZy1vdmVybGF5IiwicmVmIiwianN4IiwiZGF0YS1uZXh0anMtZGlhbG9nLWJhY2tkcm9wIiwiZGF0YS1uZXh0anMtZGlhbG9nLWJhY2tkcm9wLWZpeGVkIiwidW5kZWZpbmVkIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Overlay/Overlay.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Overlay/body-locker.js": -/*!***************************************************************************************************************!*\ - !*** ./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Overlay/body-locker.js ***! - \***************************************************************************************************************/ -/***/ ((module, exports) => { - -"use strict"; -eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\n0 && (0);\nfunction _export(target, all) {\n for(var name in all)Object.defineProperty(target, name, {\n enumerable: true,\n get: all[name]\n });\n}\n_export(exports, {\n lock: function() {\n return lock;\n },\n unlock: function() {\n return unlock;\n }\n});\nlet previousBodyPaddingRight;\nlet previousBodyOverflowSetting;\nlet activeLocks = 0;\nfunction lock() {\n setTimeout(()=>{\n if (activeLocks++ > 0) {\n return;\n }\n const scrollBarGap = window.innerWidth - document.documentElement.clientWidth;\n if (scrollBarGap > 0) {\n previousBodyPaddingRight = document.body.style.paddingRight;\n document.body.style.paddingRight = \"\" + scrollBarGap + \"px\";\n }\n previousBodyOverflowSetting = document.body.style.overflow;\n document.body.style.overflow = \"hidden\";\n });\n}\nfunction unlock() {\n setTimeout(()=>{\n if (activeLocks === 0 || --activeLocks !== 0) {\n return;\n }\n if (previousBodyPaddingRight !== undefined) {\n document.body.style.paddingRight = previousBodyPaddingRight;\n previousBodyPaddingRight = undefined;\n }\n if (previousBodyOverflowSetting !== undefined) {\n document.body.style.overflow = previousBodyOverflowSetting;\n previousBodyOverflowSetting = undefined;\n }\n });\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=body-locker.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL2NvbXBvbmVudHMvT3ZlcmxheS9ib2R5LWxvY2tlci5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7SUFLZ0JBLE1BQUk7ZUFBSkE7O0lBbUJBQyxRQUFNO2VBQU5BOzs7QUF4QmhCLElBQUlDO0FBQ0osSUFBSUM7QUFFSixJQUFJQyxjQUFjO0FBRVgsU0FBU0o7SUFDZEssV0FBVztRQUNULElBQUlELGdCQUFnQixHQUFHO1lBQ3JCO1FBQ0Y7UUFFQSxNQUFNRSxlQUNKQyxPQUFPQyxVQUFVLEdBQUdDLFNBQVNDLGVBQWUsQ0FBQ0MsV0FBVztRQUUxRCxJQUFJTCxlQUFlLEdBQUc7WUFDcEJKLDJCQUEyQk8sU0FBU0csSUFBSSxDQUFDQyxLQUFLLENBQUNDLFlBQVk7WUFDM0RMLFNBQVNHLElBQUksQ0FBQ0MsS0FBSyxDQUFDQyxZQUFZLEdBQUcsS0FBR1IsZUFBYTtRQUNyRDtRQUVBSCw4QkFBOEJNLFNBQVNHLElBQUksQ0FBQ0MsS0FBSyxDQUFDRSxRQUFRO1FBQzFETixTQUFTRyxJQUFJLENBQUNDLEtBQUssQ0FBQ0UsUUFBUSxHQUFHO0lBQ2pDO0FBQ0Y7QUFFTyxTQUFTZDtJQUNkSSxXQUFXO1FBQ1QsSUFBSUQsZ0JBQWdCLEtBQUssRUFBRUEsZ0JBQWdCLEdBQUc7WUFDNUM7UUFDRjtRQUVBLElBQUlGLDZCQUE2QmMsV0FBVztZQUMxQ1AsU0FBU0csSUFBSSxDQUFDQyxLQUFLLENBQUNDLFlBQVksR0FBR1o7WUFDbkNBLDJCQUEyQmM7UUFDN0I7UUFFQSxJQUFJYixnQ0FBZ0NhLFdBQVc7WUFDN0NQLFNBQVNHLElBQUksQ0FBQ0MsS0FBSyxDQUFDRSxRQUFRLEdBQUdaO1lBQy9CQSw4QkFBOEJhO1FBQ2hDO0lBQ0Y7QUFDRiIsInNvdXJjZXMiOlsid2VicGFjazovL2FzdG9jay1hZ2VudC1mcm9udGVuZC8uLi8uLi8uLi8uLi8uLi9zcmMvY2xpZW50L2NvbXBvbmVudHMvcmVhY3QtZGV2LW92ZXJsYXkvaW50ZXJuYWwvY29tcG9uZW50cy9PdmVybGF5L2JvZHktbG9ja2VyLnRzP2EwMjIiXSwibmFtZXMiOlsibG9jayIsInVubG9jayIsInByZXZpb3VzQm9keVBhZGRpbmdSaWdodCIsInByZXZpb3VzQm9keU92ZXJmbG93U2V0dGluZyIsImFjdGl2ZUxvY2tzIiwic2V0VGltZW91dCIsInNjcm9sbEJhckdhcCIsIndpbmRvdyIsImlubmVyV2lkdGgiLCJkb2N1bWVudCIsImRvY3VtZW50RWxlbWVudCIsImNsaWVudFdpZHRoIiwiYm9keSIsInN0eWxlIiwicGFkZGluZ1JpZ2h0Iiwib3ZlcmZsb3ciLCJ1bmRlZmluZWQiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Overlay/body-locker.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Overlay/index.js": -/*!*********************************************************************************************************!*\ - !*** ./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Overlay/index.js ***! - \*********************************************************************************************************/ -/***/ ((module, exports, __webpack_require__) => { - -"use strict"; -eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"Overlay\", ({\n enumerable: true,\n get: function() {\n return _Overlay.Overlay;\n }\n}));\nconst _Overlay = __webpack_require__(/*! ./Overlay */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Overlay/Overlay.js\");\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=index.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL2NvbXBvbmVudHMvT3ZlcmxheS9pbmRleC5qcyIsIm1hcHBpbmdzIjoiOzs7OzJDQUFTQTs7O2VBQUFBLFNBQUFBLE9BQU87OztxQ0FBUSIsInNvdXJjZXMiOlsid2VicGFjazovL2FzdG9jay1hZ2VudC1mcm9udGVuZC8uLi8uLi8uLi8uLi8uLi9zcmMvY2xpZW50L2NvbXBvbmVudHMvcmVhY3QtZGV2LW92ZXJsYXkvaW50ZXJuYWwvY29tcG9uZW50cy9PdmVybGF5L2luZGV4LnRzeD83NzVhIl0sIm5hbWVzIjpbIk92ZXJsYXkiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Overlay/index.js\n"); - -/***/ }), - -/***/ "(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Overlay/maintain--tab-focus.js": -/*!***********************************************************************************************************************!*\ - !*** ./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Overlay/maintain--tab-focus.js ***! - \***********************************************************************************************************************/ -/***/ ((module, exports, __webpack_require__) => { - -"use strict"; -eval("/* eslint-disable */ // @ts-nocheck\n// Copied from https://github.com/medialize/ally.js\n// License: MIT\n// Copyright (c) 2015 Rodney Rehm\n//\n// Entrypoint: ally.js/maintain/tab-focus\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"default\", ({\n enumerable: true,\n get: function() {\n return _default;\n }\n}));\nconst _interop_require_default = __webpack_require__(/*! @swc/helpers/_/_interop_require_default */ \"(ssr)/./node_modules/@swc/helpers/esm/_interop_require_default.js\");\nconst _platform = /*#__PURE__*/ _interop_require_default._(__webpack_require__(/*! next/dist/compiled/platform */ \"(ssr)/./node_modules/next/dist/compiled/platform/platform.js\"));\nconst _cssescape = /*#__PURE__*/ _interop_require_default._(__webpack_require__(/*! next/dist/compiled/css.escape */ \"(ssr)/./node_modules/next/dist/compiled/css.escape/css.escape.js\"));\n// input may be undefined, selector-tring, Node, NodeList, HTMLCollection, array of Nodes\n// yes, to some extent this is a bad replica of jQuery's constructor function\nfunction nodeArray(input) {\n if (!input) {\n return [];\n }\n if (Array.isArray(input)) {\n return input;\n }\n // instanceof Node - does not work with iframes\n if (input.nodeType !== undefined) {\n return [\n input\n ];\n }\n if (typeof input === \"string\") {\n input = document.querySelectorAll(input);\n }\n if (input.length !== undefined) {\n return [].slice.call(input, 0);\n }\n throw new TypeError(\"unexpected input \" + String(input));\n}\nfunction contextToElement(_ref) {\n var context = _ref.context, _ref$label = _ref.label, label = _ref$label === undefined ? \"context-to-element\" : _ref$label, resolveDocument = _ref.resolveDocument, defaultToDocument = _ref.defaultToDocument;\n var element = nodeArray(context)[0];\n if (resolveDocument && element && element.nodeType === Node.DOCUMENT_NODE) {\n element = element.documentElement;\n }\n if (!element && defaultToDocument) {\n return document.documentElement;\n }\n if (!element) {\n throw new TypeError(label + \" requires valid options.context\");\n }\n if (element.nodeType !== Node.ELEMENT_NODE && element.nodeType !== Node.DOCUMENT_FRAGMENT_NODE) {\n throw new TypeError(label + \" requires options.context to be an Element\");\n }\n return element;\n}\nfunction getShadowHost() {\n var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}, context = _ref.context;\n var element = contextToElement({\n label: \"get/shadow-host\",\n context: context\n });\n // walk up to the root\n var container = null;\n while(element){\n container = element;\n element = element.parentNode;\n }\n // https://developer.mozilla.org/docs/Web/API/Node.nodeType\n // NOTE: Firefox 34 does not expose ShadowRoot.host (but 37 does)\n if (container.nodeType === container.DOCUMENT_FRAGMENT_NODE && container.host) {\n // the root is attached to a fragment node that has a host\n return container.host;\n }\n return null;\n}\nfunction getDocument(node) {\n if (!node) {\n return document;\n }\n if (node.nodeType === Node.DOCUMENT_NODE) {\n return node;\n }\n return node.ownerDocument || document;\n}\nfunction isActiveElement(context) {\n var element = contextToElement({\n label: \"is/active-element\",\n resolveDocument: true,\n context: context\n });\n var _document = getDocument(element);\n if (_document.activeElement === element) {\n return true;\n }\n var shadowHost = getShadowHost({\n context: element\n });\n if (shadowHost && shadowHost.shadowRoot.activeElement === element) {\n return true;\n }\n return false;\n}\n// [elem, elem.parent, elem.parent.parent, …, html]\n// will not contain the shadowRoot (DOCUMENT_FRAGMENT_NODE) and shadowHost\nfunction getParents() {\n var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}, context = _ref.context;\n var list = [];\n var element = contextToElement({\n label: \"get/parents\",\n context: context\n });\n while(element){\n list.push(element);\n // IE does know support parentElement on SVGElement\n element = element.parentNode;\n if (element && element.nodeType !== Node.ELEMENT_NODE) {\n element = null;\n }\n }\n return list;\n}\n// Element.prototype.matches may be available at a different name\n// https://developer.mozilla.org/en/docs/Web/API/Element/matches\nvar names = [\n \"matches\",\n \"webkitMatchesSelector\",\n \"mozMatchesSelector\",\n \"msMatchesSelector\"\n];\nvar name = null;\nfunction findMethodName(element) {\n names.some(function(_name) {\n if (!element[_name]) {\n return false;\n }\n name = _name;\n return true;\n });\n}\nfunction elementMatches(element, selector) {\n if (!name) {\n findMethodName(element);\n }\n return element[name](selector);\n}\n// deep clone of original platform\nvar platform = JSON.parse(JSON.stringify(_platform.default));\n// operating system\nvar os = platform.os.family || \"\";\nvar ANDROID = os === \"Android\";\nvar WINDOWS = os.slice(0, 7) === \"Windows\";\nvar OSX = os === \"OS X\";\nvar IOS = os === \"iOS\";\n// layout\nvar BLINK = platform.layout === \"Blink\";\nvar GECKO = platform.layout === \"Gecko\";\nvar TRIDENT = platform.layout === \"Trident\";\nvar EDGE = platform.layout === \"EdgeHTML\";\nvar WEBKIT = platform.layout === \"WebKit\";\n// browser version (not layout engine version!)\nvar version = parseFloat(platform.version);\nvar majorVersion = Math.floor(version);\nplatform.majorVersion = majorVersion;\nplatform.is = {\n // operating system\n ANDROID: ANDROID,\n WINDOWS: WINDOWS,\n OSX: OSX,\n IOS: IOS,\n // layout\n BLINK: BLINK,\n GECKO: GECKO,\n TRIDENT: TRIDENT,\n EDGE: EDGE,\n WEBKIT: WEBKIT,\n // INTERNET EXPLORERS\n IE9: TRIDENT && majorVersion === 9,\n IE10: TRIDENT && majorVersion === 10,\n IE11: TRIDENT && majorVersion === 11\n};\nfunction before() {\n var data = {\n // remember what had focus to restore after test\n activeElement: document.activeElement,\n // remember scroll positions to restore after test\n windowScrollTop: window.scrollTop,\n windowScrollLeft: window.scrollLeft,\n bodyScrollTop: document.body.scrollTop,\n bodyScrollLeft: document.body.scrollLeft\n };\n // wrap tests in an element hidden from screen readers to prevent them\n // from announcing focus, which can be quite irritating to the user\n var iframe = document.createElement(\"iframe\");\n iframe.setAttribute(\"style\", \"position:absolute; position:fixed; top:0; left:-2px; width:1px; height:1px; overflow:hidden;\");\n iframe.setAttribute(\"aria-live\", \"off\");\n iframe.setAttribute(\"aria-busy\", \"true\");\n iframe.setAttribute(\"aria-hidden\", \"true\");\n document.body.appendChild(iframe);\n var _window = iframe.contentWindow;\n var _document = _window.document;\n _document.open();\n _document.close();\n var wrapper = _document.createElement(\"div\");\n _document.body.appendChild(wrapper);\n data.iframe = iframe;\n data.wrapper = wrapper;\n data.window = _window;\n data.document = _document;\n return data;\n}\n// options.element:\n// {string} element name\n// {function} callback(wrapper, document) to generate an element\n// options.mutate: (optional)\n// {function} callback(element, wrapper, document) to manipulate element prior to focus-test.\n// Can return DOMElement to define focus target (default: element)\n// options.validate: (optional)\n// {function} callback(element, focusTarget, document) to manipulate test-result\nfunction test(data, options) {\n // make sure we operate on a clean slate\n data.wrapper.innerHTML = \"\";\n // create dummy element to test focusability of\n var element = typeof options.element === \"string\" ? data.document.createElement(options.element) : options.element(data.wrapper, data.document);\n // allow callback to further specify dummy element\n // and optionally define element to focus\n var focus = options.mutate && options.mutate(element, data.wrapper, data.document);\n if (!focus && focus !== false) {\n focus = element;\n }\n // element needs to be part of the DOM to be focusable\n !element.parentNode && data.wrapper.appendChild(element);\n // test if the element with invalid tabindex can be focused\n focus && focus.focus && focus.focus();\n // validate test's result\n return options.validate ? options.validate(element, focus, data.document) : data.document.activeElement === focus;\n}\nfunction after(data) {\n // restore focus to what it was before test and cleanup\n if (data.activeElement === document.body) {\n document.activeElement && document.activeElement.blur && document.activeElement.blur();\n if (platform.is.IE10) {\n // IE10 does not redirect focus to when the activeElement is removed\n document.body.focus();\n }\n } else {\n data.activeElement && data.activeElement.focus && data.activeElement.focus();\n }\n document.body.removeChild(data.iframe);\n // restore scroll position\n window.scrollTop = data.windowScrollTop;\n window.scrollLeft = data.windowScrollLeft;\n document.body.scrollTop = data.bodyScrollTop;\n document.body.scrollLeft = data.bodyScrollLeft;\n}\nfunction detectFocus(tests) {\n var data = before();\n var results = {};\n Object.keys(tests).map(function(key) {\n results[key] = test(data, tests[key]);\n });\n after(data);\n return results;\n}\n// this file is overwritten by `npm run build:pre`\nvar version$1 = \"1.4.1\";\n/*\n Facility to cache test results in localStorage.\n\n USAGE:\n cache.get('key');\n cache.set('key', 'value');\n */ function readLocalStorage(key) {\n // allow reading from storage to retrieve previous support results\n // even while the document does not have focus\n var data = void 0;\n try {\n data = window.localStorage && window.localStorage.getItem(key);\n data = data ? JSON.parse(data) : {};\n } catch (e) {\n data = {};\n }\n return data;\n}\nfunction writeLocalStorage(key, value) {\n if (!document.hasFocus()) {\n // if the document does not have focus when tests are executed, focus() may\n // not be handled properly and events may not be dispatched immediately.\n // This can happen when a document is reloaded while Developer Tools have focus.\n try {\n window.localStorage && window.localStorage.removeItem(key);\n } catch (e) {\n // ignore\n }\n return;\n }\n try {\n window.localStorage && window.localStorage.setItem(key, JSON.stringify(value));\n } catch (e) {\n // ignore\n }\n}\nvar userAgent = false || \"\";\nvar cacheKey = \"ally-supports-cache\";\nvar cache = readLocalStorage(cacheKey);\n// update the cache if ally or the user agent changed (newer version, etc)\nif (cache.userAgent !== userAgent || cache.version !== version$1) {\n cache = {};\n}\ncache.userAgent = userAgent;\ncache.version = version$1;\nvar cache$1 = {\n get: function get() {\n return cache;\n },\n set: function set(values) {\n Object.keys(values).forEach(function(key) {\n cache[key] = values[key];\n });\n cache.time = new Date().toISOString();\n writeLocalStorage(cacheKey, cache);\n }\n};\nfunction cssShadowPiercingDeepCombinator() {\n var combinator = void 0;\n // see https://dev.w3.org/csswg/css-scoping-1/#deep-combinator\n // https://bugzilla.mozilla.org/show_bug.cgi?id=1117572\n // https://code.google.com/p/chromium/issues/detail?id=446051\n try {\n document.querySelector(\"html >>> :first-child\");\n combinator = \">>>\";\n } catch (noArrowArrowArrow) {\n try {\n // old syntax supported at least up to Chrome 41\n // https://code.google.com/p/chromium/issues/detail?id=446051\n document.querySelector(\"html /deep/ :first-child\");\n combinator = \"/deep/\";\n } catch (noDeep) {\n combinator = \"\";\n }\n }\n return combinator;\n}\nvar gif = \"data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7\";\n// https://developer.mozilla.org/docs/Web/HTML/Element/img#attr-usemap\nvar focusAreaImgTabindex = {\n element: \"div\",\n mutate: function mutate(element) {\n element.innerHTML = '' + '' + '\"\"';\n return element.querySelector(\"area\");\n }\n};\n// https://developer.mozilla.org/docs/Web/HTML/Element/img#attr-usemap\nvar focusAreaTabindex = {\n element: \"div\",\n mutate: function mutate(element) {\n element.innerHTML = '' + '' + '\"\"';\n return false;\n },\n validate: function validate(element, focusTarget, _document) {\n if (platform.is.GECKO) {\n // fixes https://github.com/medialize/ally.js/issues/35\n // Firefox loads the DataURI asynchronously, causing a false-negative\n return true;\n }\n var focus = element.querySelector(\"area\");\n focus.focus();\n return _document.activeElement === focus;\n }\n};\n// https://developer.mozilla.org/docs/Web/HTML/Element/img#attr-usemap\nvar focusAreaWithoutHref = {\n element: \"div\",\n mutate: function mutate(element) {\n element.innerHTML = '' + '' + '\"\"';\n return element.querySelector(\"area\");\n },\n validate: function validate(element, focusTarget, _document) {\n if (platform.is.GECKO) {\n // fixes https://github.com/medialize/ally.js/issues/35\n // Firefox loads the DataURI asynchronously, causing a false-negative\n return true;\n }\n return _document.activeElement === focusTarget;\n }\n};\nvar focusAudioWithoutControls = {\n name: \"can-focus-audio-without-controls\",\n element: \"audio\",\n mutate: function mutate(element) {\n try {\n // invalid media file can trigger warning in console, data-uri to prevent HTTP request\n element.setAttribute(\"src\", gif);\n } catch (e) {\n // IE9 may throw \"Error: Not implemented\"\n }\n }\n};\nvar invalidGif = \"data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ\";\n// NOTE: https://github.com/medialize/ally.js/issues/35\n// https://developer.mozilla.org/docs/Web/HTML/Element/img#attr-usemap\nvar focusBrokenImageMap = {\n element: \"div\",\n mutate: function mutate(element) {\n element.innerHTML = '' + '\"\"';\n return element.querySelector(\"area\");\n }\n};\n// Children of focusable elements with display:flex are focusable in IE10-11\nvar focusChildrenOfFocusableFlexbox = {\n element: \"div\",\n mutate: function mutate(element) {\n element.setAttribute(\"tabindex\", \"-1\");\n element.setAttribute(\"style\", \"display: -webkit-flex; display: -ms-flexbox; display: flex;\");\n element.innerHTML = 'hello';\n return element.querySelector(\"span\");\n }\n};\n// fieldset[tabindex=0][disabled] should not be focusable, but Blink and WebKit disagree\n// @specification https://www.w3.org/TR/html5/disabled-elements.html#concept-element-disabled\n// @browser-issue Chromium https://crbug.com/453847\n// @browser-issue WebKit https://bugs.webkit.org/show_bug.cgi?id=141086\nvar focusFieldsetDisabled = {\n element: \"fieldset\",\n mutate: function mutate(element) {\n element.setAttribute(\"tabindex\", 0);\n element.setAttribute(\"disabled\", \"disabled\");\n }\n};\nvar focusFieldset = {\n element: \"fieldset\",\n mutate: function mutate(element) {\n element.innerHTML = \"legend

content

\";\n }\n};\n// elements with display:flex are focusable in IE10-11\nvar focusFlexboxContainer = {\n element: \"span\",\n mutate: function mutate(element) {\n element.setAttribute(\"style\", \"display: -webkit-flex; display: -ms-flexbox; display: flex;\");\n element.innerHTML = 'hello';\n }\n};\n// form[tabindex=0][disabled] should be focusable as the\n// specification doesn't know the disabled attribute on the form element\n// @specification https://www.w3.org/TR/html5/forms.html#the-form-element\nvar focusFormDisabled = {\n element: \"form\",\n mutate: function mutate(element) {\n element.setAttribute(\"tabindex\", 0);\n element.setAttribute(\"disabled\", \"disabled\");\n }\n};\n// NOTE: https://github.com/medialize/ally.js/issues/35\n// fixes https://github.com/medialize/ally.js/issues/20\n// https://developer.mozilla.org/docs/Web/HTML/Element/img#attr-ismap\nvar focusImgIsmap = {\n element: \"a\",\n mutate: function mutate(element) {\n element.href = \"#void\";\n element.innerHTML = '\"\"';\n return element.querySelector(\"img\");\n }\n};\n// NOTE: https://github.com/medialize/ally.js/issues/35\n// https://developer.mozilla.org/docs/Web/HTML/Element/img#attr-usemap\nvar focusImgUsemapTabindex = {\n element: \"div\",\n mutate: function mutate(element) {\n element.innerHTML = '' + '\"\"';\n return element.querySelector(\"img\");\n }\n};\nvar focusInHiddenIframe = {\n element: function element(wrapper, _document) {\n var iframe = _document.createElement(\"iframe\");\n // iframe must be part of the DOM before accessing the contentWindow is possible\n wrapper.appendChild(iframe);\n // create the iframe's default document ()\n var iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.close();\n return iframe;\n },\n mutate: function mutate(iframe) {\n iframe.style.visibility = \"hidden\";\n var iframeDocument = iframe.contentWindow.document;\n var input = iframeDocument.createElement(\"input\");\n iframeDocument.body.appendChild(input);\n return input;\n },\n validate: function validate(iframe) {\n var iframeDocument = iframe.contentWindow.document;\n var focus = iframeDocument.querySelector(\"input\");\n return iframeDocument.activeElement === focus;\n }\n};\nvar result = !platform.is.WEBKIT;\nfunction focusInZeroDimensionObject() {\n return result;\n}\n// Firefox allows *any* value and treats invalid values like tabindex=\"-1\"\n// @browser-issue Gecko https://bugzilla.mozilla.org/show_bug.cgi?id=1128054\nvar focusInvalidTabindex = {\n element: \"div\",\n mutate: function mutate(element) {\n element.setAttribute(\"tabindex\", \"invalid-value\");\n }\n};\nvar focusLabelTabindex = {\n element: \"label\",\n mutate: function mutate(element) {\n element.setAttribute(\"tabindex\", \"-1\");\n },\n validate: function validate(element, focusTarget, _document) {\n // force layout in Chrome 49, otherwise the element won't be focusable\n /* eslint-disable no-unused-vars */ var variableToPreventDeadCodeElimination = element.offsetHeight;\n /* eslint-enable no-unused-vars */ element.focus();\n return _document.activeElement === element;\n }\n};\nvar svg = \"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtb\" + \"G5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiBpZD0ic3ZnIj48dGV4dCB4PSIxMCIgeT0iMjAiIGlkPSJ\" + \"zdmctbGluay10ZXh0Ij50ZXh0PC90ZXh0Pjwvc3ZnPg==\";\n// Note: IE10 on BrowserStack does not like this test\nvar focusObjectSvgHidden = {\n element: \"object\",\n mutate: function mutate(element) {\n element.setAttribute(\"type\", \"image/svg+xml\");\n element.setAttribute(\"data\", svg);\n element.setAttribute(\"width\", \"200\");\n element.setAttribute(\"height\", \"50\");\n element.style.visibility = \"hidden\";\n }\n};\n// Note: IE10 on BrowserStack does not like this test\nvar focusObjectSvg = {\n name: \"can-focus-object-svg\",\n element: \"object\",\n mutate: function mutate(element) {\n element.setAttribute(\"type\", \"image/svg+xml\");\n element.setAttribute(\"data\", svg);\n element.setAttribute(\"width\", \"200\");\n element.setAttribute(\"height\", \"50\");\n },\n validate: function validate(element, focusTarget, _document) {\n if (platform.is.GECKO) {\n // Firefox seems to be handling the object creation asynchronously and thereby produces a false negative test result.\n // Because we know Firefox is able to focus object elements referencing SVGs, we simply cheat by sniffing the user agent string\n return true;\n }\n return _document.activeElement === element;\n }\n};\n// Every Environment except IE9 considers SWF objects focusable\nvar result$1 = !platform.is.IE9;\nfunction focusObjectSwf() {\n return result$1;\n}\nvar focusRedirectImgUsemap = {\n element: \"div\",\n mutate: function mutate(element) {\n element.innerHTML = '' + '\"\"';\n // focus the , not the
\n return element.querySelector(\"img\");\n },\n validate: function validate(element, focusTarget, _document) {\n var target = element.querySelector(\"area\");\n return _document.activeElement === target;\n }\n};\n// see https://jsbin.com/nenirisage/edit?html,js,console,output\nvar focusRedirectLegend = {\n element: \"fieldset\",\n mutate: function mutate(element) {\n element.innerHTML = 'legend';\n // take care of focus in validate();\n return false;\n },\n validate: function validate(element, focusTarget, _document) {\n var focusable = element.querySelector('input[tabindex=\"-1\"]');\n var tabbable = element.querySelector('input[tabindex=\"0\"]');\n // Firefox requires this test to focus the
first, while this is not necessary in\n // https://jsbin.com/nenirisage/edit?html,js,console,output\n element.focus();\n element.querySelector(\"legend\").focus();\n return _document.activeElement === focusable && \"focusable\" || _document.activeElement === tabbable && \"tabbable\" || \"\";\n }\n};\n// https://github.com/medialize/ally.js/issues/21\nvar focusScrollBody = {\n element: \"div\",\n mutate: function mutate(element) {\n element.setAttribute(\"style\", \"width: 100px; height: 50px; overflow: auto;\");\n element.innerHTML = '
scrollable content
';\n return element.querySelector(\"div\");\n }\n};\n// https://github.com/medialize/ally.js/issues/21\nvar focusScrollContainerWithoutOverflow = {\n element: \"div\",\n mutate: function mutate(element) {\n element.setAttribute(\"style\", \"width: 100px; height: 50px;\");\n element.innerHTML = '
scrollable content
';\n }\n};\n// https://github.com/medialize/ally.js/issues/21\nvar focusScrollContainer = {\n element: \"div\",\n mutate: function mutate(element) {\n element.setAttribute(\"style\", \"width: 100px; height: 50px; overflow: auto;\");\n element.innerHTML = '
scrollable content
';\n }\n};\nvar focusSummary = {\n element: \"details\",\n mutate: function mutate(element) {\n element.innerHTML = \"foo

content

\";\n return element.firstElementChild;\n }\n};\nfunction makeFocusableForeignObject() {\n // Constructs \n // without raising a Trusted Types violation\n var foreignObject = document.createElementNS(\"http://www.w3.org/2000/svg\", \"foreignObject\");\n foreignObject.width.baseVal.value = 30;\n foreignObject.height.baseVal.value = 30;\n foreignObject.appendChild(document.createElement(\"input\"));\n foreignObject.lastChild.type = \"text\";\n return foreignObject;\n}\nfunction focusSvgForeignObjectHack(element) {\n // Edge13, Edge14: foreignObject focus hack\n // https://jsbin.com/kunehinugi/edit?html,js,output\n // https://jsbin.com/fajagi/3/edit?html,js,output\n var isSvgElement = element.ownerSVGElement || element.nodeName.toLowerCase() === \"svg\";\n if (!isSvgElement) {\n return false;\n }\n // inject and focus an element into the SVG element to receive focus\n var foreignObject = makeFocusableForeignObject();\n element.appendChild(foreignObject);\n var input = foreignObject.querySelector(\"input\");\n input.focus();\n // upon disabling the activeElement, IE and Edge\n // will not shift focus to like all the other\n // browsers, but instead find the first focusable\n // ancestor and shift focus to that\n input.disabled = true;\n // clean up\n element.removeChild(foreignObject);\n return true;\n}\nfunction generate(element) {\n return '' + element + \"\";\n}\nfunction focus(element) {\n if (element.focus) {\n return;\n }\n try {\n HTMLElement.prototype.focus.call(element);\n } catch (e) {\n focusSvgForeignObjectHack(element);\n }\n}\nfunction validate(element, focusTarget, _document) {\n focus(focusTarget);\n return _document.activeElement === focusTarget;\n}\nvar focusSvgFocusableAttribute = {\n element: \"div\",\n mutate: function mutate(element) {\n element.innerHTML = generate('a');\n return element.querySelector(\"text\");\n },\n validate: validate\n};\nvar focusSvgTabindexAttribute = {\n element: \"div\",\n mutate: function mutate(element) {\n element.innerHTML = generate('a');\n return element.querySelector(\"text\");\n },\n validate: validate\n};\nvar focusSvgNegativeTabindexAttribute = {\n element: \"div\",\n mutate: function mutate(element) {\n element.innerHTML = generate('a');\n return element.querySelector(\"text\");\n },\n validate: validate\n};\nvar focusSvgUseTabindex = {\n element: \"div\",\n mutate: function mutate(element) {\n element.innerHTML = generate([\n 'link',\n ''\n ].join(\"\"));\n return element.querySelector(\"use\");\n },\n validate: validate\n};\nvar focusSvgForeignobjectTabindex = {\n element: \"div\",\n mutate: function mutate(element) {\n element.innerHTML = generate('');\n // Safari 8's querySelector() can't identify foreignObject, but getElementsByTagName() can\n return element.querySelector(\"foreignObject\") || element.getElementsByTagName(\"foreignObject\")[0];\n },\n validate: validate\n};\n// Firefox seems to be handling the SVG-document-in-iframe creation asynchronously\n// and thereby produces a false negative test result. Thus the test is pointless\n// and we resort to UA sniffing once again.\n// see http://jsbin.com/vunadohoko/1/edit?js,console,output\nvar result$2 = Boolean(platform.is.GECKO && typeof SVGElement !== \"undefined\" && SVGElement.prototype.focus);\nfunction focusSvgInIframe() {\n return result$2;\n}\nvar focusSvg = {\n element: \"div\",\n mutate: function mutate(element) {\n element.innerHTML = generate(\"\");\n return element.firstChild;\n },\n validate: validate\n};\n// Firefox allows *any* value and treats invalid values like tabindex=\"-1\"\n// @browser-issue Gecko https://bugzilla.mozilla.org/show_bug.cgi?id=1128054\nvar focusTabindexTrailingCharacters = {\n element: \"div\",\n mutate: function mutate(element) {\n element.setAttribute(\"tabindex\", \"3x\");\n }\n};\nvar focusTable = {\n element: \"table\",\n mutate: function mutate(element, wrapper, _document) {\n // IE9 has a problem replacing TBODY contents with innerHTML.\n // https://stackoverflow.com/a/8097055/515124\n // element.innerHTML = 'cell';\n var fragment = _document.createDocumentFragment();\n fragment.innerHTML = \"cell\";\n element.appendChild(fragment);\n }\n};\nvar focusVideoWithoutControls = {\n element: \"video\",\n mutate: function mutate(element) {\n try {\n // invalid media file can trigger warning in console, data-uri to prevent HTTP request\n element.setAttribute(\"src\", gif);\n } catch (e) {\n // IE9 may throw \"Error: Not implemented\"\n }\n }\n};\n// https://jsbin.com/vafaba/3/edit?html,js,console,output\nvar result$3 = platform.is.GECKO || platform.is.TRIDENT || platform.is.EDGE;\nfunction tabsequenceAreaAtImgPosition() {\n return result$3;\n}\nvar testCallbacks = {\n cssShadowPiercingDeepCombinator: cssShadowPiercingDeepCombinator,\n focusInZeroDimensionObject: focusInZeroDimensionObject,\n focusObjectSwf: focusObjectSwf,\n focusSvgInIframe: focusSvgInIframe,\n tabsequenceAreaAtImgPosition: tabsequenceAreaAtImgPosition\n};\nvar testDescriptions = {\n focusAreaImgTabindex: focusAreaImgTabindex,\n focusAreaTabindex: focusAreaTabindex,\n focusAreaWithoutHref: focusAreaWithoutHref,\n focusAudioWithoutControls: focusAudioWithoutControls,\n focusBrokenImageMap: focusBrokenImageMap,\n focusChildrenOfFocusableFlexbox: focusChildrenOfFocusableFlexbox,\n focusFieldsetDisabled: focusFieldsetDisabled,\n focusFieldset: focusFieldset,\n focusFlexboxContainer: focusFlexboxContainer,\n focusFormDisabled: focusFormDisabled,\n focusImgIsmap: focusImgIsmap,\n focusImgUsemapTabindex: focusImgUsemapTabindex,\n focusInHiddenIframe: focusInHiddenIframe,\n focusInvalidTabindex: focusInvalidTabindex,\n focusLabelTabindex: focusLabelTabindex,\n focusObjectSvg: focusObjectSvg,\n focusObjectSvgHidden: focusObjectSvgHidden,\n focusRedirectImgUsemap: focusRedirectImgUsemap,\n focusRedirectLegend: focusRedirectLegend,\n focusScrollBody: focusScrollBody,\n focusScrollContainerWithoutOverflow: focusScrollContainerWithoutOverflow,\n focusScrollContainer: focusScrollContainer,\n focusSummary: focusSummary,\n focusSvgFocusableAttribute: focusSvgFocusableAttribute,\n focusSvgTabindexAttribute: focusSvgTabindexAttribute,\n focusSvgNegativeTabindexAttribute: focusSvgNegativeTabindexAttribute,\n focusSvgUseTabindex: focusSvgUseTabindex,\n focusSvgForeignobjectTabindex: focusSvgForeignobjectTabindex,\n focusSvg: focusSvg,\n focusTabindexTrailingCharacters: focusTabindexTrailingCharacters,\n focusTable: focusTable,\n focusVideoWithoutControls: focusVideoWithoutControls\n};\nfunction executeTests() {\n var results = detectFocus(testDescriptions);\n Object.keys(testCallbacks).forEach(function(key) {\n results[key] = testCallbacks[key]();\n });\n return results;\n}\nvar supportsCache = null;\nfunction _supports() {\n if (supportsCache) {\n return supportsCache;\n }\n supportsCache = cache$1.get();\n if (!supportsCache.time) {\n cache$1.set(executeTests());\n supportsCache = cache$1.get();\n }\n return supportsCache;\n}\nvar supports = void 0;\n// https://www.w3.org/TR/html5/infrastructure.html#rules-for-parsing-integers\n// NOTE: all browsers agree to allow trailing spaces as well\nvar validIntegerPatternNoTrailing = /^\\s*(-|\\+)?[0-9]+\\s*$/;\nvar validIntegerPatternWithTrailing = /^\\s*(-|\\+)?[0-9]+.*$/;\nfunction isValidTabindex(context) {\n if (!supports) {\n supports = _supports();\n }\n var validIntegerPattern = supports.focusTabindexTrailingCharacters ? validIntegerPatternWithTrailing : validIntegerPatternNoTrailing;\n var element = contextToElement({\n label: \"is/valid-tabindex\",\n resolveDocument: true,\n context: context\n });\n // Edge 14 has a capitalization problem on SVG elements,\n // see https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/9282058/\n var hasTabindex = element.hasAttribute(\"tabindex\");\n var hasTabIndex = element.hasAttribute(\"tabIndex\");\n if (!hasTabindex && !hasTabIndex) {\n return false;\n }\n // older Firefox and Internet Explorer don't support tabindex on SVG elements\n var isSvgElement = element.ownerSVGElement || element.nodeName.toLowerCase() === \"svg\";\n if (isSvgElement && !supports.focusSvgTabindexAttribute) {\n return false;\n }\n // @browser-issue Gecko https://bugzilla.mozilla.org/show_bug.cgi?id=1128054\n if (supports.focusInvalidTabindex) {\n return true;\n }\n // an element matches the tabindex selector even if its value is invalid\n var tabindex = element.getAttribute(hasTabindex ? \"tabindex\" : \"tabIndex\");\n // IE11 parses tabindex=\"\" as the value \"-32768\"\n // @browser-issue Trident https://connect.microsoft.com/IE/feedback/details/1072965\n if (tabindex === \"-32768\") {\n return false;\n }\n return Boolean(tabindex && validIntegerPattern.test(tabindex));\n}\nfunction tabindexValue(element) {\n if (!isValidTabindex(element)) {\n return null;\n }\n // Edge 14 has a capitalization problem on SVG elements,\n // see https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/9282058/\n var hasTabindex = element.hasAttribute(\"tabindex\");\n var attributeName = hasTabindex ? \"tabindex\" : \"tabIndex\";\n // @browser-issue Gecko https://bugzilla.mozilla.org/show_bug.cgi?id=1128054\n var tabindex = parseInt(element.getAttribute(attributeName), 10);\n return isNaN(tabindex) ? -1 : tabindex;\n}\n// this is a shared utility file for focus-relevant.js and tabbable.js\n// separate testing of this file's functions is not necessary,\n// as they're implicitly tested by way of the consumers\nfunction isUserModifyWritable(style) {\n // https://www.w3.org/TR/1999/WD-css3-userint-19990916#user-modify\n // https://github.com/medialize/ally.js/issues/17\n var userModify = style.webkitUserModify || \"\";\n return Boolean(userModify && userModify.indexOf(\"write\") !== -1);\n}\nfunction hasCssOverflowScroll(style) {\n return [\n style.getPropertyValue(\"overflow\"),\n style.getPropertyValue(\"overflow-x\"),\n style.getPropertyValue(\"overflow-y\")\n ].some(function(overflow) {\n return overflow === \"auto\" || overflow === \"scroll\";\n });\n}\nfunction hasCssDisplayFlex(style) {\n return style.display.indexOf(\"flex\") > -1;\n}\nfunction isScrollableContainer(element, nodeName, parentNodeName, parentStyle) {\n if (nodeName !== \"div\" && nodeName !== \"span\") {\n // Internet Explorer advances scrollable containers and bodies to focusable\n // only if the scrollable container is
or - this does *not*\n // happen for
,
, …\n return false;\n }\n if (parentNodeName && parentNodeName !== \"div\" && parentNodeName !== \"span\" && !hasCssOverflowScroll(parentStyle)) {\n return false;\n }\n return element.offsetHeight < element.scrollHeight || element.offsetWidth < element.scrollWidth;\n}\nvar supports$1 = void 0;\nfunction isFocusRelevantRules() {\n var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}, context = _ref.context, _ref$except = _ref.except, except = _ref$except === undefined ? {\n flexbox: false,\n scrollable: false,\n shadow: false\n } : _ref$except;\n if (!supports$1) {\n supports$1 = _supports();\n }\n var element = contextToElement({\n label: \"is/focus-relevant\",\n resolveDocument: true,\n context: context\n });\n if (!except.shadow && element.shadowRoot) {\n // a ShadowDOM host receives focus when the focus moves to its content\n return true;\n }\n var nodeName = element.nodeName.toLowerCase();\n if (nodeName === \"input\" && element.type === \"hidden\") {\n // input[type=\"hidden\"] supports.cannot be focused\n return false;\n }\n if (nodeName === \"input\" || nodeName === \"select\" || nodeName === \"button\" || nodeName === \"textarea\") {\n return true;\n }\n if (nodeName === \"legend\" && supports$1.focusRedirectLegend) {\n // specifics filtered in is/focusable\n return true;\n }\n if (nodeName === \"label\") {\n // specifics filtered in is/focusable\n return true;\n }\n if (nodeName === \"area\") {\n // specifics filtered in is/focusable\n return true;\n }\n if (nodeName === \"a\" && element.hasAttribute(\"href\")) {\n return true;\n }\n if (nodeName === \"object\" && element.hasAttribute(\"usemap\")) {\n // object[usemap] is not focusable in any browser\n return false;\n }\n if (nodeName === \"object\") {\n var svgType = element.getAttribute(\"type\");\n if (!supports$1.focusObjectSvg && svgType === \"image/svg+xml\") {\n // object[type=\"image/svg+xml\"] is not focusable in Internet Explorer\n return false;\n } else if (!supports$1.focusObjectSwf && svgType === \"application/x-shockwave-flash\") {\n // object[type=\"application/x-shockwave-flash\"] is not focusable in Internet Explorer 9\n return false;\n }\n }\n if (nodeName === \"iframe\" || nodeName === \"object\") {\n // browsing context containers\n return true;\n }\n if (nodeName === \"embed\" || nodeName === \"keygen\") {\n // embed is considered focus-relevant but not focusable\n // see https://github.com/medialize/ally.js/issues/82\n return true;\n }\n if (element.hasAttribute(\"contenteditable\")) {\n // also see CSS property user-modify below\n return true;\n }\n if (nodeName === \"audio\" && (supports$1.focusAudioWithoutControls || element.hasAttribute(\"controls\"))) {\n return true;\n }\n if (nodeName === \"video\" && (supports$1.focusVideoWithoutControls || element.hasAttribute(\"controls\"))) {\n return true;\n }\n if (supports$1.focusSummary && nodeName === \"summary\") {\n return true;\n }\n var validTabindex = isValidTabindex(element);\n if (nodeName === \"img\" && element.hasAttribute(\"usemap\")) {\n // Gecko, Trident and Edge do not allow an image with an image map and tabindex to be focused,\n // it appears the tabindex is overruled so focus is still forwarded to the \n return validTabindex && supports$1.focusImgUsemapTabindex || supports$1.focusRedirectImgUsemap;\n }\n if (supports$1.focusTable && (nodeName === \"table\" || nodeName === \"td\")) {\n // IE10-11 supports.can focus and
\n return true;\n }\n if (supports$1.focusFieldset && nodeName === \"fieldset\") {\n // IE10-11 supports.can focus
\n return true;\n }\n var isSvgElement = nodeName === \"svg\";\n var isSvgContent = element.ownerSVGElement;\n var focusableAttribute = element.getAttribute(\"focusable\");\n var tabindex = tabindexValue(element);\n if (nodeName === \"use\" && tabindex !== null && !supports$1.focusSvgUseTabindex) {\n // cannot be made focusable by adding a tabindex attribute anywhere but Blink and WebKit\n return false;\n }\n if (nodeName === \"foreignobject\") {\n // can only be made focusable in Blink and WebKit\n return tabindex !== null && supports$1.focusSvgForeignobjectTabindex;\n }\n if (elementMatches(element, \"svg a\") && element.hasAttribute(\"xlink:href\")) {\n return true;\n }\n if ((isSvgElement || isSvgContent) && element.focus && !supports$1.focusSvgNegativeTabindexAttribute && tabindex < 0) {\n // Firefox 51 and 52 treat any natively tabbable SVG element with\n // tabindex=\"-1\" as tabbable and everything else as inert\n // see https://bugzilla.mozilla.org/show_bug.cgi?id=1302340\n return false;\n }\n if (isSvgElement) {\n return validTabindex || supports$1.focusSvg || supports$1.focusSvgInIframe || // Internet Explorer understands the focusable attribute introduced in SVG Tiny 1.2\n Boolean(supports$1.focusSvgFocusableAttribute && focusableAttribute && focusableAttribute === \"true\");\n }\n if (isSvgContent) {\n if (supports$1.focusSvgTabindexAttribute && validTabindex) {\n return true;\n }\n if (supports$1.focusSvgFocusableAttribute) {\n // Internet Explorer understands the focusable attribute introduced in SVG Tiny 1.2\n return focusableAttribute === \"true\";\n }\n }\n // https://www.w3.org/TR/html5/editing.html#sequential-focus-navigation-and-the-tabindex-attribute\n if (validTabindex) {\n return true;\n }\n var style = window.getComputedStyle(element, null);\n if (isUserModifyWritable(style)) {\n return true;\n }\n if (supports$1.focusImgIsmap && nodeName === \"img\" && element.hasAttribute(\"ismap\")) {\n // IE10-11 considers the in focusable\n // https://github.com/medialize/ally.js/issues/20\n var hasLinkParent = getParents({\n context: element\n }).some(function(parent) {\n return parent.nodeName.toLowerCase() === \"a\" && parent.hasAttribute(\"href\");\n });\n if (hasLinkParent) {\n return true;\n }\n }\n // https://github.com/medialize/ally.js/issues/21\n if (!except.scrollable && supports$1.focusScrollContainer) {\n if (supports$1.focusScrollContainerWithoutOverflow) {\n // Internet Explorer does will consider the scrollable area focusable\n // if the element is a
or a and it is in fact scrollable,\n // regardless of the CSS overflow property\n if (isScrollableContainer(element, nodeName)) {\n return true;\n }\n } else if (hasCssOverflowScroll(style)) {\n // Firefox requires proper overflow setting, IE does not necessarily\n // https://developer.mozilla.org/docs/Web/CSS/overflow\n return true;\n }\n }\n if (!except.flexbox && supports$1.focusFlexboxContainer && hasCssDisplayFlex(style)) {\n // elements with display:flex are focusable in IE10-11\n return true;\n }\n var parent = element.parentElement;\n if (!except.scrollable && parent) {\n var parentNodeName = parent.nodeName.toLowerCase();\n var parentStyle = window.getComputedStyle(parent, null);\n if (supports$1.focusScrollBody && isScrollableContainer(parent, nodeName, parentNodeName, parentStyle)) {\n // scrollable bodies are focusable Internet Explorer\n // https://github.com/medialize/ally.js/issues/21\n return true;\n }\n // Children of focusable elements with display:flex are focusable in IE10-11\n if (supports$1.focusChildrenOfFocusableFlexbox) {\n if (hasCssDisplayFlex(parentStyle)) {\n return true;\n }\n }\n }\n // NOTE: elements marked as inert are not focusable,\n // but that property is not exposed to the DOM\n // https://www.w3.org/TR/html5/editing.html#inert\n return false;\n}\n// bind exceptions to an iterator callback\nisFocusRelevantRules.except = function() {\n var except = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var isFocusRelevant = function isFocusRelevant(context) {\n return isFocusRelevantRules({\n context: context,\n except: except\n });\n };\n isFocusRelevant.rules = isFocusRelevantRules;\n return isFocusRelevant;\n};\n// provide isFocusRelevant(context) as default iterator callback\nvar isFocusRelevant = isFocusRelevantRules.except({});\nfunction findIndex(array, callback) {\n // attempt to use native or polyfilled Array#findIndex first\n if (array.findIndex) {\n return array.findIndex(callback);\n }\n var length = array.length;\n // shortcut if the array is empty\n if (length === 0) {\n return -1;\n }\n // otherwise loop over array\n for(var i = 0; i < length; i++){\n if (callback(array[i], i, array)) {\n return i;\n }\n }\n return -1;\n}\nfunction getContentDocument(node) {\n try {\n // works on and