most-box 0.0.2 → 0.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -21
- package/README.md +222 -156
- package/electron/main.js +67 -0
- package/out/404/index.html +15 -0
- package/out/404.html +15 -0
- package/out/__next.__PAGE__.txt +11 -0
- package/out/__next._full.txt +21 -0
- package/out/__next._head.txt +5 -0
- package/out/__next._index.txt +7 -0
- package/out/__next._tree.txt +4 -0
- package/out/_next/static/alUUgRz4oMlw4EtULOYfV/_buildManifest.js +11 -0
- package/out/_next/static/alUUgRz4oMlw4EtULOYfV/_clientMiddlewareManifest.js +1 -0
- package/out/_next/static/alUUgRz4oMlw4EtULOYfV/_ssgManifest.js +1 -0
- package/out/_next/static/chunks/00s106sbq8t9v.js +1 -0
- package/out/_next/static/chunks/0174xh3wfsjm1.js +2 -0
- package/out/_next/static/chunks/01xlw8hd842-c.js +1 -0
- package/out/_next/static/chunks/02ou_44kkb5dz.js +1 -0
- package/out/_next/static/chunks/02pr2b_eos3~h.js +1 -0
- package/out/_next/static/chunks/03~yq9q893hmn.js +1 -0
- package/out/_next/static/chunks/07lsjkarm1p9f.css +1 -0
- package/out/_next/static/chunks/0_-ccbcyh_o30.css +1 -0
- package/out/_next/static/chunks/0_b839~4.q324.js +1 -0
- package/out/_next/static/chunks/0_sna3wdypbzr.js +1 -0
- package/out/_next/static/chunks/0_wia9ofmsi1c.css +2 -0
- package/out/_next/static/chunks/0byj66sc-9o0g.js +1 -0
- package/out/_next/static/chunks/0bzupvr5gt3k9.js +31 -0
- package/out/_next/static/chunks/0d3shmwh5_nmn.js +1 -0
- package/out/_next/static/chunks/0du450zbk4kq_.js +1 -0
- package/out/_next/static/chunks/0e_h0d3ekzks8.css +1 -0
- package/out/_next/static/chunks/0ho~log~~-jwp.css +1 -0
- package/out/_next/static/chunks/0ibjp~7qzxfjv.js +5 -0
- package/out/_next/static/chunks/0imvn_arv36xt.css +1 -0
- package/out/_next/static/chunks/0j9~17180dl8j.js +1 -0
- package/out/_next/static/chunks/0ji.28mehrvdp.js +1 -0
- package/out/_next/static/chunks/0jl~j62iz2uvr.js +1 -0
- package/out/_next/static/chunks/0nct0fubs64d-.js +1 -0
- package/out/_next/static/chunks/0n~dq4kpx9xxx.js +1 -0
- package/out/_next/static/chunks/0pqt~8bl3ukh4.js +4 -0
- package/out/_next/static/chunks/0q7ck9f.90_i9.js +1 -0
- package/out/_next/static/chunks/0qub_r0x_r-e9.css +1 -0
- package/out/_next/static/chunks/0rr4gwjp9z~9a.js +1 -0
- package/out/_next/static/chunks/0ry.po.a~iu4p.js +1 -0
- package/out/_next/static/chunks/0slwj0c46k5cu.js +1 -0
- package/out/_next/static/chunks/0sorqk.oc6b7j.css +1 -0
- package/out/_next/static/chunks/11dalasm30arx.js +1 -0
- package/out/_next/static/chunks/turbopack-0a_g3u0ud~jb8.js +1 -0
- package/out/_not-found/__next._full.txt +20 -0
- package/out/_not-found/__next._head.txt +5 -0
- package/out/_not-found/__next._index.txt +7 -0
- package/out/_not-found/__next._not-found.__PAGE__.txt +9 -0
- package/out/_not-found/__next._not-found.txt +5 -0
- package/out/_not-found/__next._tree.txt +2 -0
- package/out/_not-found/index.html +15 -0
- package/out/_not-found/index.txt +20 -0
- package/out/app/__next._full.txt +20 -0
- package/out/app/__next._head.txt +5 -0
- package/out/app/__next._index.txt +7 -0
- package/out/app/__next._tree.txt +2 -0
- package/out/app/__next.app.__PAGE__.txt +9 -0
- package/out/app/__next.app.txt +5 -0
- package/out/app/index.html +15 -0
- package/out/app/index.txt +20 -0
- package/out/changelog/__next._full.txt +22 -0
- package/out/changelog/__next._head.txt +5 -0
- package/out/changelog/__next._index.txt +7 -0
- package/out/changelog/__next._tree.txt +3 -0
- package/out/changelog/__next.changelog.__PAGE__.txt +10 -0
- package/out/changelog/__next.changelog.txt +5 -0
- package/out/changelog/index.html +15 -0
- package/out/changelog/index.txt +22 -0
- package/out/chat/__next._full.txt +21 -0
- package/out/chat/__next._head.txt +5 -0
- package/out/chat/__next._index.txt +7 -0
- package/out/chat/__next._tree.txt +3 -0
- package/out/chat/__next.chat.__PAGE__.txt +9 -0
- package/out/chat/__next.chat.txt +6 -0
- package/out/chat/index.html +15 -0
- package/out/chat/index.txt +21 -0
- package/out/docs/__next._full.txt +22 -0
- package/out/docs/__next._head.txt +5 -0
- package/out/docs/__next._index.txt +7 -0
- package/out/docs/__next._tree.txt +3 -0
- package/out/docs/__next.docs.__PAGE__.txt +10 -0
- package/out/docs/__next.docs.txt +5 -0
- package/out/docs/getting-started/__next._full.txt +22 -0
- package/out/docs/getting-started/__next._head.txt +5 -0
- package/out/docs/getting-started/__next._index.txt +7 -0
- package/out/docs/getting-started/__next._tree.txt +3 -0
- package/out/docs/getting-started/__next.docs.getting-started.__PAGE__.txt +10 -0
- package/out/docs/getting-started/__next.docs.getting-started.txt +5 -0
- package/out/docs/getting-started/__next.docs.txt +5 -0
- package/out/docs/getting-started/index.html +15 -0
- package/out/docs/getting-started/index.txt +22 -0
- package/out/docs/index.html +15 -0
- package/out/docs/index.txt +22 -0
- package/out/download/__next._full.txt +34 -0
- package/out/download/__next._head.txt +5 -0
- package/out/download/__next._index.txt +7 -0
- package/out/download/__next._tree.txt +4 -0
- package/out/download/__next.download.__PAGE__.txt +16 -0
- package/out/download/__next.download.txt +5 -0
- package/out/download/index.html +15 -0
- package/out/download/index.txt +34 -0
- package/out/favicon.ico +0 -0
- package/out/fonts/jetbrains-mono-latin-400-normal.woff2 +0 -0
- package/out/fonts/jetbrains-mono-latin-500-normal.woff2 +0 -0
- package/out/fonts/jetbrains-mono-latin-600-normal.woff2 +0 -0
- package/out/fonts/jetbrains-mono-latin-700-normal.woff2 +0 -0
- package/out/index.html +15 -0
- package/out/index.txt +21 -0
- package/out/lottery/__next._full.txt +21 -0
- package/out/lottery/__next._head.txt +5 -0
- package/out/lottery/__next._index.txt +7 -0
- package/out/lottery/__next._tree.txt +3 -0
- package/out/lottery/__next.lottery.__PAGE__.txt +9 -0
- package/out/lottery/__next.lottery.txt +6 -0
- package/out/lottery/index.html +15 -0
- package/out/lottery/index.txt +21 -0
- package/out/ping/__next._full.txt +21 -0
- package/out/ping/__next._head.txt +5 -0
- package/out/ping/__next._index.txt +7 -0
- package/out/ping/__next._tree.txt +4 -0
- package/out/ping/__next.ping.__PAGE__.txt +10 -0
- package/out/ping/__next.ping.txt +5 -0
- package/out/ping/index.html +15 -0
- package/out/ping/index.txt +21 -0
- package/out/pwa-512x512.png +0 -0
- package/out/web3/__next._full.txt +21 -0
- package/out/web3/__next._head.txt +5 -0
- package/out/web3/__next._index.txt +7 -0
- package/out/web3/__next._tree.txt +3 -0
- package/out/web3/__next.web3.__PAGE__.txt +9 -0
- package/out/web3/__next.web3.txt +6 -0
- package/out/web3/ed25519/__next._full.txt +20 -0
- package/out/web3/ed25519/__next._head.txt +5 -0
- package/out/web3/ed25519/__next._index.txt +7 -0
- package/out/web3/ed25519/__next._tree.txt +3 -0
- package/out/web3/ed25519/__next.web3.ed25519.__PAGE__.txt +6 -0
- package/out/web3/ed25519/__next.web3.ed25519.txt +5 -0
- package/out/web3/ed25519/__next.web3.txt +6 -0
- package/out/web3/ed25519/index.html +1 -0
- package/out/web3/ed25519/index.txt +20 -0
- package/out/web3/index.html +15 -0
- package/out/web3/index.txt +21 -0
- package/out/web3/tools/__next._full.txt +20 -0
- package/out/web3/tools/__next._head.txt +5 -0
- package/out/web3/tools/__next._index.txt +7 -0
- package/out/web3/tools/__next._tree.txt +3 -0
- package/out/web3/tools/__next.web3.tools.__PAGE__.txt +6 -0
- package/out/web3/tools/__next.web3.tools.txt +5 -0
- package/out/web3/tools/__next.web3.txt +6 -0
- package/out/web3/tools/index.html +1 -0
- package/out/web3/tools/index.txt +20 -0
- package/package.json +162 -48
- package/public/fonts/jetbrains-mono-latin-400-normal.woff2 +0 -0
- package/public/fonts/jetbrains-mono-latin-500-normal.woff2 +0 -0
- package/public/fonts/jetbrains-mono-latin-600-normal.woff2 +0 -0
- package/public/fonts/jetbrains-mono-latin-700-normal.woff2 +0 -0
- package/public/pwa-512x512.png +0 -0
- package/server/cli.js +3 -0
- package/server/index.js +963 -0
- package/{src → server/src}/config.js +51 -39
- package/{src → server/src}/core/cid.js +157 -146
- package/{src → server/src}/index.js +1950 -1201
- package/server/src/utils/api.js +68 -0
- package/server/src/utils/avatar.js +11 -0
- package/{src → server/src}/utils/errors.js +70 -66
- package/server/src/utils/mostWallet.js +42 -0
- package/server/src/utils/mp.js +117 -0
- package/{src → server/src}/utils/security.js +173 -169
- package/server/src/utils/userIdentity.js +93 -0
- package/build.mjs +0 -40
- package/cli.js +0 -2
- package/public/app.css +0 -1519
- package/public/app.jsx +0 -1543
- package/public/bundle.css +0 -1
- package/public/bundle.js +0 -107
- package/public/error-boundary.jsx +0 -50
- package/public/index.html +0 -16
- package/public/index.jsx +0 -20
- package/server.js +0 -698
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
:root{--bg-primary:#f5f5f7;--bg-secondary:#fff;--bg-tertiary:#e8e8ed;--text-primary:#1d1d1f;--text-secondary:#6e6e73;--text-muted:#86868b;--border-color:#0000000f;--accent:#5e6ad2;--accent-hover:#6e7ae0;--accent-soft:#5e6ad21f;--danger:#ff3b30;--success:#34c759;--warning:#ff9500;--info:#5ac8fa;--glass-bg:#ffffff73;--glass-bg-heavy:#ffffffe6;--glass-bg-subtle:#ffffff40;--glass-bg-solid:#fffc;--glass-border:#6161611a;--glass-border-strong:#616161b3;--glass-highlight:#fff9;--glass-shadow:0 8px 32px #00000014;--glass-shadow-lg:0 16px 48px #0000001f;--glass-shadow-inset:inset 0 1px 0 #fff9;--blur-sm:blur(8px);--blur-md:blur(16px);--blur-lg:blur(24px);--blur-xl:blur(32px);--blur-2xl:blur(40px);--font-sans:-apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "PingFang SC", "Microsoft YaHei", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--radius-sm:10px;--radius-md:14px;--radius-lg:20px;--radius-xl:24px;--radius-full:9999px;--shadow-sm:0 1px 3px #0000000a;--shadow:0 2px 8px #0000000f;--shadow-md:0 4px 16px #00000014;--shadow-lg:0 8px 32px #0000001a;--shadow-xl:0 16px 48px #0000001f;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--transition:.25s cubic-bezier(.4, 0, .2, 1);--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-spring:.35s cubic-bezier(.34, 1.56, .64, 1)}[data-theme=dark]{--bg-primary:#000;--bg-secondary:#0a0a0a;--bg-tertiary:#141416;--text-primary:#f5f5f7;--text-secondary:#a1a1a6;--text-muted:#6e6e73;--border-color:#ffffff14;--accent:#5e6ad2;--accent-hover:#6e7ae0;--accent-soft:#5e6ad226;--danger:#ff453a;--success:#30d158;--warning:#ff9f0a;--info:#64d2ff;--glass-bg:#1c1c1e73;--glass-bg-heavy:#1c1c1ee6;--glass-bg-subtle:#1c1c1e40;--glass-bg-solid:#1c1c1ecc;--glass-border:#ffffff1a;--glass-border-strong:#ffffff26;--glass-highlight:#ffffff14;--glass-shadow:0 8px 32px #0000004d;--glass-shadow-lg:0 16px 48px #0006;--glass-shadow-inset:inset 0 1px 0 #ffffff0f}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);background:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;overflow-x:hidden}body:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(80% 60% at 20% 10%,#5e6ad214 0%,#0000 60%),radial-gradient(60% 80% at 80% 90%,#5ac8fa0f 0%,#0000 60%),radial-gradient(50% 50%,#34c7590a 0%,#0000 60%);position:fixed;inset:0}[data-theme=dark] body:before{background:radial-gradient(80% 60% at 20% 10%,#5e6ad21f 0%,#0000 60%),radial-gradient(60% 80% at 80% 90%,#5ac8fa14 0%,#0000 60%),radial-gradient(50% 50%,#34c7590d 0%,#0000 60%)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--text-muted);border-radius:var(--radius-full);opacity:.5}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}a{color:var(--accent);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--accent-hover)}button{font-family:var(--font-sans);cursor:pointer;color:inherit;-webkit-tap-highlight-color:transparent;background:0 0;border:none}::selection{background:var(--accent);color:#fff}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes spin{to{transform:rotate(360deg)}}.backend-error-page{min-height:60vh;padding:var(--space-8);justify-content:center;align-items:center;display:flex}.backend-error-card{background:var(--glass-bg);-webkit-backdrop-filter:var(--blur-lg);backdrop-filter:var(--blur-lg);border:1px solid var(--glass-border);border-radius:var(--radius-xl);padding:var(--space-12);text-align:center;width:100%;max-width:480px;box-shadow:var(--glass-shadow-lg);animation:.3s ease-out scaleIn}.backend-error-icon{margin-bottom:var(--space-4);font-size:48px}.backend-error-card h2{margin-bottom:var(--space-3);font-size:24px;font-weight:600}.backend-error-url{margin-bottom:var(--space-2)}.backend-error-url code{background:var(--glass-bg-solid);border-radius:var(--radius-sm);font-family:var(--font-mono);word-break:break-all;padding:4px 10px;font-size:14px}.backend-error-desc{color:var(--text-secondary);margin-bottom:var(--space-6);font-size:14px}.backend-error-form{gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.backend-error-input{border:1px solid var(--glass-border);border-radius:var(--radius-md);background:var(--glass-bg-subtle);-webkit-backdrop-filter:var(--blur-sm);backdrop-filter:var(--blur-sm);color:var(--text-primary);font-size:14px;font-family:var(--font-sans);transition:border-color var(--transition-fast);outline:none;flex:1;padding:10px 14px}.backend-error-input:focus{border-color:var(--accent)}.backend-error-input::placeholder{color:var(--text-muted)}.backend-error-btn{border-radius:var(--radius-md);font-size:14px;font-weight:500;font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;padding:10px 20px}.backend-error-btn.primary{background:var(--accent);color:#fff;border:none}.backend-error-btn.primary:hover:not(:disabled){background:var(--accent-hover)}.backend-error-btn.primary:disabled{opacity:.5;cursor:not-allowed}.backend-error-btn.secondary{color:var(--accent);border:1px solid var(--glass-border);background:var(--glass-bg-subtle)}.backend-error-btn.secondary:hover{background:var(--accent-soft)}.not-found-page{min-height:100dvh;padding:var(--space-8);justify-content:center;align-items:center;display:flex}.not-found-card{background:var(--glass-bg);-webkit-backdrop-filter:var(--blur-lg);border:1px solid var(--glass-border);border-radius:var(--radius-xl);padding:var(--space-12) var(--space-10);text-align:center;width:100%;max-width:420px;box-shadow:var(--glass-shadow-lg);animation:.35s cubic-bezier(.34,1.56,.64,1) both scaleIn}.not-found-icon{border-radius:var(--radius-full);background:var(--accent-soft);width:88px;height:88px;color:var(--accent);margin-bottom:var(--space-6);justify-content:center;align-items:center;display:inline-flex}.not-found-title{margin-bottom:var(--space-3);color:var(--text-primary);font-size:22px;font-weight:600}.not-found-desc{color:var(--text-secondary);margin-bottom:var(--space-8);font-size:15px;line-height:1.6}.not-found-actions{justify-content:center;align-items:center;gap:var(--space-3);display:flex}.not-found-btn-primary{justify-content:center;align-items:center;gap:var(--space-2);color:#fff;background:var(--accent);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);border:none;padding:10px 20px;font-size:14px;font-weight:500;text-decoration:none;display:inline-flex}.not-found-btn-primary:hover{background:var(--accent-hover);color:#fff;transform:translateY(-1px);box-shadow:0 4px 16px #bd42454d}.not-found-btn-secondary{justify-content:center;align-items:center;gap:var(--space-2);color:var(--text-primary);background:var(--glass-bg-subtle);-webkit-backdrop-filter:var(--blur-sm);border:1px solid var(--glass-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);padding:10px 20px;font-size:14px;font-weight:500;display:inline-flex}.not-found-btn-secondary:hover{border-color:var(--accent);color:var(--accent);background:var(--glass-bg);transform:translateY(-1px)}@media (max-width:480px){.not-found-card{padding:var(--space-8) var(--space-5)}.not-found-actions{flex-direction:column;width:100%}.not-found-btn-primary,.not-found-btn-secondary{width:100%}}
|
|
2
|
+
.app-layout{height:100vh;color:var(--text-primary);background:0 0;display:flex;overflow:hidden}.backend-warning-bar{background:var(--warning);color:#fff;border-radius:var(--radius-sm);box-sizing:border-box;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:8px 16px;font-size:13px;font-weight:500;display:flex}.backend-warning-bar button{color:#fff;cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0 4px;font-size:18px;line-height:1}.sidebar{background:var(--glass-bg-heavy);width:200px;height:100vh;-webkit-backdrop-filter:var(--blur-xl);border-right:1px solid var(--glass-border);box-shadow:var(--glass-shadow-inset);transition:width var(--transition), transform var(--transition);flex-direction:column;flex-shrink:0;display:flex;overflow-y:auto}.sidebar.collapsed{border:none;width:0;overflow:hidden}.sidebar .sidebar-header{border-bottom:1px solid var(--glass-border);align-items:center;min-height:64px;padding:14px 16px;display:flex}.sidebar .sidebar-header h1{background:linear-gradient(135deg, var(--accent), var(--info));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:18px;font-weight:700}.sidebar .sidebar-nav{flex:1;padding:12px 8px}.sidebar .sidebar-nav-btn{border-radius:var(--radius-md);cursor:pointer;width:100%;color:var(--text-secondary);transition:all var(--transition-fast);background:0 0;border:none;align-items:center;gap:10px;margin-bottom:4px;padding:10px 12px;font-size:13px;font-weight:500;display:flex}.sidebar .sidebar-nav-btn.active{background:var(--accent-soft);color:var(--accent);box-shadow:var(--glass-shadow-inset);font-weight:600}.sidebar .sidebar-nav-btn:hover:not(.active){background:var(--glass-bg-subtle);color:var(--text-primary)}.sidebar .sidebar-footer{border-top:1px solid var(--glass-border);padding:12px 16px}.sidebar .sidebar-footer-label{color:var(--text-secondary);align-items:center;gap:6px;margin-bottom:6px;font-size:11px;display:flex}.sidebar .storage-bar{border-radius:var(--radius-full);background:var(--glass-bg-subtle);height:4px;overflow:hidden}.sidebar .storage-bar-fill{background:linear-gradient(90deg, var(--accent), var(--info));border-radius:var(--radius-full);height:100%;transition:width .3s}.sidebar .storage-info{color:var(--text-secondary);justify-content:space-between;margin-top:4px;font-size:10px;display:flex}.sidebar .chat-sidebar-footer{border-top:1px solid var(--glass-border);justify-content:space-between;align-items:center;gap:8px;padding:12px 16px;display:flex}.sidebar .user-info{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.sidebar .user-avatar{border-radius:var(--radius-sm);background:var(--glass-bg-subtle);width:24px;height:24px;color:var(--text-secondary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.sidebar .user-name{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.sidebar .login-btn{border-radius:var(--radius-sm);background:var(--accent);color:#fff;cursor:pointer;transition:all var(--transition-fast);border:none;flex-shrink:0;padding:4px 10px;font-size:11px;font-weight:500}.sidebar .login-btn:hover{opacity:.85;transform:scale(1.02)}.sidebar .logout-btn{border-radius:var(--radius-sm);border:1px solid var(--glass-border);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;flex-shrink:0;padding:4px 10px;font-size:11px;font-weight:500}.sidebar .logout-btn:hover{background:var(--glass-bg-subtle);color:var(--text-primary)}.sidebar .sidebar-tools{border-top:1px solid var(--glass-border);padding:12px 8px}.sidebar .sidebar-tools-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;align-items:center;gap:6px;margin-bottom:6px;padding-left:12px;font-size:11px;font-weight:500;display:flex}.sidebar-overlay{display:none}.sidebar-toggle-btn{display:flex}.mobile-menu-btn{display:none}.main-content{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.app-header{border-bottom:1px solid var(--glass-border);background:var(--glass-bg);min-height:64px;-webkit-backdrop-filter:var(--blur-lg);box-sizing:border-box;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:14px 24px;display:flex}.app-header .header-left{align-items:center;gap:12px;display:flex}.app-header .header-title{font-size:16px;font-weight:600}.app-header .header-badge{border-radius:var(--radius-full);background:var(--glass-bg-subtle);border:1px solid var(--glass-border);color:var(--text-secondary);align-items:center;gap:4px;padding:3px 8px;font-size:11px;display:flex}.app-header .header-badge-dot{background:var(--warning);border-radius:50%;width:6px;height:6px}.app-header .header-badge-dot.connected{background:var(--success)}.app-header .header-right{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.search-box{border-radius:var(--radius-md);background:var(--glass-bg-subtle);border:1px solid var(--glass-border);align-items:center;gap:8px;padding:6px 12px;display:flex}.search-box input{color:var(--text-primary);background:0 0;border:none;outline:none;width:100%;padding-left:2px;font-size:12px}.search-box button{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;padding:0;display:flex}.icon-btn{border-radius:var(--radius-md);border:1px solid var(--glass-border);background:var(--glass-bg-subtle);cursor:pointer;width:32px;height:32px;color:var(--text-secondary);transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex;position:relative}.icon-btn:hover{background:var(--glass-bg);color:var(--text-primary);border-color:var(--glass-border-strong)}.icon-btn.accent,.icon-btn.theme-toggle{color:var(--accent)}.icon-btn-badge{background:var(--danger);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:14px;height:14px;font-size:9px;font-weight:700;display:flex;position:absolute;top:-4px;right:-4px}.action-grid{grid-template-columns:1fr 1fr;gap:12px;padding:16px 24px;display:grid;position:relative}.action-card{border:1.5px dashed var(--glass-border-strong);border-radius:var(--radius-lg);text-align:center;cursor:pointer;background:var(--glass-bg-subtle);-webkit-backdrop-filter:var(--blur-sm);transition:all var(--transition);padding:20px;position:relative}.action-card:hover{background:var(--glass-bg);border-color:var(--accent);box-shadow:var(--glass-shadow)}.action-card p{color:var(--accent);font-size:12px;font-weight:500}.action-card.upload.drag-over{border-color:var(--accent);background:var(--accent-soft)}.action-card-download p{color:var(--info)}.action-card-input{opacity:0;cursor:pointer;z-index:1;width:100%;height:100%;position:absolute;inset:0}.breadcrumb{align-items:center;gap:4px;padding:0 24px;font-size:12px;display:flex}.breadcrumb button{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);background:0 0;border:none;padding:2px 4px}.breadcrumb button:hover{color:var(--text-primary);background:var(--glass-bg-subtle)}.breadcrumb button.current{color:var(--text-secondary);font-weight:500}.breadcrumb .breadcrumb-edit-btn{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;align-items:center;padding:2px;display:flex}.content-grid{flex:1;padding:12px 24px;overflow:auto}.file-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:16px;display:grid}.empty-state{text-align:center;color:var(--text-muted);padding:48px;font-size:13px}.empty-state.glass{justify-content:center;align-items:center;gap:var(--space-4);padding:var(--space-12) var(--space-6);background:var(--glass-bg-subtle);border:1px dashed var(--glass-border);border-radius:var(--radius-lg);-webkit-backdrop-filter:var(--blur-sm);backdrop-filter:var(--blur-sm);flex-direction:column;display:flex}.empty-state.glass p{max-width:320px;font-size:14px;line-height:1.6}.empty-state-icon{border-radius:var(--radius-full);background:var(--glass-bg);width:64px;height:64px;color:var(--text-muted);justify-content:center;align-items:center;display:flex}.card{border-radius:var(--radius-lg);cursor:pointer;background:var(--glass-bg-subtle);-webkit-backdrop-filter:var(--blur-md);border:1px solid var(--glass-border);transition:all var(--transition);box-shadow:var(--glass-shadow-inset);flex-direction:column;align-items:center;padding:16px;display:flex}.card:hover{border-color:var(--glass-border-strong);background:var(--glass-bg);box-shadow:var(--glass-shadow);transform:translateY(-2px)}.card.selected{background:var(--accent-soft);border-color:var(--accent);box-shadow:0 0 0 1px var(--accent), var(--glass-shadow)}.card-icon{border-radius:var(--radius-md);width:56px;height:56px;box-shadow:var(--shadow-sm);justify-content:center;align-items:center;margin-bottom:10px;display:flex}.card-icon.folder{background:linear-gradient(135deg,#818cf8,#6366f1)}.card-icon.file{background:linear-gradient(135deg,#a78bfa,#8b5cf6)}.card-icon.starred{background:linear-gradient(135deg,#fbbf24,#f59e0b)}.card-icon.trash{background:linear-gradient(135deg,#94a3b8,#64748b)}.card-name{text-align:center;text-overflow:ellipsis;white-space:nowrap;max-width:100%;color:var(--text-primary);font-size:12px;font-weight:500;overflow:hidden}.card-date{color:var(--text-muted);margin-top:2px;font-size:10px}.modal-overlay{z-index:200;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.modal-overlay-backdrop{z-index:0;-webkit-backdrop-filter:var(--blur-xl);pointer-events:none;background:#0000004d;position:absolute;inset:0}.modal-glass{z-index:1;border-radius:var(--radius-lg);background:var(--glass-bg-heavy);width:380px;max-width:calc(100vw - 32px);-webkit-backdrop-filter:var(--blur-2xl);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow-lg), var(--glass-shadow-inset);padding:24px;animation:.25s scaleIn;position:relative}.modal-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.modal-header h3{font-size:16px;font-weight:600}.modal-header button{cursor:pointer;color:var(--text-muted);background:0 0;border:none}.modal-close-btn{cursor:pointer;color:var(--text-muted);border-radius:var(--radius-sm);transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:flex}.modal-close-btn:hover{background:var(--glass-bg-subtle);color:var(--text-primary)}.welcome-modal{text-align:center}.welcome-modal h2{margin-bottom:12px;font-size:18px;font-weight:600}.welcome-modal p{color:var(--text-secondary);margin-bottom:20px;font-size:13px;line-height:1.6}.welcome-steps{justify-content:center;gap:6px;margin-bottom:20px;display:flex}.welcome-step-dot{background:var(--glass-bg-subtle);border:1px solid var(--glass-border);border-radius:50%;width:6px;height:6px}.welcome-step-dot.active{background:var(--accent);border-color:var(--accent)}.welcome-actions{justify-content:center;gap:10px;display:flex}.welcome-success-icon{background:#34c75926;border:1px solid #34c7594d;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;margin:0 auto 16px;display:flex}.btn{border-radius:var(--radius-md);border:1px solid var(--glass-border);cursor:pointer;transition:all var(--transition);background:var(--glass-bg-subtle);-webkit-backdrop-filter:var(--blur-sm);justify-content:center;align-items:center;gap:6px;padding:10px 20px;font-size:14px;font-weight:500;display:inline-flex}.btn.primary{background:var(--accent);color:#fff;border-color:#0000}.btn.primary:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 4px 16px #5e6ad24d}.btn.secondary{color:var(--text-secondary)}.btn.secondary:hover:not(:disabled){background:var(--glass-bg);color:var(--text-primary);border-color:var(--glass-border-strong)}.btn.danger{background:var(--danger);color:#fff;border-color:#0000}.btn.danger:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 16px #ff3b304d}.btn.danger-hover{color:var(--text-muted)}.btn.danger-hover:hover:not(:disabled){color:var(--danger);background:#ff3b3014;border-color:#ff3b3033}.btn.small{border-radius:var(--radius-sm);justify-content:center;align-items:center;gap:4px;padding:6px 12px;font-size:13px;display:inline-flex}.btn.small:hover:not(:disabled){background:var(--glass-bg)}.btn.full{justify-content:center;align-items:center;gap:6px;width:100%;display:flex}.btn:disabled{opacity:.5;cursor:not-allowed}.settings-modal .settings-title{color:var(--text-primary);font-size:18px;font-weight:600}.settings-modal .settings-label{color:var(--text-primary);margin-bottom:8px;font-size:13px;font-weight:500;display:block}.settings-modal .settings-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.settings-modal .settings-input{border-radius:var(--radius-md);border:1px solid var(--glass-border);background:var(--glass-bg-subtle);color:var(--text-primary);transition:all var(--transition-fast);outline:none;flex:1;padding:10px 12px;font-size:13px}.settings-modal .settings-input:focus{border-color:var(--accent);background:var(--glass-bg);box-shadow:0 0 0 3px var(--accent-soft)}.settings-modal .settings-hint{color:var(--text-muted);margin-top:8px;font-size:11px}.settings-modal .settings-divider{border-top:1px solid var(--glass-border);padding-top:16px}.settings-modal .settings-about{text-align:center;margin-bottom:16px}.settings-modal .settings-about h3{color:var(--text-primary);margin-bottom:4px;font-size:16px;font-weight:600}.settings-modal .settings-about p{color:var(--text-muted);font-size:12px}.network-addresses{flex-direction:column;gap:8px;margin-top:8px;display:flex}.address-item{background:var(--glass-bg-subtle);border-radius:var(--radius-md);border:1px solid var(--glass-border);align-items:center;gap:8px;padding:8px 12px;font-size:13px;display:flex}.address-type{border-radius:var(--radius-sm);white-space:nowrap;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.address-type-local{color:var(--text-secondary);background:#64748b26}.address-type-lan{background:var(--accent-soft);color:var(--accent)}.address-type-tailscale{color:var(--success);background:#34c7591f}.address-type-zerotier{color:var(--info);background:#5ac8fa1f}.address-url{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12px;overflow:hidden}.page-header{align-items:center;gap:var(--space-3);margin-bottom:var(--space-6);display:flex}.page-title{font-size:20px;font-weight:600}.qr-wrap{padding:var(--space-4);border-radius:var(--radius-lg);width:fit-content;margin:0 auto var(--space-3);background:#fff;justify-content:center;display:flex}.page-footer{align-items:center;gap:var(--space-3);margin-top:var(--space-4);flex-direction:column;display:flex}.input-panel{background:var(--glass-bg);-webkit-backdrop-filter:var(--blur-md);backdrop-filter:var(--blur-md);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:var(--space-5);margin-bottom:var(--space-6);box-shadow:var(--glass-shadow)}.copy-btn{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);background:0 0;border:none;align-items:center;gap:4px;padding:4px;display:flex;position:relative}.copy-btn:hover{color:var(--accent);background:var(--accent-soft)}.copy-hint{background:var(--glass-bg-heavy);border:1px solid var(--glass-border);border-radius:var(--radius-sm);white-space:nowrap;pointer-events:none;padding:2px 8px;font-size:11px;animation:.15s fadeIn;position:absolute;top:-22px;right:0}.back-btn{border-radius:var(--radius-md);border:1px solid var(--glass-border);background:var(--glass-bg-subtle);cursor:pointer;width:32px;height:32px;color:var(--text-secondary);transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex}.back-btn:hover{background:var(--glass-bg);color:var(--text-primary)}.input,.textarea{border:1px solid var(--glass-border);border-radius:var(--radius-md);background:var(--glass-bg-subtle);width:100%;-webkit-backdrop-filter:var(--blur-sm);backdrop-filter:var(--blur-sm);color:var(--text-primary);font-size:14px;font-family:var(--font-sans);transition:border-color var(--transition-fast);outline:none;padding:12px 14px}.input:focus,.textarea:focus{border-color:var(--accent)}.input::placeholder,.textarea::placeholder{color:var(--text-muted)}.input-wrap{position:relative}.input-wrap .input{padding-right:40px}.input-eye{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:4px;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.input-eye:hover{color:var(--text-primary)}.loading-spinner{border:2px solid var(--glass-border);border-top-color:var(--accent);border-radius:var(--radius-full);width:32px;height:32px;margin:auto;animation:.8s linear infinite spin}.mono{font-family:var(--font-mono);word-break:break-all;color:var(--text-primary);flex:1;font-size:12px}.mono-row{align-items:center;gap:var(--space-2);background:var(--glass-bg-subtle);border-radius:var(--radius-md);padding:10px 12px;display:flex}.mono-row.danger{background:#ff3b3014}.mono-row.danger .mono{color:var(--danger)}.link{color:var(--accent);align-items:center;gap:4px;font-size:13px;display:inline-flex}.inline-link{color:var(--accent);margin-top:var(--space-1);align-items:center;gap:4px;font-size:13px;display:inline-flex}.tool-link{align-items:center;gap:var(--space-2);background:var(--glass-bg);-webkit-backdrop-filter:var(--blur-md);backdrop-filter:var(--blur-md);border:1px solid var(--glass-border);border-radius:var(--radius-md);color:var(--accent);transition:all var(--transition-fast);padding:10px 20px;font-size:14px;font-weight:500;display:inline-flex}.tool-link:hover{background:var(--accent-soft)}.hint-text{color:var(--text-muted);font-size:12px}.textarea.mono{font-family:var(--font-mono);resize:none;font-size:12px}.danger{color:var(--danger)}.guide-toggle{width:100%;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);background:0 0;border:none;justify-content:space-between;align-items:center;margin-top:8px;padding:10px 12px;font-size:13px;display:flex}.guide-toggle:hover{color:var(--text-primary);background:var(--glass-bg-subtle)}.guide-content{background:var(--glass-bg-subtle);border-radius:var(--radius-md);border:1px solid var(--glass-border);flex-direction:column;gap:16px;margin-top:12px;padding:16px;display:flex}.guide-item{background:var(--glass-bg);border-radius:var(--radius-sm);border:1px solid var(--glass-border);flex-direction:column;gap:4px;padding:12px;font-size:13px;display:flex}.guide-item strong{color:var(--text-primary);font-size:14px}.guide-item span{color:var(--text-secondary);line-height:1.5}.guide-item a{color:var(--accent);font-size:12px;text-decoration:none}.guide-item a:hover{text-decoration:underline}.guide-item code{background:var(--glass-bg-subtle);border-radius:var(--radius-sm);color:var(--text-secondary);word-break:break-all;border:1px solid var(--glass-border);margin-top:4px;padding:6px 10px;font-size:12px}.input-modal h3{color:var(--text-primary);margin-bottom:16px;font-size:16px;font-weight:600}.modal-input{border-radius:var(--radius-md);border:1px solid var(--glass-border);background:var(--glass-bg-subtle);width:100%;color:var(--text-primary);transition:all var(--transition-fast);outline:none;margin-bottom:16px;padding:10px 12px;font-size:13px}.modal-input:focus{border-color:var(--accent);background:var(--glass-bg);box-shadow:0 0 0 3px var(--accent-soft)}.modal-actions{gap:8px;display:flex}.modal-actions .btn{border-radius:var(--radius-md);flex:1;padding:10px;font-size:13px}.confirm-modal h3{color:var(--text-primary);margin-bottom:12px;font-size:16px;font-weight:600}.confirm-modal p{color:var(--text-secondary);margin-bottom:20px;font-size:13px}.move-modal .move-breadcrumb{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.move-modal .move-breadcrumb-btn{border-radius:var(--radius-sm);background:var(--glass-bg-subtle);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);border:none;padding:4px 8px;font-size:12px}.move-modal .move-breadcrumb-btn:hover{background:var(--glass-bg)}.move-modal .move-breadcrumb-btn.active{background:var(--accent-soft);color:var(--accent)}.move-modal .move-folder-list{max-height:200px;margin-bottom:16px;overflow:auto}.move-modal .move-folder-item{border-radius:var(--radius-sm);cursor:pointer;width:100%;color:var(--text-primary);text-align:left;transition:all var(--transition-fast);background:0 0;border:none;align-items:center;gap:8px;padding:8px 10px;font-size:13px;display:flex}.move-modal .move-folder-item:hover{background:var(--glass-bg-subtle)}.move-modal .move-folder-item.selected{background:var(--accent-soft);color:var(--accent)}.move-modal .move-new-folder{gap:8px;margin-bottom:16px;display:flex}.move-modal .move-new-folder input{border-radius:var(--radius-sm);border:1px solid var(--glass-border);background:var(--glass-bg-subtle);color:var(--text-primary);transition:all var(--transition-fast);outline:none;flex:1;padding:8px 10px;font-size:12px}.move-modal .move-new-folder input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.share-modal .share-link-box{gap:10px;margin-bottom:16px;display:flex}.share-modal .share-link-text{border-radius:var(--radius-md);background:var(--glass-bg-subtle);border:1px solid var(--glass-border);font-size:13px;font-family:var(--font-mono);color:var(--text-primary);word-break:break-all;flex:1;padding:12px 14px}.share-modal .share-copy-btn{border-radius:var(--radius-md);background:var(--accent);color:#fff;cursor:pointer;width:44px;transition:all var(--transition-fast);border:none}.share-modal .share-copy-btn:hover{background:var(--accent-hover);transform:scale(1.05)}.share-modal .share-copy-btn.copied{background:var(--success)}.download-modal .download-input{border-radius:var(--radius-md);border:1px solid var(--glass-border);width:100%;font-size:13px;font-family:var(--font-mono);background:var(--glass-bg-subtle);color:var(--text-primary);transition:all var(--transition-fast);outline:none;margin-bottom:16px;padding:12px 14px}.download-modal .download-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.download-modal .download-btn{border-radius:var(--radius-md);background:var(--info);color:#fff;cursor:pointer;width:100%;transition:all var(--transition-fast);border:none;padding:12px;font-size:13px;font-weight:600}.download-modal .download-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 16px #5ac8fa4d}.download-modal .download-btn:disabled{background:var(--glass-bg-subtle);color:var(--text-muted);cursor:not-allowed}.preview-overlay{z-index:200;-webkit-backdrop-filter:var(--blur-lg);background:#000000d9;justify-content:center;align-items:center;padding:24px;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.preview-overlay .preview-close{border-radius:var(--radius-md);border:1px solid var(--glass-border);background:var(--glass-bg-subtle);width:36px;height:36px;-webkit-backdrop-filter:var(--blur-sm);cursor:pointer;color:#fff;transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex;position:absolute;top:20px;right:20px}.preview-overlay .preview-close:hover{background:var(--glass-bg);transform:scale(1.05)}.preview-overlay img,.preview-overlay video{border-radius:var(--radius-lg);max-width:100%;max-height:80vh;box-shadow:var(--glass-shadow-lg)}.preview-overlay .preview-audio{background:var(--glass-bg-heavy);-webkit-backdrop-filter:var(--blur-2xl);border:1px solid var(--glass-border);border-radius:var(--radius-lg);min-width:320px;box-shadow:var(--glass-shadow-lg), var(--glass-shadow-inset);flex-direction:column;align-items:center;gap:20px;padding:40px 48px;display:flex}.preview-overlay .preview-audio-icon{background:var(--accent-soft);border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;display:flex}.preview-overlay .preview-audio-filename{color:var(--text-secondary);text-align:center;text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin:0;font-size:14px;overflow:hidden}.preview-overlay .preview-audio-player{width:100%;max-width:400px;height:40px}.batch-bar{border-radius:var(--radius-lg);background:var(--glass-bg-heavy);-webkit-backdrop-filter:var(--blur-2xl);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow-lg), var(--glass-shadow-inset);z-index:100;align-items:center;gap:8px;padding:10px 16px;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.batch-bar .batch-info{color:var(--text-secondary);font-size:12px}.batch-bar .batch-dismiss{cursor:pointer;color:var(--text-muted);background:0 0;border:none;padding:4px}.batch-bar .batch-divider{background:var(--glass-border);width:1px;height:20px}.transfer-modal{max-height:70vh;overflow:auto}.transfer-modal .transfer-item{border-bottom:1px solid var(--glass-border);padding:10px 0}.transfer-modal .transfer-item-header{align-items:center;gap:8px;margin-bottom:4px;display:flex}.transfer-modal .transfer-item-name{text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12px;font-weight:500;overflow:hidden}.transfer-modal .transfer-item-cancel{cursor:pointer;color:var(--danger);background:0 0;border:none;padding:2px}.transfer-modal .transfer-progress-row{align-items:center;gap:8px;display:flex}.transfer-modal .transfer-progress-bar{border-radius:var(--radius-full);background:var(--glass-bg-subtle);flex:1;height:4px}.transfer-modal .transfer-progress-fill{border-radius:var(--radius-full);background:var(--accent);height:100%;transition:width .2s}.transfer-modal .transfer-progress-fill.download{background:var(--info)}.transfer-modal .transfer-progress-fill.error{background:var(--danger)}.transfer-modal .transfer-progress-fill.cancelled{background:var(--warning)}.transfer-modal .transfer-progress-text{color:var(--text-muted);text-align:right;min-width:32px;font-size:10px}@keyframes toastSlideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.toast{z-index:9999;border-radius:var(--radius-lg);box-shadow:var(--glass-shadow-lg);-webkit-backdrop-filter:var(--blur-lg);border:1px solid var(--glass-border);padding:12px 20px;font-size:13px;font-weight:500;animation:.25s toastSlideIn;position:fixed;right:24px}.toast.success{color:#fff;background:#34c75999}.toast.error{color:#fff;background:#ff3b3099}.toast.warning{color:#fff;background:#ff950099}.toast.info{color:#fff;background:#5ac8fa99}.welcome-path-section{text-align:left;margin-bottom:20px}.welcome-path-section .path-label{color:var(--text-muted);margin-bottom:4px;font-size:12px}.welcome-path-section .path-value{color:var(--text-primary);font-size:12px;font-family:var(--font-mono);background:var(--glass-bg-subtle);border-radius:var(--radius-sm);word-break:break-all;border:1px solid var(--glass-border);margin-bottom:12px;padding:8px 10px}.welcome-path-section .path-input{border-radius:var(--radius-sm);border:1px solid var(--glass-border);box-sizing:border-box;background:var(--glass-bg-subtle);width:100%;color:var(--text-primary);transition:all var(--transition-fast);outline:none;padding:10px 12px;font-size:13px}.welcome-path-section .path-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.welcome-path-section .path-hint{color:var(--text-muted);margin-top:4px;font-size:11px}.login-modal-overlay{z-index:200;-webkit-backdrop-filter:var(--blur-xl);background:#0000004d;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.login-modal{border-radius:var(--radius-lg);background:var(--glass-bg-heavy);width:320px;max-width:calc(100vw - 32px);-webkit-backdrop-filter:var(--blur-2xl);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow-lg), var(--glass-shadow-inset);padding:24px;animation:.25s scaleIn}.login-modal-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.login-modal-header h3{color:var(--text-primary);font-size:16px;font-weight:600}.login-modal-close{cursor:pointer;color:var(--text-muted);border-radius:var(--radius-sm);transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:flex}.login-modal-close:hover{color:var(--text-primary);background:var(--glass-bg-subtle)}.login-avatar-preview{border-radius:var(--radius-md);width:64px;height:64px;margin:0 auto 8px;display:block}.user-avatar-img{border-radius:var(--radius-sm);flex-shrink:0;width:24px;height:24px}.msg-avatar{border-radius:var(--radius-sm);flex-shrink:0;width:28px;height:28px;margin-right:10px}.login-modal-body{flex-direction:column;gap:12px;display:flex}.login-tip{color:var(--text-secondary);text-align:center;margin-bottom:4px;font-size:13px}.login-input{border-radius:var(--radius-md);border:1px solid var(--glass-border);background:var(--glass-bg-subtle);width:100%;color:var(--text-primary);box-sizing:border-box;transition:all var(--transition-fast);outline:none;padding:10px 12px;font-size:13px}.login-input::placeholder{color:var(--text-muted)}.login-input:focus{border-color:var(--accent);background:var(--glass-bg);box-shadow:0 0 0 3px var(--accent-soft)}.login-password-wrapper{align-items:center;display:flex;position:relative}.login-password-wrapper .login-input{padding-right:40px}.login-password-toggle{cursor:pointer;color:var(--text-muted);border-radius:var(--radius-sm);transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:flex;position:absolute;right:10px}.login-password-toggle:hover{color:var(--text-primary);background:var(--glass-bg-subtle)}.login-submit{border-radius:var(--radius-md);background:var(--accent);color:#fff;cursor:pointer;width:100%;transition:all var(--transition-fast);border:none;padding:10px;font-size:13px;font-weight:600}.login-submit:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 4px 16px #5e6ad24d}.login-submit:disabled{opacity:.5;cursor:not-allowed}.preview-text-container{background:var(--glass-bg-heavy);width:90vw;max-width:900px;max-height:80vh;-webkit-backdrop-filter:var(--blur-2xl);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--glass-shadow-lg), var(--glass-shadow-inset);flex-direction:column;padding:20px;display:flex;overflow:auto}.preview-text-header{border-bottom:1px solid var(--glass-border);color:var(--text-secondary);justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;font-size:13px;display:flex}.preview-text{color:var(--text-primary);font-family:var(--font-mono);white-space:pre-wrap;word-break:break-all;max-height:100%;margin:0;font-size:13px;line-height:1.6;overflow:auto}.preview-text-loading{color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:40px 20px;display:flex}.preview-text-spinner{opacity:.6;animation:.8s linear infinite spin}.preview-text-loading-hint{opacity:.6;text-align:center;max-width:300px;font-size:12px}.preview-media-wrapper{justify-content:center;align-items:center;min-width:100px;min-height:100px;display:flex;position:relative}.preview-media-wrapper .preview-loading{z-index:1;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.preview-loading-spinner{border:3px solid #fff3;border-top-color:#fff;border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}.preview-media-wrapper img,.preview-media-wrapper video{border-radius:var(--radius-lg);max-width:100%;max-height:80vh}.preview-unsupported{background:var(--glass-bg-heavy);border-radius:var(--radius-lg);text-align:center;color:var(--text-primary);border:1px solid var(--glass-border);padding:40px}.preview-unsupported p:first-of-type{word-break:break-all;font-size:14px;font-weight:500}.btn-nowrap{white-space:nowrap}.btn-shutdown{margin-top:20px}.settings-section{margin-bottom:20px}.settings-divider-top{margin-top:20px}.settings-subtitle{text-align:center;color:var(--text-secondary);font-size:12px}.icon-inline{vertical-align:middle;margin-right:6px}.guide-toggle-icon{transition:transform .2s}.guide-toggle-icon.rotated{transform:rotate(180deg)}.move-modal-desc{color:var(--text-secondary);margin-bottom:12px;font-size:12px}.move-modal-hint{color:var(--text-muted);margin-bottom:12px;font-size:11px}.breadcrumb-separator{color:var(--text-secondary)}.preview-file-icon{opacity:.5;margin-bottom:12px}.empty-transfer{text-align:center;color:var(--text-muted);padding:24px;font-size:13px}.btn-empty-trash{color:var(--danger);background:#ff3b301a}.btn-star{background:var(--warning);color:#fff}.btn-move{background:var(--accent);color:#fff}.move-modal-empty{color:var(--text-secondary);text-align:center;padding:16px;font-size:12px}.preview-unsupported-hint{opacity:.7;margin-top:8px;font-size:12px}.action-grid-icon{margin-bottom:8px}@media (max-width:768px){.sidebar{z-index:300;transition:transform var(--transition);width:240px;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar-overlay{z-index:299;opacity:0;visibility:hidden;transition:all var(--transition);background:#0006;display:block;position:fixed;inset:0}.sidebar-overlay.visible{opacity:1;visibility:visible}.modal-overlay{z-index:301;align-items:flex-end;padding:0}.modal-overlay-backdrop{-webkit-backdrop-filter:var(--blur-lg)}.modal-glass{border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:100%;max-width:100%;max-height:85vh;overflow:auto}.sidebar-toggle-btn{display:flex}.app-header{gap:8px;min-height:56px;padding:12px 16px}.app-header .header-right{gap:4px}.action-grid{grid-template-columns:1fr;gap:8px;padding:12px 16px}.action-card{padding:14px}.breadcrumb{padding:0 16px}.content-grid{padding:12px 16px}.file-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px}.card{padding:12px}.card-icon{border-radius:var(--radius-sm);width:44px;height:44px;margin-bottom:8px}.card-name{font-size:11px}.welcome-modal,.settings-modal,.input-modal,.confirm-modal,.move-modal,.share-modal,.download-modal,.transfer-modal{border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:100%;max-width:100%}.toast{left:12px;right:12px}.batch-bar{flex-wrap:wrap;justify-content:center;gap:6px;bottom:12px;left:8px;right:8px;transform:none}.preview-overlay{padding:12px}}@media (max-width:480px){.file-grid{grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:8px}.card{padding:10px}.card-icon{width:40px;height:40px;margin-bottom:6px}.card-name{font-size:10px}.app-header{min-height:52px;padding:12px}.app-header .header-title{font-size:14px}.app-header .header-badge{padding:2px 6px;font-size:10px}.action-grid,.content-grid{padding:10px 12px}.breadcrumb{padding:0 12px;font-size:11px}.batch-bar{gap:4px;padding:8px 12px}.batch-bar .batch-info{font-size:11px}}.app-home{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:calc(100dvh - 144px);padding:0 24px;animation:.4s fadeInUp;display:flex}.app-home-card{border-radius:var(--radius-xl);background:var(--glass-bg-heavy);-webkit-backdrop-filter:var(--blur-2xl);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow-lg), var(--glass-shadow-inset);flex-direction:column;align-items:center;width:100%;max-width:420px;padding:40px;display:flex}.app-home-card h1{letter-spacing:-.03px;background:linear-gradient(135deg, var(--accent), var(--info));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-top:16px;margin-bottom:8px;font-size:40px;font-weight:700}.app-home-badge{border-radius:var(--radius-full);background:var(--glass-bg-subtle);color:var(--text-secondary);border:1px solid var(--glass-border);align-items:center;gap:6px;margin-bottom:24px;padding:4px 12px;font-size:12px;font-weight:500;display:inline-flex}.app-home-badge .badge-dot{background:var(--success);border-radius:50%;flex-shrink:0;width:6px;height:6px;display:inline-block}.app-home-card p{color:var(--text-secondary);max-width:40ch;margin-bottom:32px;font-size:16px;line-height:1.6}.app-home-btn{border-radius:var(--radius-md);transition:all var(--transition);cursor:pointer;justify-content:center;align-items:center;gap:8px;font-weight:600;text-decoration:none;display:inline-flex}.app-home-btn.primary{color:#fff;background:var(--accent);padding:14px 32px;font-size:16px}.app-home-btn.primary:hover{background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 4px 16px #5e6ad24d}.app-home-btn.secondary{color:var(--text-secondary);background:var(--glass-bg-subtle);border:1px solid var(--glass-border);margin-top:12px;padding:10px 24px;font-size:14px}.app-home-btn.secondary:hover{border-color:var(--accent);color:var(--accent);background:var(--glass-bg);transform:translateY(-1px)}.drawer-backdrop{-webkit-backdrop-filter:var(--blur-md);z-index:1000;background:#0006;animation:.2s fadeIn;position:fixed;inset:0}.settings-drawer{background:var(--glass-bg-heavy);width:420px;max-width:100vw;-webkit-backdrop-filter:var(--blur-2xl);border-left:1px solid var(--glass-border);z-index:1001;flex-direction:column;animation:.25s slideInRight;display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-8px 0 32px #00000026}.drawer-header{border-bottom:1px solid var(--glass-border);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.drawer-title{color:var(--text-primary);margin:0;font-size:18px;font-weight:600}.drawer-close-btn{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);background:0 0;border:none;align-items:center;padding:6px;display:flex}.drawer-close-btn:hover{color:var(--text-primary);background:var(--glass-bg-subtle)}.drawer-content{flex:1;padding:20px 24px;overflow-y:auto}.drawer-section{margin-bottom:4px}.drawer-label{color:var(--text-primary);margin-bottom:8px;font-size:13px;font-weight:500;display:block}.drawer-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.drawer-input{border-radius:var(--radius-md);border:1px solid var(--glass-border);background:var(--glass-bg-subtle);color:var(--text-primary);transition:all var(--transition-fast);outline:none;flex:1;padding:10px 12px;font-size:13px}.drawer-input:focus{border-color:var(--accent);background:var(--glass-bg);box-shadow:0 0 0 3px var(--accent-soft)}.drawer-hint{color:var(--text-muted);margin-top:8px;font-size:11px}.drawer-status{color:var(--text-secondary);margin-top:8px;font-size:11px}.drawer-status.status-success{color:var(--success)}.drawer-status.status-error{color:var(--error)}.drawer-divider{border-top:1px solid var(--glass-border);margin:16px 0}.drawer-about h3{color:var(--text-primary);margin:0 0 4px;font-size:16px;font-weight:600}.drawer-about p{color:var(--text-secondary);margin:0;font-size:12px}.drawer-subtitle{color:var(--text-muted);margin-top:4px;font-size:11px}.download-platforms-mini{flex-direction:column;gap:8px;display:flex}.download-platform-mini{background:var(--glass-bg-subtle);border:1px solid var(--glass-border);border-radius:var(--radius-md);color:var(--text-primary);transition:all var(--transition-fast);align-items:center;gap:10px;padding:10px 14px;font-size:14px;text-decoration:none;display:flex}.download-platform-mini:hover{background:var(--glass-bg);border-color:var(--accent)}.download-platform-mini-ext{color:var(--text-muted);font-size:12px;font-family:var(--font-mono);margin-left:auto}.drawer-note{color:var(--text-secondary);font-size:13px;line-height:1.6}.drawer-note p{margin:0 0 8px}.drawer-note ul{margin:0;padding-left:18px}.drawer-note li{margin-bottom:4px}.drawer-footer{border-top:1px solid var(--glass-border);padding:16px 24px}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (max-width:768px){.settings-drawer{border-left:none;width:100vw}}.backend-guide{padding:0 16px;animation:.3s ease-out fadeInUp}.backend-guide-card{text-align:center;max-width:480px;margin:0 auto}.backend-guide-header{flex-direction:column;align-items:center;gap:12px;margin:16px 0;display:flex}.backend-guide-header h2{font-size:22px;font-weight:600}.backend-guide-desc{color:var(--text-secondary);margin-bottom:20px;font-size:14px;line-height:1.6}.backend-guide-input-wrap{gap:8px;margin-bottom:12px;display:flex}.backend-guide-input{border:1px solid var(--glass-border);border-radius:var(--radius-md);background:var(--glass-bg-subtle);color:var(--text-primary);transition:border-color var(--transition-fast);outline:none;flex:1;padding:10px 14px;font-size:14px}.backend-guide-input:focus{border-color:var(--accent)}.backend-guide-input::placeholder{color:var(--text-muted)}.backend-guide-connect-btn{border-radius:var(--radius-md);background:var(--accent);color:#fff;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;border:none;align-items:center;gap:6px;padding:10px 18px;font-size:14px;font-weight:500;display:inline-flex}.backend-guide-connect-btn:hover:not(:disabled){background:var(--accent-hover)}.backend-guide-connect-btn:disabled{opacity:.5;cursor:not-allowed}.backend-guide-status{margin-bottom:16px;font-size:13px}.backend-guide-status.success{color:var(--success)}.backend-guide-status.error{color:var(--danger)}.backend-guide-divider{background:var(--glass-border);height:1px;margin:24px 0}.backend-guide-steps{text-align:left}.backend-guide-steps h3{text-align:center;margin-bottom:16px;font-size:15px;font-weight:600}.backend-guide-step{align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.backend-guide-step .step-num{background:var(--accent);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;font-weight:700;display:flex}.backend-guide-step strong{color:var(--text-primary);font-size:14px;font-weight:600}.backend-guide-step p{color:var(--text-secondary);margin-top:2px;font-size:13px}.backend-guide-code{background:var(--glass-bg-subtle);border:1px solid var(--glass-border);border-radius:var(--radius-sm);font-size:12px;font-family:var(--font-mono);color:var(--text-primary);margin-top:6px;padding:8px 12px;display:block}.backend-guide-back-btn{color:var(--text-secondary);border:1px solid var(--glass-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);background:0 0;align-items:center;gap:6px;margin-top:20px;padding:8px 16px;font-size:13px;display:inline-flex}.backend-guide-back-btn:hover{color:var(--text-primary);background:var(--glass-bg)}.spin{animation:1s linear infinite spin}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.download-banner{background:var(--accent-soft);border:1px solid var(--accent);border-radius:var(--radius-md);color:var(--text-secondary);justify-content:space-between;align-items:center;gap:12px;margin:8px 16px;padding:12px 16px;font-size:13px;display:flex}.download-banner-btn{background:var(--accent);color:#fff;border-radius:var(--radius-sm);white-space:nowrap;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:500;text-decoration:none;display:inline-flex}.download-banner-btn:hover{color:#fff;background:var(--accent-hover)}@media (max-width:768px){.download-banner{text-align:center;flex-direction:column;gap:8px}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,35965,96699,93583,e=>{"use strict";var t=e.i(56420);let s=(0,t.default)("sun",[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]]);e.s(["Sun",0,s],35965);let r=(0,t.default)("moon",[["path",{d:"M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401",key:"kfwtm"}]]);e.s(["Moon",0,r],96699);let a=(0,t.default)("menu",[["path",{d:"M4 5h16",key:"1tepv9"}],["path",{d:"M4 12h16",key:"1lakjw"}],["path",{d:"M4 19h16",key:"1djgab"}]]);e.s(["Menu",0,a],93583)},59665,e=>{"use strict";var t=e.i(43476),s=e.i(71645),r=e.i(93583),a=e.i(5142);let o=(0,s.createContext)(null);e.s(["default",0,function({sidebar:e,headerTitle:i,headerRight:n,children:l}){let[c,d]=(0,a.useDisclosure)(!1),[h,u]=(0,s.useState)(!1),p=function(e,{getInitialValueInEffect:t}={getInitialValueInEffect:!0}){let[r,a]=(0,s.useState)(t?void 0:!!("u">typeof window&&"matchMedia"in window)&&window.matchMedia(e).matches);return(0,s.useEffect)(()=>{try{if("matchMedia"in window){let t=window.matchMedia(e);a(t.matches);let s=e=>a(e.matches);return t.addEventListener("change",s),()=>{t.removeEventListener("change",s)}}}catch(e){return}},[e]),r||!1}("(max-width: 768px)");return(0,t.jsx)(o.Provider,{value:{closeSidebar:d.close},children:(0,t.jsxs)("div",{className:"app-layout",children:[(0,t.jsx)("div",{className:`sidebar-overlay ${c?"visible":""}`,onClick:()=>d.close()}),(0,t.jsx)("div",{className:`sidebar ${c?"open":""} ${h?"collapsed":""}`,children:e({closeSidebar:d.close})}),(0,t.jsxs)("div",{className:"main-content",children:[(0,t.jsxs)("header",{className:"app-header",children:[(0,t.jsxs)("div",{className:"header-left",children:[(0,t.jsx)("button",{onClick:()=>{p?d.toggle():u(!h)},className:"icon-btn sidebar-toggle-btn","aria-label":p?"打开菜单":h?"展开侧边栏":"收起侧边栏",children:(0,t.jsx)(r.Menu,{size:16})}),i]}),(0,t.jsx)("div",{className:"header-right",children:n})]}),l]})]})})}],59665)},89664,e=>{"use strict";let t=(0,e.i(56420).default)("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);e.s(["Check",0,t],89664)},68877,e=>{"use strict";let t=(0,e.i(56420).default)("arrow-right",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]]);e.s(["ArrowRight",0,t],68877)},26913,e=>{"use strict";class t extends Error{name="KyError";get isKyError(){return!0}}class s extends t{name="HTTPError";response;request;options;data;constructor(e,t,s){const r=e.status||0===e.status?e.status:"",a=e.statusText??"",o=`${r} ${a}`.trim(),i=o?`status code ${o}`:"an unknown error";super(`Request failed with ${i}: ${t.method} ${t.url}`),this.response=e,this.request=t,this.options=s}}class r extends t{name="NetworkError";request;constructor(e,t){super(`Request failed due to a network error: ${e.method} ${e.url}`,t),this.request=e}}class a extends Error{name="NonError";value;constructor(e){let t="Non-error value was thrown";try{"string"==typeof e?t=e:e&&"object"==typeof e&&"message"in e&&"string"==typeof e.message&&(t=e.message)}catch{}super(t),this.value=e}}class o extends t{name="ForceRetryError";customDelay;code;customRequest;constructor(e){const t=e?.cause?e.cause instanceof Error?e.cause:new a(e.cause):void 0;super(e?.code?`Forced retry: ${e.code}`:"Forced retry",t?{cause:t}:void 0),this.customDelay=e?.delay,this.code=e?.code,this.customRequest=e?.request}}class i extends Error{name="SchemaValidationError";issues;constructor(e){super("Response schema validation failed"),this.issues=e}}class n extends t{name="TimeoutError";request;constructor(e){super(`Request timed out: ${e.method} ${e.url}`),this.request=e}}let l=(()=>{let e=!1,t=!1,s="function"==typeof globalThis.Request;if("function"==typeof globalThis.ReadableStream&&s)try{t=new globalThis.Request("https://empty.invalid",{body:new globalThis.ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type")}catch(e){if(e instanceof Error&&"unsupported BodyInit type"===e.message)return!1;throw e}return e&&!t})(),c="function"==typeof globalThis.AbortController,d="function"==typeof globalThis.AbortSignal&&"function"==typeof globalThis.AbortSignal.any,h="function"==typeof globalThis.ReadableStream,u="function"==typeof globalThis.FormData,p=["get","post","put","patch","head","delete"],m={json:"application/json",text:"text/*",formData:"multipart/form-data",arrayBuffer:"*/*",blob:"*/*",bytes:"*/*"},f=Symbol("stop");class y{options;constructor(e){this.options=e}}let g=e=>new y(e),b={json:!0,parseJson:!0,stringifyJson:!0,searchParams:!0,baseUrl:!0,prefix:!0,retry:!0,timeout:!0,totalTimeout:!0,hooks:!0,throwHttpErrors:!0,onDownloadProgress:!0,onUploadProgress:!0,fetch:!0,context:!0},w={method:!0,headers:!0,body:!0,mode:!0,credentials:!0,cache:!0,redirect:!0,referrer:!0,referrerPolicy:!0,integrity:!0,keepalive:!0,signal:!0,window:!0,duplex:!0},x=new TextEncoder,j=(e,t,s)=>{let r,a=0;return e.pipeThrough(new TransformStream({transform(e,o){if(o.enqueue(e),r){a+=r.byteLength;let e=0===t?0:a/t;e>=1&&(e=1-Number.EPSILON),s?.({percent:e,totalBytes:Math.max(t,a),transferredBytes:a},r)}r=e},flush(){r&&(a+=r.byteLength,s?.({percent:1,totalBytes:Math.max(t,a),transferredBytes:a},r))}}))},v=e=>null!==e&&"object"==typeof e,k=Symbol("replaceOption"),N=e=>v(e)&&!0===e[k]?{isReplace:!0,value:e.value}:{isReplace:!1,value:e},R=(...e)=>{for(let t of e)if((!v(t)||Array.isArray(t))&&void 0!==t)throw TypeError("The `options` argument must be an object");return A({},...e)},T=(e={},t={})=>{let s=new globalThis.Headers(e),r=t instanceof globalThis.Headers;for(let[e,a]of new globalThis.Headers(t).entries())r&&"undefined"===a||void 0===a?s.delete(e):s.set(e,a);return s},C=e=>{if(!v(e)||Array.isArray(e))return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||null===t},S=e=>{if(e instanceof URLSearchParams){let t=new URLSearchParams(e),s=e[P];return s&&(t[P]=new Set(s)),t}return e instanceof globalThis.Headers?new globalThis.Headers(e):Array.isArray(e)?[...e]:C(e)?{...e}:e},q=(e,t)=>C(e)&&C(t)?Object.fromEntries(Object.entries({...e,...t}).filter(e=>void 0!==e[1])):T(e,t);function E(e,t,s){return Object.hasOwn(t,s)&&void 0===t[s]?[]:A(e[s]??[],t[s]??[])}let M=(e={},t={})=>({init:E(e,t,"init"),beforeRequest:E(e,t,"beforeRequest"),beforeRetry:E(e,t,"beforeRetry"),beforeError:E(e,t,"beforeError"),afterResponse:E(e,t,"afterResponse")}),P=Symbol("deletedParameters"),z=(e,t)=>{let s=new URLSearchParams,r=new Set;for(let a of[e,t])if(void 0!==a)if(a instanceof URLSearchParams){for(let[e,t]of a.entries())s.append(e,t),r.delete(e);let e=a[P];if(e)for(let t of e)s.delete(t),r.add(t)}else if(Array.isArray(a))for(let e of a){if(!Array.isArray(e)||2!==e.length)throw TypeError("Array search parameters must be provided in [[key, value], ...] format");s.append(String(e[0]),String(e[1])),r.delete(String(e[0]))}else if(v(a))for(let[e,t]of Object.entries(a))void 0===t?(s.delete(e),r.add(e)):(s.append(e,String(t)),r.delete(e));else for(let[e,t]of new URLSearchParams(a).entries())s.append(e,t),r.delete(e);return r.size>0&&(s[P]=r),s},A=(...e)=>{let t,s={},r={},a={},o=[];for(let i of e)if(Array.isArray(i))Array.isArray(s)||(s=[]),s=[...s,...i];else if(v(i)){for(let[e,r]of Object.entries(i)){if("signal"===e&&r instanceof globalThis.AbortSignal){o.push(r);continue}let a=N(r),{isReplace:i}=a;if(r=a.value,"context"===e){if(null!=r&&(!v(r)||Array.isArray(r)))throw TypeError("The `context` option must be an object");s={...s,context:null==r?{}:i?{...r}:{...s.context,...r}};continue}if("searchParams"===e){t=null==r?void 0:i||void 0===t?r:z(t,r);continue}v(r)&&!i&&e in s&&(r=A(s[e],r)),s={...s,[e]:r}}if(v(i.hooks)){let{value:e,isReplace:t}=N(i.hooks);a=t?M({},e):M(a,e),s.hooks=a}if(v(i.headers)){let{value:e,isReplace:t}=N(i.headers);r=t?S(e):q(r,e),s.headers=r}}return void 0!==t&&(s.searchParams=t),o.length>0&&(1===o.length?s.signal=o[0]:d?s.signal=AbortSignal.any(o):s.signal=o.at(-1)),s},L={limit:2,methods:["get","put","head","delete","options","trace"],statusCodes:[408,413,429,500,502,503,504],afterStatusCodes:[413,429,503],maxRetryAfter:1/0,backoffLimit:1/0,delay:e=>.3*2**(e-1)*1e3,jitter:void 0,retryOnTimeout:!1};async function $(e,t,s,r){return new Promise((a,o)=>{let i=setTimeout(()=>{s&&s.abort(),o(new n(e))},r.timeout);r.fetch(e,t).then(a).catch(o).then(()=>{clearTimeout(i)})})}async function D(e,{signal:t}){return new Promise((s,r)=>{function a(){clearTimeout(o),r(t.reason)}t&&(t.throwIfAborted(),t.addEventListener("abort",a,{once:!0}));let o=setTimeout(()=>{t?.removeEventListener("abort",a),s()},e)})}let O=Object.prototype.toString,F=new Set(["network error","NetworkError when attempting to fetch resource.","The Internet connection appears to be offline.","Network request failed","fetch failed","terminated"," A network error occurred.","Network connection lost"]),U=(e,t)=>e instanceof t||e?.name===t.name,B=Symbol("timedOutResponseData"),H="The `schema` argument must follow the Standard Schema specification",I=Object.prototype.toString,J=e=>e instanceof globalThis.Request||"[object Request]"===I.call(e),V=e=>e instanceof globalThis.Response||"[object Response]"===I.call(e),W=async(e,t)=>{if("object"!=typeof t&&"function"!=typeof t||null===t)throw TypeError(H);let s=t["~standard"];if("object"!=typeof s||null===s||"function"!=typeof s.validate)throw TypeError(H);let r=await s.validate(e);if(r.issues)throw new i(r.issues);return r.value};class X{static create(e,t){var r,a;let i,n=t.hooks?.init??[],l=n.length>0?(i={...t,json:S(t.json),context:S(t.context),headers:S(t.headers),searchParams:Array.isArray(r=t.searchParams)?r.map(e=>[...e]):S(r)},void 0!==t.retry&&(i.retry="object"!=typeof(a=t.retry)?a:{...a,...a.methods&&{methods:[...a.methods]},...a.statusCodes&&{statusCodes:[...a.statusCodes]},...a.afterStatusCodes&&{afterStatusCodes:[...a.afterStatusCodes]}}),i):t;for(let e of n)e(l);let c=new X(e,l),d=async()=>{if("number"==typeof c.#e.timeout&&c.#e.timeout>0x7fffffff)throw RangeError("The `timeout` option cannot be greater than 2147483647");if("number"==typeof c.#e.totalTimeout&&c.#e.totalTimeout>0x7fffffff)throw RangeError("The `totalTimeout` option cannot be greater than 2147483647");await Promise.resolve();let e=await c.#t(),t=e??await c.#s(async()=>c.#r()),r=void 0!==e||c.#a();for(;;){if(void 0===t)return t;if(V(t))try{t=await c.#o(t)}catch(s){if(!(s instanceof o))throw s;let e=await c.#i(s,async()=>c.#r());if(void 0===e)return e;t=e,r=c.#a();continue}let e=t;if(!e.ok&&"opaque"!==e.type&&("function"==typeof c.#e.throwHttpErrors?c.#e.throwHttpErrors(e.status):c.#e.throwHttpErrors)){let a=new s(e,c.#n(e),c.#l());if(a.data=await c.#c(e),r)throw a;let o=await c.#i(a,async()=>c.#r());if(void 0===o)return o;t=o,r=c.#a();continue}break}if(!V(t))return t;if(c.#d(t),c.#e.onDownloadProgress){if("function"!=typeof c.#e.onDownloadProgress)throw TypeError("The `onDownloadProgress` option must be a function");if(!h)throw Error("Streams are not supported in your environment. `ReadableStream` is missing.");let e=t.clone();c.#h(t);var a=c.#e.onDownloadProgress;if(!e.body)return e;let s={status:e.status,statusText:e.statusText,headers:e.headers};if(204===e.status)return new Response(null,s);let r=Math.max(0,Number(e.headers.get("content-length"))||0);return new Response(j(e.body,r,a),s)}return t},u=(async()=>{try{return await d()}catch(t){if(!(t instanceof Error)||c.#u.has(t))throw t;let e=t;for(let t of c.#e.hooks.beforeError){let s=await t({request:c.request,options:c.#l(),error:e,retryCount:c.#p});s instanceof Error&&(e=s)}throw e}finally{let e=c.#m;c.#f(e?.body??void 0),c.request!==e&&c.#f(c.request.body??void 0)}})();for(let[e,t]of Object.entries(m))("bytes"!==e||"function"==typeof globalThis.Response?.prototype?.bytes)&&(u[e]=async s=>{c.request.headers.set("accept",c.request.headers.get("accept")||t);let r=await u;if("json"!==e)return r[e]();let a=await r.text();if(""===a)return void 0!==s?W(void 0,s):JSON.parse(a);let o=l.parseJson?await l.parseJson(a,{request:c.#n(r),response:r}):JSON.parse(a);return void 0===s?o:W(o,s)});return u}static #y(e){return!e||"object"!=typeof e||Array.isArray(e)||e instanceof URLSearchParams?e:Object.fromEntries(Object.entries(e).filter(([,e])=>void 0!==e))}request;#g;#p=0;#b;#e;#m;#w;#u=new WeakSet;#x;#j;#v=!1;#k=new WeakMap;constructor(e,t={}){if(this.#b=e,Object.hasOwn(t,"prefixUrl"))throw Error("The `prefixUrl` option has been renamed `prefix` in v2 and enhanced to allow slashes in input. See also the new `baseUrl` option for improved flexibility with standard URL resolution: https://github.com/sindresorhus/ky#baseurl");if(this.#e={...t,headers:T(this.#b.headers,t.headers),hooks:M({},t.hooks),method:(e=>p.includes(e)?e.toUpperCase():e)(t.method??this.#b.method??"GET"),prefix:String(t.prefix||""),retry:((e={})=>{if("number"==typeof e)return{...L,limit:e};if(e.methods&&!Array.isArray(e.methods))throw Error("retry.methods must be an array");if(e.statusCodes&&!Array.isArray(e.statusCodes))throw Error("retry.statusCodes must be an array");let t=Object.fromEntries(Object.entries({...e,methods:e.methods?.map(e=>e.toLowerCase())}).filter(([,e])=>void 0!==e));return{...L,...t}})(t.retry),throwHttpErrors:t.throwHttpErrors??!0,timeout:t.timeout??1e4,totalTimeout:t.totalTimeout??!1,fetch:t.fetch??globalThis.fetch.bind(globalThis),context:t.context??{}},"string"!=typeof this.#b&&!(this.#b instanceof URL||this.#b instanceof globalThis.Request))throw TypeError("`input` must be a string, URL, or Request");if("string"==typeof this.#b){if(this.#e.prefix){const e=this.#e.prefix.replace(/\/+$/,""),t=this.#b.replace(/^\/+/,"");this.#b=`${e}/${t}`}if(this.#e.baseUrl){let e;try{e=new URL(this.#b)}catch{}e||(this.#b=new URL(this.#b,new Request(this.#e.baseUrl).url))}}c&&d&&(this.#w=this.#e.signal??this.#b.signal,this.#g=new globalThis.AbortController,this.#e.signal=this.#N()),l&&(this.#e.duplex="half"),void 0!==this.#e.json&&(this.#e.body=this.#e.stringifyJson?.(this.#e.json)??JSON.stringify(this.#e.json),this.#e.headers.set("content-type",this.#e.headers.get("content-type")??"application/json"));const s=t.headers&&new globalThis.Headers(t.headers).has("content-type");if(this.#b instanceof globalThis.Request&&(u&&this.#e.body instanceof globalThis.FormData||this.#e.body instanceof URLSearchParams)&&!s&&this.#e.headers.delete("content-type"),this.request=new globalThis.Request(this.#b,this.#e),(e=>void 0!==e&&(Array.isArray(e)?e.length>0:e instanceof URLSearchParams?e.size>0||!!e[P]?.size:"object"==typeof e?Object.keys(e).length>0:"string"==typeof e?e.trim().length>0:!!e))(this.#e.searchParams)){const e=new URL(this.request.url),t=this.#e.searchParams?.[P];if(t)for(const s of t)e.searchParams.delete(s);if("string"==typeof this.#e.searchParams){const t=this.#e.searchParams.replace(/^\?/,"");""!==t&&(e.search=e.search?`${e.search}&${t}`:`?${t}`)}else for(const[t,s]of new URLSearchParams(X.#y(this.#e.searchParams)).entries())e.searchParams.append(t,s);if(this.#e.searchParams&&"object"==typeof this.#e.searchParams&&!Array.isArray(this.#e.searchParams)&&!(this.#e.searchParams instanceof URLSearchParams))for(const[t,s]of Object.entries(this.#e.searchParams))void 0===s&&e.searchParams.delete(t);this.request=new globalThis.Request(e,this.#e)}if(this.#e.onUploadProgress&&"function"!=typeof this.#e.onUploadProgress)throw TypeError("The `onUploadProgress` option must be a function");this.#j="number"==typeof this.#e.totalTimeout?this.#R():void 0}#T(){let e=this.#e.retry.delay(this.#p+1),t=e;return!0===this.#e.retry.jitter?t=Math.random()*e:"function"==typeof this.#e.retry.jitter&&(!Number.isFinite(t=this.#e.retry.jitter(e))||t<0)&&(t=e),Math.min(this.#e.retry.backoffLimit,t)}async #C(e){if(this.#p>=this.#e.retry.limit)throw e;let t=e instanceof Error?e:new a(e);if(t instanceof o)return t.customDelay??this.#T();if(!this.#e.retry.methods.includes(this.request.method.toLowerCase()))throw e;if(void 0!==this.#e.retry.shouldRetry){let s=await this.#e.retry.shouldRetry({error:t,retryCount:this.#p+1});if(!1===s)throw e;if(!0===s)return this.#T()}if(U(e,n)){if(!this.#e.retry.retryOnTimeout)throw e;return this.#T()}if(U(e,s)){if(!this.#e.retry.statusCodes.includes(e.response.status))throw e;let t=e.response.headers.get("Retry-After")??e.response.headers.get("RateLimit-Reset")??e.response.headers.get("X-RateLimit-Retry-After")??e.response.headers.get("X-RateLimit-Reset")??e.response.headers.get("X-Rate-Limit-Reset");if(t&&this.#e.retry.afterStatusCodes.includes(e.response.status)){let e=1e3*Number(t);return(Number.isNaN(e)?e=Date.parse(t)-Date.now():e>=Date.parse("2024-01-01")&&(e-=Date.now()),Number.isFinite(e))?(e=Math.max(0,e),Math.min(this.#e.retry.maxRetryAfter,e)):Math.min(this.#e.retry.maxRetryAfter,this.#T())}if(413===e.response.status)throw e;return this.#T()}if(!U(e,r))throw e;return this.#T()}#d(e){let t=this.#n(e);return this.#e.parseJson&&(e.json=async()=>{let s=await e.text();return""===s?JSON.parse(s):this.#e.parseJson(s,{request:t,response:e})}),e}async #c(e){let t=await this.#S(e,this.#q());if(t===B)return void this.#E();if(!t)return;if(!this.#M(e.headers.get("content-type")??""))return t;let s=await this.#P(t,e,this.#q(),this.#n(e));return s===B?void this.#E():s}#q(){let e=!1===this.#e.timeout?1e4:this.#e.timeout,t=this.#z();if(void 0===t)return e;if(t<=0)throw new n(this.request);return Math.min(e,t)}#M(e){let t=(e.split(";",1)[0]??"").trim().toLowerCase();return/\/(?:.*[.+-])?json$/.test(t)}async #S(e,t){let s,{body:r}=e;if(!r)try{return await e.text()}catch{return}try{s=r.getReader()}catch{return}let a=(e=>{let t=/;\s*charset\s*=\s*(?:"([^"]+)"|([^;,\s]+))/i.exec(e),s=t?.[1]??t?.[2];if(s)try{return new TextDecoder(s)}catch{}return new TextDecoder})(e.headers.get("content-type")??""),o=[],i=0,n=(async()=>{try{for(;;){let{done:e,value:t}=await s.read();if(e)break;if((i+=t.byteLength)>0xa00000)return void s.cancel().catch(()=>void 0);o.push(a.decode(t,{stream:!0}))}}catch{return}return o.push(a.decode()),o.join("")})(),l=new Promise(e=>{let s=setTimeout(()=>{e(B)},t);n.finally(()=>{clearTimeout(s)})}),c=await Promise.race([n,l]);return c===B&&s.cancel().catch(()=>void 0),c}async #P(e,t,s,r){let a;try{return await Promise.race([Promise.resolve().then(()=>this.#e.parseJson?this.#e.parseJson(e,{request:r,response:t}):JSON.parse(e)),new Promise(e=>{a=setTimeout(()=>{e(B)},s)})])}catch{return}finally{clearTimeout(a)}}#f(e){e&&e.cancel().catch(()=>void 0)}#h(e){this.#f(e.body??void 0)}#N(){return this.#w?AbortSignal.any([this.#w,this.#g.signal]):this.#g.signal}#E(){let e=this.#z();if(void 0!==e&&e<=0)throw new n(this.request)}async #t(){for(let e of this.#e.hooks.beforeRequest){let t=await e({request:this.request,options:this.#l(),retryCount:0});if(J(t))this.#A(t);else if(V(t))return t}}async #o(e){let t=this.#n(e);for(let s of this.#e.hooks.afterResponse){let r,a=this.#L(e.clone(),t);this.#d(a);try{r=await s({request:this.request,options:this.#l(),response:a,retryCount:this.#p})}catch(t){throw a!==e&&this.#h(a),this.#h(e),t}if(r instanceof y)throw a!==e&&this.#h(a),this.#h(e),new o(r.options);let i=V(r)?this.#L(r,t):e;a!==e&&a!==i&&a.body!==i.body&&this.#h(a),e!==i&&e.body!==i.body&&this.#h(e),e=i}return e}async #s(e){try{return await e()}catch(t){return this.#i(t,e)}}async #i(e,t){this.#v=!1;let s=Math.min(await this.#C(e),0x7fffffff),r={signal:this.#w},a=this.#z();if(void 0!==a){if(a<=0)throw new n(this.request);if(s>=a)throw await D(a,r),new n(this.request)}if(await D(s,r),this.#E(),e instanceof o&&e.customRequest){let t=new globalThis.Request(e.customRequest,this.#e.signal?{signal:this.#e.signal}:void 0);this.#A(t)}for(let t of this.#e.hooks.beforeRetry){let s;try{s=await t({request:this.request,options:this.#l(),error:e,retryCount:this.#p+1})}catch(t){throw t instanceof Error&&t!==e&&this.#u.add(t),t}if(J(s)){this.#A(s);break}if(V(s))return this.#v=!0,this.#p++,s;if(s===f)return}return this.#E(),this.#p++,this.#s(t)}#a(){let e=this.#v;return this.#v=!1,e}async #r(){this.#g?.signal.aborted&&(this.#g=new globalThis.AbortController,this.#e.signal=this.#N(),this.request=new globalThis.Request(this.request,{signal:this.#e.signal}));let e=(e=>{let t={};for(let s in e)Object.hasOwn(e,s)&&(s in w||s in b||(t[s]=e[s]));return t})(this.#e),t=this.#e.retry.limit>0?this.request.clone():void 0,s=this.#$(this.request,this.#e.body??void 0);this.#m=s,t&&(this.request=t);try{let t=this.#z();if(void 0!==t&&t<=0)throw new n(this.request);let r=!1===this.#e.timeout?t:void 0===t?this.#e.timeout:Math.min(this.#e.timeout,t),a=void 0===r?await this.#e.fetch(s,e):await $(s,e,this.#g,{timeout:r,fetch:this.#e.fetch});return this.#L(a,s)}catch(e){if(function(e){if(!(e&&"[object Error]"===O.call(e)&&"TypeError"===e.name&&"string"==typeof e.message))return!1;let{message:t,stack:s}=e;return"Load failed"===t?void 0===s||"__sentry_captured__"in e:!!(t.startsWith("error sending request for url")||"Failed to fetch"===t||t.startsWith("Failed to fetch (")&&t.endsWith(")"))||F.has(t)}(e))throw new r(this.request,{cause:e});throw e}}#z(){if(void 0===this.#j)return;let e=this.#R()-this.#j;return Math.max(0,this.#e.totalTimeout-e)}#R(){return globalThis.performance?.now()??Date.now()}#l(){if(!this.#x){let{hooks:e,json:t,parseJson:s,stringifyJson:r,searchParams:a,timeout:o,totalTimeout:i,throwHttpErrors:n,fetch:l,...c}=this.#e;this.#x=Object.freeze(c)}return this.#x}#A(e){this.#x=void 0,this.request=e}#n(e){return this.#k.get(e)??this.request}#L(e,t){return this.#k.set(e,t),e}#$(e,t){return this.#e.onUploadProgress&&e.body&&l?((e,t,s)=>{if(!e.body)return e;let r=(e=>{if(!e)return 0;if(e instanceof FormData){let t=0;for(let[s,r]of e)t+=40,t+=x.encode(`Content-Disposition: form-data; name="${s}"`).byteLength,t+="string"==typeof r?x.encode(r).byteLength:r.size;return t}return e instanceof Blob?e.size:e instanceof ArrayBuffer||ArrayBuffer.isView(e)?e.byteLength:"string"==typeof e?x.encode(e).byteLength:e instanceof URLSearchParams?x.encode(e.toString()).byteLength:0})(s??e.body);return new Request(e,{duplex:"half",body:j(e.body,r,t)})})(e,this.#e.onUploadProgress,t??this.#e.body??void 0):e}}let _=e=>{let t=(t,s)=>X.create(t,R(e,s));for(let s of p)t[s]=(t,r)=>X.create(t,R(e,r,{method:s}));return t.create=e=>_(R(e)),t.extend=t=>("function"==typeof t&&(t=t(e??{})),_(R(e,t))),t.stop=f,t.retry=g,t},K=_(),G="mostbox_backend_url";function Z(){let e=localStorage.getItem(G)||"";return K.create({prefix:e})}let Q=Z();async function Y(){try{return(await fetch("/api/node-id",{method:"GET",signal:AbortSignal.timeout(2e3)})).ok}catch{return!1}}async function ee(){try{return(await fetch("http://localhost:1976/api/node-id",{method:"GET",signal:AbortSignal.timeout(2e3)})).ok}catch{return!1}}e.s(["api",()=>Q,"detectLocalhostBackend",0,ee,"detectSameOriginBackend",0,Y,"setBackendUrl",0,function(e){let t=(e||"").trim().replace(/\/+$/,"");t?localStorage.setItem(G,t):localStorage.removeItem(G),Q=Z()}],26913)},8734,e=>{"use strict";let t=(0,e.i(56420).default)("copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);e.s(["Copy",0,t],8734)},51921,e=>{"use strict";let t=(0,e.i(56420).default)("music",[["path",{d:"M9 18V5l12-2v13",key:"1jmyc2"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}],["circle",{cx:"18",cy:"16",r:"3",key:"1hluhg"}]]);e.s(["Music",0,t],51921)},66595,e=>{"use strict";let t=(0,e.i(56420).default)("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]]);e.s(["Search",0,t],66595)},27627,e=>{"use strict";var t=e.i(43476),s=e.i(71645),r=e.i(56420);let a=(0,r.default)("upload",[["path",{d:"M12 3v12",key:"1x0j5s"}],["path",{d:"m17 8-5-5-5 5",key:"7q97r8"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}]]);var o=e.i(35965),i=e.i(96699);let n=(0,r.default)("image",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}],["circle",{cx:"9",cy:"9",r:"2",key:"af1f0g"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21",key:"1xmnt7"}]]),l=(0,r.default)("trash-2",[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]]),c=(0,r.default)("folder",[["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]]),d=(0,r.default)("film",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M7 3v18",key:"bbkbws"}],["path",{d:"M3 7.5h4",key:"zfgn84"}],["path",{d:"M3 12h18",key:"1i2n21"}],["path",{d:"M3 16.5h4",key:"1230mu"}],["path",{d:"M17 3v18",key:"in4fa5"}],["path",{d:"M17 7.5h4",key:"myr1c1"}],["path",{d:"M17 16.5h4",key:"go4c1d"}]]);var h=e.i(51921);let u=(0,r.default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]),p=(0,r.default)("file-text",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]]);var m=e.i(63676),f=e.i(89664),y=e.i(8734),g=e.i(62368);let b=(0,r.default)("arrow-up-down",[["path",{d:"m21 16-4 4-4-4",key:"f6ql7i"}],["path",{d:"M17 20V4",key:"1ejh1v"}],["path",{d:"m3 8 4-4 4 4",key:"11wl7u"}],["path",{d:"M7 4v16",key:"1glfcx"}]]),w=(0,r.default)("star",[["path",{d:"M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z",key:"r04s7s"}]]),x=(0,r.default)("files",[["path",{d:"M15 2h-4a2 2 0 0 0-2 2v11a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V8",key:"14sh0y"}],["path",{d:"M16.706 2.706A2.4 2.4 0 0 0 15 2v5a1 1 0 0 0 1 1h5a2.4 2.4 0 0 0-.706-1.706z",key:"1970lx"}],["path",{d:"M5 7a2 2 0 0 0-2 2v11a2 2 0 0 0 2 2h8a2 2 0 0 0 1.732-1",key:"l4dndm"}]]),j=(0,r.default)("hard-drive",[["path",{d:"M10 16h.01",key:"1bzywj"}],["path",{d:"M2.212 11.577a2 2 0 0 0-.212.896V18a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-5.527a2 2 0 0 0-.212-.896L18.55 5.11A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z",key:"18tbho"}],["path",{d:"M21.946 12.013H2.054",key:"zqlbp7"}],["path",{d:"M6 16h.01",key:"1pmjb7"}]]);var v=e.i(66595);let k=(0,r.default)("info",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]]),N=(0,r.default)("pen",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}]]),R=(0,r.default)("loader",[["path",{d:"M12 2v4",key:"3427ic"}],["path",{d:"m16.2 7.8 2.9-2.9",key:"r700ao"}],["path",{d:"M18 12h4",key:"wj9ykh"}],["path",{d:"m16.2 16.2 2.9 2.9",key:"1bxg5t"}],["path",{d:"M12 18v4",key:"jadmvz"}],["path",{d:"m4.9 19.1 2.9-2.9",key:"bwix9q"}],["path",{d:"M2 12h4",key:"j09sii"}],["path",{d:"m4.9 4.9 2.9 2.9",key:"giyufr"}]]);var T=e.i(68877),C=e.i(59665);e.i(4121);var S=e.i(57667),q=e.i(88361),E=e.i(47910),M=e.i(26913),P=e.i(9817),z=e.i(5142),A=e.i(22016);let L={listPublishedFiles:()=>M.api.get("/api/files").json(),listTrashFiles:()=>M.api.get("/api/trash").json(),deletePublishedFile:e=>M.api.delete(`/api/files/${e}`).json(),restoreTrashFile:e=>M.api.post(`/api/trash/${e}/restore`).json(),permanentDeleteTrashFile:e=>M.api.delete(`/api/trash/${e}`).json(),emptyTrash:()=>M.api.delete("/api/trash").json(),toggleStar:e=>M.api.post(`/api/files/${e}/star`).json(),getStorageStats:()=>M.api.get("/api/storage").json(),getConfig:()=>M.api.get("/api/config").json(),getDataPath:()=>M.api.get("/api/config/data-path").json(),getNetworkAddresses:()=>M.api.get("/api/network").json(),saveConfig:e=>M.api.post("/api/config",{json:e}).json(),async publishFile(e,t){let s=new FormData;s.append("file",e,t||e.name);let r=await M.api.post("/api/publish",{body:s});if(!r.ok)throw Error((await r.json().catch(()=>({error:r.statusText}))).error||"Request failed");return r.json()},downloadFile:e=>M.api.post("/api/download",{json:{link:e}}).json(),cancelDownload:e=>M.api.post("/api/download/cancel",{json:{taskId:e}}).json(),getFileDownloadUrl:e=>`/api/files/${e}/download`,moveFile:(e,t)=>M.api.post("/api/move",{json:{cid:e,newFileName:t}}).json(),renameFolder:(e,t)=>M.api.post("/api/folder/rename",{json:{oldPath:e,newPath:t}}).json()},$=[{cid:"mock1",fileName:"示例文档.pdf",size:2048576,createdAt:"2024-01-15",starred:!1},{cid:"mock2",fileName:"项目截图.png",size:1536e3,createdAt:"2024-01-20",starred:!0},{cid:"mock3",fileName:"会议录音.mp3",size:512e4,createdAt:"2024-02-01",starred:!1},{cid:"mock4",fileName:"演示视频.mp4",size:0x3200000,createdAt:"2024-02-10",starred:!1},{cid:"mock5",fileName:"代码备份.zip",size:0xa00000,createdAt:"2024-02-15",starred:!1},{cid:"mock6",fileName:"设计稿/首页设计.fig",size:8388608,createdAt:"2024-02-20",starred:!0},{cid:"mock7",fileName:"设计稿/图标集.svg",size:512e3,createdAt:"2024-02-22",starred:!1}],D={total:0x1900000000,used:0x1e0000000,free:0x1720000000,fileCount:42,trashCount:3};function O(e){return!e||e<=0?"0 B":e<1024?`${e} B`:e<1048576?`${(e/1024).toFixed(1)} KB`:e<0x40000000?`${(e/1048576).toFixed(1)} MB`:`${(e/0x40000000).toFixed(2)} GB`}function F(e){let t=e.lastIndexOf("/");return -1===t?{folder:"",name:e}:{folder:e.substring(0,t),name:e.substring(t+1)}}function U(e){let t=e.split(".").pop().toLowerCase();return["jpg","jpeg","png","gif","webp","svg","bmp","ico","tiff","heic","heif"].includes(t)?"image":["mp4","webm","mov","avi","mkv","flv","wmv","m4v","mpeg","3gp"].includes(t)?"video":["mp3","wav","ogg","flac","aac","m4a","wma","opus"].includes(t)?"audio":["txt","md","js","ts","jsx","tsx","css","scss","less","json","xml","html","htm","yaml","yml","toml","ini","cfg","conf","log","sh","bash","py","rb","go","rs","java","c","cpp","h","hpp","cs","php","sql","graphql","env","gitignore","dockerfile","readme"].includes(t)?"text":"file"}function B(e){return e?[{path:"",name:"全部内容"},...e.split("/").filter(Boolean).map((e,t,s)=>({path:s.slice(0,t+1).join("/"),name:e}))]:[]}let H=(e,t)=>async()=>{try{e(await t())}catch(e){console.info(e)}};function I({file:e,isSelected:s,isDarkMode:r,onSelect:a,onPreview:o}){let i=U(e.fileName);return(0,t.jsxs)("div",{"data-id":e.cid,onClick:()=>a(e.cid),onDoubleClick:()=>o(e),className:`card ${s?"selected":""}`,children:[(0,t.jsxs)("div",{className:`card-icon ${e.starred?"starred":"file"}`,children:["image"===i&&(0,t.jsx)(n,{size:24,color:"#fff"}),"video"===i&&(0,t.jsx)(d,{size:24,color:"#fff"}),"audio"===i&&(0,t.jsx)(h.Music,{size:24,color:"#fff"}),"file"===i&&(0,t.jsx)(p,{size:24,color:"#fff"})]}),(0,t.jsx)("p",{className:"card-name",children:F(e.fileName).name})]})}function J({folder:e,isDarkMode:s,onClick:r}){return(0,t.jsxs)("div",{onClick:r,className:"card",children:[(0,t.jsx)("div",{className:"card-icon folder",children:(0,t.jsx)(c,{size:28,color:"#fff"})}),(0,t.jsx)("p",{className:"card-name",children:e.name})]})}function V({items:e,allFolders:r,currentPath:a,onMove:o,onClose:i}){let[n,l]=(0,s.useState)(""),[d,h]=(0,s.useState)(a),u=B(n);return(0,t.jsx)(S.ModalOverlay,{onClose:i,children:(0,t.jsxs)("div",{className:"move-modal",onClick:e=>e.stopPropagation(),children:[(0,t.jsxs)("div",{className:"modal-header",children:[(0,t.jsx)("h3",{children:"移动到"}),(0,t.jsx)("button",{onClick:i,className:"modal-close-btn",children:(0,t.jsx)(m.X,{size:18})})]}),(0,t.jsxs)("p",{className:"move-modal-desc",children:["已选 ",e.length," 个项目"]}),(0,t.jsx)("div",{className:"move-new-folder",children:(0,t.jsx)("input",{type:"text",value:d,onChange:e=>h(e.target.value),placeholder:"输入路径创建嵌套文件夹"})}),(0,t.jsx)("p",{className:"move-modal-hint",children:"如 图片/壁纸"}),(0,t.jsx)("div",{className:"move-breadcrumb",children:u.map((e,r)=>(0,t.jsxs)(s.default.Fragment,{children:[r>0&&(0,t.jsx)("span",{className:"breadcrumb-separator",children:"/"}),(0,t.jsx)("button",{onClick:()=>{l(e.path),h(e.path)},className:`move-breadcrumb-btn ${n===e.path&&!d?"active":""}`,children:e.name},e.path)]},e.path))}),(0,t.jsxs)("div",{className:"move-folder-list",children:[0===r.filter(e=>{if(""===n)return!e.path.includes("/");let t=n+"/";return!!e.path.startsWith(t)&&!e.path.substring(t.length).includes("/")}).length&&(0,t.jsx)("p",{className:"move-modal-empty",children:"该目录下没有子文件夹"}),r.filter(e=>{if(""===n)return!e.path.includes("/");let t=n+"/";return!!e.path.startsWith(t)&&!e.path.substring(t.length).includes("/")}).map(e=>(0,t.jsxs)("button",{onClick:()=>l(e.path),className:`move-folder-item ${n===e.path&&!d?"selected":""}`,children:[(0,t.jsx)(c,{size:16}),(0,t.jsx)("span",{children:e.name})]},e.path))]}),(0,t.jsxs)("div",{className:"modal-actions",children:[(0,t.jsx)("button",{onClick:i,className:"btn secondary",children:"取消"}),(0,t.jsx)("button",{onClick:()=>{o(n||d.trim())},className:"btn primary",children:"移动"})]})]})})}e.s(["default",0,function(){let e,r,n,{isDarkMode:c,setIsDarkMode:d,addToast:M,openSettings:W}=(0,P.useApp)(),[X,_]=(0,s.useState)([]),[K,G]=(0,s.useState)([]),[Z,Q]=(0,s.useState)(null),[Y,ee]=(0,s.useState)("all"),[et,es]=(0,s.useState)(!1),[er,ea]=(0,s.useState)([]),[eo,ei]=(0,s.useState)(null),[en,el]=(0,s.useState)(null),[ec,ed]=(0,z.useDisclosure)(!1),[eh,eu]=(0,s.useState)(""),[ep,em]=(0,s.useState)([]),[ef,ey]=(0,z.useDisclosure)(!1),[eg,eb]=(0,s.useState)(""),{copy:ew,copied:ex}=function(e={}){let t=e.timeout??2e3,[r,a]=(0,s.useState)(null),[o,i]=(0,s.useState)(!1),n=(0,s.useRef)(null);return(0,s.useEffect)(()=>()=>{window.clearTimeout(n.current)},[]),{copy:e=>{"clipboard"in navigator?navigator.clipboard.writeText(e).then(()=>{a(null),window.clearTimeout(n.current),n.current=window.setTimeout(()=>i(!1),t),i(!0)}).catch(e=>a(e)):a(Error("useClipboard: navigator.clipboard is not supported"))},reset:()=>{i(!1),a(null),window.clearTimeout(n.current)},error:r,copied:o}}({timeout:2e3}),[ej,ev]=(0,s.useState)(0),[ek,eN]=(0,s.useState)({total:0,used:0,free:0}),[eR,eT]=(0,z.useDisclosure)(!1),[eC,eS]=(0,s.useState)(null),[eq,eE]=(0,s.useState)(null),[eM,eP]=(0,s.useState)(!1),[ez,eA]=(0,s.useState)(null),[eL,e$]=(0,s.useState)(""),[eD,eO]=(0,s.useState)(!1),[eF,eU]=(0,s.useState)(!1),[eB,eH]=(0,s.useState)(!1),eI=(0,s.useRef)(null);(0,s.useRef)(null),(0,s.useEffect)(()=>{eo&&("image"===eo.subtype||"video"===eo.subtype)&&(eU(!0),eH(!1)),eo&&"text"===eo.subtype&&(e$(""),e5(eo.cid))},[eo?.cid]),(0,s.useEffect)(()=>{let e=eI.current;if(!e)return;let t=()=>eU(!1),s=()=>eU(!1);return eo?.subtype==="image"?e.complete?eU(!1):(e.addEventListener("load",t),e.addEventListener("error",s)):eo?.subtype==="video"&&(e.addEventListener("canplay",t),e.addEventListener("error",s)),()=>{e.removeEventListener("load",t),e.removeEventListener("error",s),e.removeEventListener("canplay",t)}},[eo]);let eJ=Z||"",eV=(e=new Set,X.forEach(t=>{let{folder:s}=F(t.fileName),r=s.split("/").filter(Boolean),a="";for(let t of r)a+=(a?"/":"")+t,e.add(a)}),[...e].sort()),{folders:eW,files:eX}={folders:(r=eJ?eJ+"/":"",eV.filter(e=>{let t=e.toLowerCase().startsWith(r.toLowerCase()),s=e.substring(r.length);return t&&!s.includes("/")}).map(e=>({name:e.substring(r.length),path:e}))),files:X.filter(e=>F(e.fileName).folder===eJ)},e_=eg?X.filter(e=>F(e.fileName).name.toLowerCase().includes(eg.toLowerCase())):eX,eK=H(_,()=>L.listPublishedFiles().then(e=>e||[]).catch(()=>$)),eG=H(G,()=>L.listTrashFiles().then(e=>e||[]).catch(()=>[])),eZ=H(eN,()=>L.getStorageStats().catch(()=>D)),eQ=e=>{ea(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e])},eY=async e=>{try{await L.restoreTrashFile(e),M("已恢复","success"),eK(),eG(),eZ()}catch{M("恢复失败","error")}},e0=async()=>{eS({title:"清空回收站",message:"确定要清空回收站吗?此操作不可恢复!",confirmText:"清空",danger:!0,onConfirm:async()=>{eS(null);try{await L.emptyTrash(),M("回收站已清空","success"),eG(),eZ()}catch{M("清空失败","error")}}})},e1=async e=>{try{let t=await L.toggleStar(e);_(s=>s.map(s=>s.cid===e?{...s,starred:t.starred}:s)),M(t.starred?"已收藏":"已取消收藏","success")}catch{M("操作失败","error")}},e2=async()=>{let e="trash"===Y;eS({title:e?"永久删除":"批量删除",message:e?`确定要永久删除选中的 ${er.length} 个项目吗?此操作不可恢复!`:`确定要删除选中的 ${er.length} 个项目吗?`,confirmText:e?"永久删除":"删除",danger:!0,onConfirm:async()=>{eS(null);try{for(let t of er)e?await L.permanentDeleteTrashFile(t):t.startsWith("__")||await L.deletePublishedFile(t);ea([]),M(e?"已永久删除":"已删除","success"),eK(),eG(),eZ()}catch{M("删除失败","error")}}})},e4=async e=>{try{for(let t of er){let s=X.find(e=>e.cid===t);if(!s)continue;let{name:r}=F(s.fileName),a=e?`${e}/${r}`:r;s.fileName!==a&&await L.moveFile(t,a)}ea([]),eT.close(),M("已移动","success"),eK()}catch{M("移动失败","error")}},e6=e=>{let t=!!e.path,s=t?e.name:F(e.fileName).name;eE({title:t?"重命名文件夹":"重命名文件",placeholder:"请输入新名称",defaultValue:s,confirmText:"重命名",onConfirm:async r=>{if(r!==s){eP(!0);try{if(t){let t=e.path.lastIndexOf("/"),s=-1!==t?e.path.substring(0,t):"",a=s?`${s}/${r}`:r;await L.renameFolder(e.path,a),M("已重命名","success"),eK(),ts(a)}else{let{folder:t}=F(e.fileName),s=t?`${t}/${r}`:r;await L.moveFile(e.cid,s),M("已重命名","success"),eK()}eE(null)}catch{M("重命名失败","error")}finally{eP(!1)}}}})},e3=async e=>{let t=eJ?eJ+"/":"",s=[];for(let r of Array.from(e)){let e=t+r.name;if(X.some(t=>t.fileName===e)){M(`${r.name} 已存在`,"warning");continue}let a=`upload_${Date.now()}_${Math.random().toString(36).slice(2,8)}`,o={id:a,fileName:r.name,progress:0,type:"upload",status:"uploading"};s.push(o),em(e=>[...e,o]),s.length>0&&ey.open();try{(await L.publishFile(r,e)).alreadyExists?(em(e=>e.map(e=>e.id===a?{...e,status:"completed"}:e)),M(`${r.name} 已存在`,"warning")):(em(e=>e.map(e=>e.id===a?{...e,progress:100,status:"completed"}:e)),M(`${r.name} 上传成功`,"success"))}catch(e){em(e=>e.map(e=>e.id===a?{...e,status:"error"}:e)),M(`上传失败: ${r.name}`,"error")}}setTimeout(()=>{em(e=>e.filter(e=>"completed"!==e.status&&"error"!==e.status&&"cancelled"!==e.status))},3e3),eK(),eZ()},e5=async e=>{eO(!0);try{let t=await fetch(`/api/files/${e}/download`,{headers:{Range:"bytes=0-9999"}});if(!t.ok)throw Error("加载失败");let s=await t.text();e$(s||"(文件为空)")}catch{e$("加载失败")}eO(!1)},[e8,e7]=(0,s.useState)(!1),e9=async()=>{if(!eh.trim()||!eh.startsWith("most://"))return void M("链接格式应为 most://<cid>","warning");if(!e8){e7(!0);try{let e=await L.downloadFile(eh);if(eu(""),ed.close(),e.alreadyExists)M(`${e.fileName} 已存在`,"warning");else{let t={id:e.taskId,fileName:"下载文件",progress:0,type:"download",status:"downloading"};em(e=>[...e,t]),ey.open(),M("下载已开始","info")}}catch(e){M("下载失败","error")}finally{e7(!1)}}},te=async e=>{if("download"===e.type&&"downloading"===e.status)try{await L.cancelDownload(e.id)}catch(e){M("取消失败","error")}},tt=async e=>{try{let t=await fetch(L.getFileDownloadUrl(e.cid));if(!t.ok)throw Error("获取文件失败");let s=await t.blob(),r=window.showSaveFilePicker;if(r){let t=await r({suggestedName:e.fileName}),a=await t.createWritable();await a.write(s),await a.close(),M("文件已保存","success")}else{let t=URL.createObjectURL(s),r=document.createElement("a");r.href=t,r.download=e.fileName,document.body.appendChild(r),r.click(),document.body.removeChild(r),URL.revokeObjectURL(t),M("文件已下载","success")}}catch(e){"AbortError"!==e.name&&M("保存失败: "+e.message,"error")}},ts=e=>{Q(e||null),ea([])};(0,s.useEffect)(()=>{location.protocol;let e=new WebSocket(`${"https:"===location.protocol?"wss:":"ws:"}//${location.host}/ws`);return e.onmessage=e=>{try{let{event:t,data:s}=JSON.parse(e.data);if("publish:success"===t||"download:success"===t){eK(),eZ();let e=s.taskId||s.fileName;em(t=>t.map(t=>t.id===e||t.fileName===s.fileName?{...t,progress:100,status:"completed"}:t)),"download:success"===t&&(s.alreadyExists?M(`${s.fileName} 已存在`,"warning"):M(`${s.fileName} 下载完成`,"success"),setTimeout(()=>{em(t=>t.filter(t=>t.id!==e||"completed"!==t.status))},3e3))}"publish:progress"===t&&em(e=>e.map(e=>{if(s.file&&e.fileName===s.file&&"upload"===e.type){let t=50;return"calculating-cid"===s.stage?t=25:"uploading"===s.stage?t=75:"complete"===s.stage&&(t=100),{...e,progress:t}}return e})),"download:progress"===t&&em(e=>e.map(e=>e.id===s.taskId?{...e,progress:s.percent||0,loaded:s.loaded,total:s.total}:e)),"download:error"===t&&(em(e=>e.map(e=>e.id===s.taskId?{...e,status:"error"}:e)),M(`下载失败: ${s.error}`,"error")),"network:status"===t&&ev(s.peers||0),"download:status"===t&&em(e=>e.map(e=>e.id===s.taskId?{...e,fileName:s.file||e.fileName}:e)),"download:cancelled"===t&&(em(e=>e.map(e=>e.id===s.taskId?{...e,status:"cancelled"}:e)),M("下载已取消","warning"))}catch{}},()=>e.close()},[]),(0,s.useEffect)(()=>{eK(),eG(),eZ(),L.getStorageStats().then(e=>eN(e)).catch(()=>eN(D))},[]);let tr="all"===Y?e_:"starred"===Y?X.filter(e=>e.starred&&F(e.fileName).name.toLowerCase().includes(eg.toLowerCase())):K.filter(e=>F(e.fileName).name.toLowerCase().includes(eg.toLowerCase())),ta="starred"===Y?[]:eW.filter(e=>e.name.toLowerCase().includes(eg.toLowerCase())),to=B(eJ);return(0,t.jsxs)(C.default,{sidebar:({closeSidebar:e})=>(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{className:"sidebar-header",onClick:()=>window.location.href="/",style:{cursor:"pointer"},children:(0,t.jsx)("h1",{children:"MOST PEOPLE"})}),(0,t.jsx)("nav",{className:"sidebar-nav",children:[{id:"all",icon:(0,t.jsx)(x,{size:18}),label:"全部内容"},{id:"starred",icon:(0,t.jsx)(w,{size:18}),label:"收藏"},{id:"trash",icon:(0,t.jsx)(l,{size:18}),label:"回收站"}].map(s=>(0,t.jsxs)("button",{onClick:()=>{ee(s.id),Q(null),ea([]),eb(""),e()},className:`sidebar-nav-btn ${Y===s.id?"active":""}`,children:[s.icon,(0,t.jsx)("span",{children:s.label})]},s.id))}),(0,t.jsxs)("div",{className:"sidebar-footer",children:[(0,t.jsxs)("div",{className:"sidebar-footer-label",children:[(0,t.jsx)(j,{size:14}),(0,t.jsx)("span",{children:"存储空间"})]}),(0,t.jsx)("div",{className:"storage-bar",children:(0,t.jsx)("div",{className:"storage-bar-fill",style:{width:`${ek.total>0?ek.used/ek.total*100:0}%`}})}),(0,t.jsxs)("div",{className:"storage-info",children:[(0,t.jsx)("span",{children:O(ek.used)}),(0,t.jsx)("span",{children:ek.total>0?O(ek.total):"-"})]})]})]}),headerTitle:(0,t.jsx)("h2",{className:"header-title",children:"all"===Y?"全部内容":"starred"===Y?"收藏":"回收站"}),headerRight:(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"search-box",children:[(0,t.jsx)(v.Search,{size:14}),(0,t.jsx)("input",{type:"text",value:eg,onChange:e=>eb(e.target.value),placeholder:"搜索..."}),eg&&(0,t.jsx)("button",{onClick:()=>eb(""),children:(0,t.jsx)(m.X,{size:12})})]}),"trash"===Y&&K.length>0&&(0,t.jsx)("button",{onClick:e0,className:"btn small btn-empty-trash",children:"清空回收站"}),(0,t.jsxs)("button",{onClick:()=>ey.open(),className:"icon-btn",children:[(0,t.jsx)(b,{size:16}),ep.length>0&&(0,t.jsx)("span",{className:"icon-btn-badge",children:ep.length})]}),(0,t.jsx)("button",{onClick:()=>d(!c),className:"icon-btn theme-toggle",children:c?(0,t.jsx)(o.Sun,{size:16}):(0,t.jsx)(i.Moon,{size:16})}),(0,t.jsx)("button",{onClick:()=>W(),className:"icon-btn",children:(0,t.jsx)(k,{size:16})})]}),children:[(0,t.jsxs)("div",{className:"download-banner",children:[(0,t.jsx)("span",{children:"Web 端仅用于界面展示,下载桌面客户端获得完整功能"}),(0,t.jsxs)(A.default,{href:"/download",className:"download-banner-btn",children:[(0,t.jsx)(g.Download,{size:14}),"下载客户端",(0,t.jsx)(T.ArrowRight,{size:12})]})]}),"all"===Y&&(0,t.jsxs)("div",{className:"action-grid",children:[(0,t.jsxs)("div",{className:`action-card upload ${et?"drag-over":""}`,onDragOver:e=>{e.preventDefault(),es(!0)},onDragLeave:()=>es(!1),onDrop:e=>{e.preventDefault(),es(!1),e3(e.dataTransfer.files)},children:[(0,t.jsx)("input",{type:"file",multiple:!0,onChange:e=>e3(e.target.files),className:"action-card-input"}),(0,t.jsx)(a,{size:20,className:"action-grid-icon"}),(0,t.jsx)("p",{children:"上传文件"})]}),(0,t.jsxs)("div",{className:"action-card action-card-download",onClick:()=>ed.open(),children:[(0,t.jsx)(g.Download,{size:20,className:"action-grid-icon"}),(0,t.jsx)("p",{children:"下载文件"})]})]}),"all"===Y&&(0,t.jsx)("div",{className:"breadcrumb",children:eJ?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("button",{onClick:()=>ts(""),children:"全部内容"}),to.slice(1).map((e,r)=>(0,t.jsxs)(s.default.Fragment,{children:[(0,t.jsx)(u,{size:12}),(0,t.jsx)("button",{onClick:()=>ts(e.path),className:r===to.length-2?"current":"",children:e.name}),r===to.length-2&&(0,t.jsx)("button",{onClick:()=>e6(e),className:"breadcrumb-edit-btn",children:(0,t.jsx)(N,{size:12})})]},e.path))]}):null}),(0,t.jsxs)("div",{className:"content-grid",children:["trash"===Y&&(0===tr.length?(0,t.jsx)("div",{className:"empty-state",children:eg?"未找到相关文件":"回收站是空的"}):(0,t.jsx)("div",{className:"file-grid",children:tr.map(e=>{var s;return(0,t.jsxs)("div",{onClick:()=>ea(t=>t.includes(e.cid)?t.filter(t=>t!==e.cid):[...t,e.cid]),onDoubleClick:()=>eY(e.cid),className:`card ${er.includes(e.cid)?"selected":""}`,children:[(0,t.jsx)("div",{className:"card-icon trash",children:(0,t.jsx)(p,{size:24,color:"#fff"})}),(0,t.jsx)("p",{className:"card-name",children:F(e.fileName).name}),(0,t.jsxs)("p",{className:"card-date",children:["删除于 ",(s=e.deletedAt)?new Date(s).toLocaleDateString("zh-CN"):""]})]},e.cid)})})),"trash"!==Y&&(0===tr.length&&0===ta.length?(0,t.jsx)("div",{className:"empty-state",children:eg?"未找到相关文件":"starred"===Y?"暂无的收藏":"暂无文件"}):(0,t.jsxs)("div",{className:"file-grid",children:[ta.map(e=>(0,t.jsx)(J,{folder:e,isDarkMode:c,onClick:()=>ts(e.path)},e.path)),tr.map(e=>(0,t.jsx)(I,{file:e,isSelected:er.includes(e.cid),isDarkMode:c,onSelect:eQ,onPreview:e=>ei({...e,subtype:U(e.fileName)})},e.cid))]}))]}),eC&&(0,t.jsx)(q.ConfirmModal,{title:eC.title,message:eC.message,confirmText:eC.confirmText,danger:eC.danger,closeOnOverlayClick:eC.danger,onConfirm:eC.onConfirm,onClose:()=>eS(null)}),eq&&(0,t.jsx)(E.InputModal,{title:eq.title,placeholder:eq.placeholder,defaultValue:eq.defaultValue,confirmText:eq.confirmText,isLoading:eM,onConfirm:eq.onConfirm,onClose:()=>eE(null)}),eR&&(0,t.jsx)(V,{items:er.map(e=>X.find(t=>t.cid===e)).filter(Boolean),allFolders:eV.map(e=>({path:e,name:e.split("/").pop()})),currentPath:eJ,onMove:e4,onClose:()=>eT.close()}),en&&(0,t.jsx)(S.ModalOverlay,{onClose:()=>el(null),children:(0,t.jsxs)("div",{className:"share-modal",onClick:e=>e.stopPropagation(),children:[(0,t.jsxs)("div",{className:"modal-header",children:[(0,t.jsx)("h3",{children:"分享链接"}),(0,t.jsx)("button",{onClick:()=>el(null),className:"modal-close-btn",children:(0,t.jsx)(m.X,{size:18})})]}),(0,t.jsxs)("div",{className:"share-link-box",children:[(0,t.jsxs)("div",{className:"share-link-text",children:["most://",en.cid,"?filename=",en.fileName]}),(0,t.jsx)("button",{onClick:()=>{ew(`most://${en.cid}?filename=${en.fileName}`)},className:`share-copy-btn ${ex?"copied":""}`,children:ex?(0,t.jsx)(f.Check,{size:18}):(0,t.jsx)(y.Copy,{size:18})})]})]})}),ec&&(0,t.jsx)(S.ModalOverlay,{onClose:()=>ed.close(),children:(0,t.jsxs)("div",{className:"download-modal",onClick:e=>e.stopPropagation(),children:[(0,t.jsxs)("div",{className:"modal-header",children:[(0,t.jsx)("h3",{children:"下载文件"}),(0,t.jsx)("button",{onClick:()=>ed.close(),className:"modal-close-btn",children:(0,t.jsx)(m.X,{size:18})})]}),(0,t.jsx)("input",{type:"text",value:eh,onChange:e=>eu(e.target.value),placeholder:"most://...",onKeyDown:e=>"Enter"===e.key&&e9(),className:"download-input"}),(0,t.jsx)("button",{onClick:e9,disabled:!eh.trim()||e8,className:"download-btn",children:e8?"下载中...":"开始下载"})]})}),eo&&(0,t.jsxs)("div",{className:"preview-overlay",onClick:()=>{ei(null),e$(""),eU(!1)},children:[(0,t.jsx)("button",{className:"preview-close",children:(0,t.jsx)(m.X,{size:20})}),(0,t.jsxs)("div",{onClick:e=>e.stopPropagation(),children:["image"===eo.subtype&&(0,t.jsx)("div",{className:"preview-media-wrapper",children:(0,t.jsx)("img",{ref:eI,src:L.getFileDownloadUrl(eo.cid),alt:""})}),"video"===eo.subtype&&(0,t.jsx)("div",{className:"preview-media-wrapper",children:(0,t.jsx)("video",{ref:eI,src:L.getFileDownloadUrl(eo.cid),controls:!0})}),"audio"===eo.subtype&&(0,t.jsxs)("div",{className:"preview-audio",children:[(0,t.jsx)("div",{className:"preview-audio-icon",children:(0,t.jsx)(h.Music,{size:36,color:"var(--accent)"})}),(0,t.jsx)("p",{className:"preview-audio-filename",children:eo.fileName}),(0,t.jsx)("audio",{className:"preview-audio-player",src:L.getFileDownloadUrl(eo.cid),controls:!0})]}),"file"===eo.subtype&&(0,t.jsxs)("div",{className:"preview-unsupported",children:[(0,t.jsx)(p,{size:48,className:"preview-file-icon"}),(0,t.jsx)("p",{children:eo.fileName}),(0,t.jsx)("p",{className:"preview-unsupported-hint",children:"无法预览"})]}),"text"===eo.subtype&&(0,t.jsxs)("div",{className:"preview-text-container",children:[(0,t.jsx)("div",{className:"preview-text-header",children:(0,t.jsx)("span",{children:eo.fileName})}),eD?(0,t.jsxs)("div",{className:"preview-text-loading",children:[(0,t.jsx)(R,{size:24,className:"preview-text-spinner"}),(0,t.jsx)("p",{children:"正在加载文本预览..."}),(0,t.jsx)("p",{className:"preview-text-loading-hint",children:"如果是初次预览,可能需要等待 P2P 网络同步"})]}):(0,t.jsx)("pre",{className:"preview-text",children:eL||"(文件为空)"})]})]})]}),er.length>0&&(0,t.jsxs)("div",{className:"batch-bar",children:[(0,t.jsxs)("span",{className:"batch-info",children:["已选 ",er.length," 项"]}),(0,t.jsx)("button",{onClick:()=>ea([]),className:"batch-dismiss",children:(0,t.jsx)(m.X,{size:16})}),(0,t.jsx)("div",{className:"batch-divider"}),"trash"===Y?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("button",{onClick:async()=>{await Promise.all(er.map(e=>L.restoreTrashFile(e))),ea([]),M("已恢复","success"),eK(),eG(),eZ()},className:"btn small",children:"恢复"}),(0,t.jsx)("button",{onClick:e2,className:"btn small danger",children:"永久删除"})]}):(0,t.jsxs)(t.Fragment,{children:[1===er.length&&(n=X.find(e=>e.cid===er[0]))&&"file"!==U(n.fileName)&&(0,t.jsx)("button",{onClick:()=>{let e=X.find(e=>e.cid===er[0]);if(e){let t=U(e.fileName);ei({...e,subtype:t}),e$(""),"text"===t&&e5(e.cid)}},className:"btn small",children:"预览"}),(0,t.jsx)("button",{onClick:()=>{let e=er.some(e=>{let t=X.find(t=>t.cid===e);return t&&!t.starred});er.forEach(t=>{let s=X.find(e=>e.cid===t);s&&(e?!s.starred:s.starred)&&e1(t)})},className:"btn small btn-star",children:"收藏"}),1===er.length&&(0,t.jsx)("button",{onClick:()=>{let e=X.find(e=>e.cid===er[0]);e&&e6(e)},className:"btn small",children:"重命名"}),(0,t.jsx)("button",{onClick:()=>eT.open(),className:"btn small btn-move",children:"移动"}),(0,t.jsx)("button",{onClick:e2,className:"btn small danger",children:"删除"}),1===er.length&&(0,t.jsx)("button",{onClick:()=>el(X.find(e=>e.cid===er[0])),className:"btn small",children:"分享"}),1===er.length&&(0,t.jsx)("button",{onClick:()=>{let e=X.find(e=>e.cid===er[0]);e&&tt(e)},className:"btn small",children:"另存为"})]})]}),ef&&(0,t.jsx)(S.ModalOverlay,{onClose:()=>ey.close(),closeOnOverlayClick:!0,children:(0,t.jsxs)("div",{className:"transfer-modal",onClick:e=>e.stopPropagation(),children:[(0,t.jsxs)("div",{className:"modal-header",children:[(0,t.jsx)("h3",{children:"传输"}),(0,t.jsx)("button",{onClick:()=>ey.close(),className:"modal-close-btn",children:(0,t.jsx)(m.X,{size:18})})]}),0===ep.length?(0,t.jsx)("div",{className:"empty-transfer",children:"暂无传输"}):ep.map(e=>(0,t.jsxs)("div",{className:"transfer-item",children:[(0,t.jsxs)("div",{className:"transfer-item-header",children:["upload"===e.type?(0,t.jsx)(a,{size:14}):(0,t.jsx)(g.Download,{size:14}),(0,t.jsx)("span",{className:"transfer-item-name",children:e.fileName}),"downloading"===e.status&&"download"===e.type&&(0,t.jsx)("button",{onClick:()=>te(e),className:"transfer-item-cancel",children:(0,t.jsx)(m.X,{size:14})})]}),(0,t.jsxs)("div",{className:"transfer-progress-row",children:[(0,t.jsx)("div",{className:"transfer-progress-bar",children:(0,t.jsx)("div",{className:`transfer-progress-fill ${"download"===e.type?"download":""} ${"error"===e.status?"error":""} ${"cancelled"===e.status?"cancelled":""}`,style:{width:`${e.progress}%`}})}),(0,t.jsx)("span",{className:"transfer-progress-text",children:"completed"===e.status?"完成":"error"===e.status?"失败":"cancelled"===e.status?"已取消":e.loaded&&e.total?`${O(e.loaded)}/${O(e.total)}`:`${e.progress}%`})]})]},e.id))]})})]})}],27627)}]);
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,35451,(e,t,r)=>{var n={229:function(e){var t,r,n,o=e.exports={};function u(){throw Error("setTimeout has not been defined")}function i(){throw Error("clearTimeout has not been defined")}try{t="function"==typeof setTimeout?setTimeout:u}catch(e){t=u}try{r="function"==typeof clearTimeout?clearTimeout:i}catch(e){r=i}function a(e){if(t===setTimeout)return setTimeout(e,0);if((t===u||!t)&&setTimeout)return t=setTimeout,setTimeout(e,0);try{return t(e,0)}catch(r){try{return t.call(null,e,0)}catch(r){return t.call(this,e,0)}}}var l=[],s=!1,c=-1;function f(){s&&n&&(s=!1,n.length?l=n.concat(l):c=-1,l.length&&d())}function d(){if(!s){var e=a(f);s=!0;for(var t=l.length;t;){for(n=l,l=[];++c<t;)n&&n[c].run();c=-1,t=l.length}n=null,s=!1,function(e){if(r===clearTimeout)return clearTimeout(e);if((r===i||!r)&&clearTimeout)return r=clearTimeout,clearTimeout(e);try{r(e)}catch(t){try{return r.call(null,e)}catch(t){return r.call(this,e)}}}(e)}}function p(e,t){this.fun=e,this.array=t}function y(){}o.nextTick=function(e){var t=Array(arguments.length-1);if(arguments.length>1)for(var r=1;r<arguments.length;r++)t[r-1]=arguments[r];l.push(new p(e,t)),1!==l.length||s||a(d)},p.prototype.run=function(){this.fun.apply(null,this.array)},o.title="browser",o.browser=!0,o.env={},o.argv=[],o.version="",o.versions={},o.on=y,o.addListener=y,o.once=y,o.off=y,o.removeListener=y,o.removeAllListeners=y,o.emit=y,o.prependListener=y,o.prependOnceListener=y,o.listeners=function(e){return[]},o.binding=function(e){throw Error("process.binding is not supported")},o.cwd=function(){return"/"},o.chdir=function(e){throw Error("process.chdir is not supported")},o.umask=function(){return 0}}},o={};function u(e){var t=o[e];if(void 0!==t)return t.exports;var r=o[e]={exports:{}},i=!0;try{n[e](r,r.exports,u),i=!1}finally{i&&delete o[e]}return r.exports}u.ab="/ROOT/node_modules/next/dist/compiled/process/",t.exports=u(229)},47167,(e,t,r)=>{"use strict";var n,o;t.exports=(null==(n=e.g.process)?void 0:n.env)&&"object"==typeof(null==(o=e.g.process)?void 0:o.env)?e.g.process:e.r(35451)},45689,(e,t,r)=>{"use strict";var n=Symbol.for("react.transitional.element");function o(e,t,r){var o=null;if(void 0!==r&&(o=""+r),void 0!==t.key&&(o=""+t.key),"key"in t)for(var u in r={},t)"key"!==u&&(r[u]=t[u]);else r=t;return{$$typeof:n,type:e,key:o,ref:void 0!==(t=r.ref)?t:null,props:r}}r.Fragment=Symbol.for("react.fragment"),r.jsx=o,r.jsxs=o},43476,(e,t,r)=>{"use strict";t.exports=e.r(45689)},50740,(e,t,r)=>{"use strict";var n=e.i(47167),o=Symbol.for("react.transitional.element"),u=Symbol.for("react.portal"),i=Symbol.for("react.fragment"),a=Symbol.for("react.strict_mode"),l=Symbol.for("react.profiler"),s=Symbol.for("react.consumer"),c=Symbol.for("react.context"),f=Symbol.for("react.forward_ref"),d=Symbol.for("react.suspense"),p=Symbol.for("react.memo"),y=Symbol.for("react.lazy"),h=Symbol.for("react.activity"),b=Symbol.for("react.view_transition"),g=Symbol.iterator,_={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},v=Object.assign,m={};function x(e,t,r){this.props=e,this.context=t,this.refs=m,this.updater=r||_}function j(){}function S(e,t,r){this.props=e,this.context=t,this.refs=m,this.updater=r||_}x.prototype.isReactComponent={},x.prototype.setState=function(e,t){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},x.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},j.prototype=x.prototype;var O=S.prototype=new j;O.constructor=S,v(O,x.prototype),O.isPureReactComponent=!0;var E=Array.isArray;function w(){}var T={H:null,A:null,T:null,S:null},R=Object.prototype.hasOwnProperty;function P(e,t,r){var n=r.ref;return{$$typeof:o,type:e,key:t,ref:void 0!==n?n:null,props:r}}function A(e){return"object"==typeof e&&null!==e&&e.$$typeof===o}var M=/\/+/g;function C(e,t){var r,n;return"object"==typeof e&&null!==e&&null!=e.key?(r=""+e.key,n={"=":"=0",":":"=2"},"$"+r.replace(/[=:]/g,function(e){return n[e]})):t.toString(36)}function k(e,t,r){if(null==e)return e;var n=[],i=0;return!function e(t,r,n,i,a){var l,s,c,f=typeof t;("undefined"===f||"boolean"===f)&&(t=null);var d=!1;if(null===t)d=!0;else switch(f){case"bigint":case"string":case"number":d=!0;break;case"object":switch(t.$$typeof){case o:case u:d=!0;break;case y:return e((d=t._init)(t._payload),r,n,i,a)}}if(d)return a=a(t),d=""===i?"."+C(t,0):i,E(a)?(n="",null!=d&&(n=d.replace(M,"$&/")+"/"),e(a,r,n,"",function(e){return e})):null!=a&&(A(a)&&(l=a,s=n+(null==a.key||t&&t.key===a.key?"":(""+a.key).replace(M,"$&/")+"/")+d,a=P(l.type,s,l.props)),r.push(a)),1;d=0;var p=""===i?".":i+":";if(E(t))for(var h=0;h<t.length;h++)f=p+C(i=t[h],h),d+=e(i,r,n,f,a);else if("function"==typeof(h=null===(c=t)||"object"!=typeof c?null:"function"==typeof(c=g&&c[g]||c["@@iterator"])?c:null))for(t=h.call(t),h=0;!(i=t.next()).done;)f=p+C(i=i.value,h++),d+=e(i,r,n,f,a);else if("object"===f){if("function"==typeof t.then)return e(function(e){switch(e.status){case"fulfilled":return e.value;case"rejected":throw e.reason;default:switch("string"==typeof e.status?e.then(w,w):(e.status="pending",e.then(function(t){"pending"===e.status&&(e.status="fulfilled",e.value=t)},function(t){"pending"===e.status&&(e.status="rejected",e.reason=t)})),e.status){case"fulfilled":return e.value;case"rejected":throw e.reason}}throw e}(t),r,n,i,a);throw Error("Objects are not valid as a React child (found: "+("[object Object]"===(r=String(t))?"object with keys {"+Object.keys(t).join(", ")+"}":r)+"). If you meant to render a collection of children, use an array instead.")}return d}(e,n,"","",function(e){return t.call(r,e,i++)}),n}function H(e){if(-1===e._status){var t=(0,e._result)();t.then(function(r){(0===e._status||-1===e._status)&&(e._status=1,e._result=r,void 0===t.status&&(t.status="fulfilled",t.value=r))},function(r){(0===e._status||-1===e._status)&&(e._status=2,e._result=r,void 0===t.status&&(t.status="rejected",t.reason=r))}),-1===e._status&&(e._status=0,e._result=t)}if(1===e._status)return e._result.default;throw e._result}var U="function"==typeof reportError?reportError:function(e){if("object"==typeof window&&"function"==typeof window.ErrorEvent){var t=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:"object"==typeof e&&null!==e&&"string"==typeof e.message?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if("object"==typeof n.default&&"function"==typeof n.default.emit)return void n.default.emit("uncaughtException",e);console.error(e)};function N(e){var t=T.T,r={};r.types=null!==t?t.types:null,T.T=r;try{var n=e(),o=T.S;null!==o&&o(r,n),"object"==typeof n&&null!==n&&"function"==typeof n.then&&n.then(w,U)}catch(e){U(e)}finally{null!==t&&null!==r.types&&(t.types=r.types),T.T=t}}function I(e){var t=T.T;if(null!==t){var r=t.types;null===r?t.types=[e]:-1===r.indexOf(e)&&r.push(e)}else N(I.bind(null,e))}r.Activity=h,r.Children={map:k,forEach:function(e,t,r){k(e,function(){t.apply(this,arguments)},r)},count:function(e){var t=0;return k(e,function(){t++}),t},toArray:function(e){return k(e,function(e){return e})||[]},only:function(e){if(!A(e))throw Error("React.Children.only expected to receive a single React element child.");return e}},r.Component=x,r.Fragment=i,r.Profiler=l,r.PureComponent=S,r.StrictMode=a,r.Suspense=d,r.ViewTransition=b,r.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=T,r.__COMPILER_RUNTIME={__proto__:null,c:function(e){return T.H.useMemoCache(e)}},r.addTransitionType=I,r.cache=function(e){return function(){return e.apply(null,arguments)}},r.cacheSignal=function(){return null},r.cloneElement=function(e,t,r){if(null==e)throw Error("The argument must be a React element, but you passed "+e+".");var n=v({},e.props),o=e.key;if(null!=t)for(u in void 0!==t.key&&(o=""+t.key),t)R.call(t,u)&&"key"!==u&&"__self"!==u&&"__source"!==u&&("ref"!==u||void 0!==t.ref)&&(n[u]=t[u]);var u=arguments.length-2;if(1===u)n.children=r;else if(1<u){for(var i=Array(u),a=0;a<u;a++)i[a]=arguments[a+2];n.children=i}return P(e.type,o,n)},r.createContext=function(e){return(e={$$typeof:c,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null}).Provider=e,e.Consumer={$$typeof:s,_context:e},e},r.createElement=function(e,t,r){var n,o={},u=null;if(null!=t)for(n in void 0!==t.key&&(u=""+t.key),t)R.call(t,n)&&"key"!==n&&"__self"!==n&&"__source"!==n&&(o[n]=t[n]);var i=arguments.length-2;if(1===i)o.children=r;else if(1<i){for(var a=Array(i),l=0;l<i;l++)a[l]=arguments[l+2];o.children=a}if(e&&e.defaultProps)for(n in i=e.defaultProps)void 0===o[n]&&(o[n]=i[n]);return P(e,u,o)},r.createRef=function(){return{current:null}},r.forwardRef=function(e){return{$$typeof:f,render:e}},r.isValidElement=A,r.lazy=function(e){return{$$typeof:y,_payload:{_status:-1,_result:e},_init:H}},r.memo=function(e,t){return{$$typeof:p,type:e,compare:void 0===t?null:t}},r.startTransition=N,r.unstable_useCacheRefresh=function(){return T.H.useCacheRefresh()},r.use=function(e){return T.H.use(e)},r.useActionState=function(e,t,r){return T.H.useActionState(e,t,r)},r.useCallback=function(e,t){return T.H.useCallback(e,t)},r.useContext=function(e){return T.H.useContext(e)},r.useDebugValue=function(){},r.useDeferredValue=function(e,t){return T.H.useDeferredValue(e,t)},r.useEffect=function(e,t){return T.H.useEffect(e,t)},r.useEffectEvent=function(e){return T.H.useEffectEvent(e)},r.useId=function(){return T.H.useId()},r.useImperativeHandle=function(e,t,r){return T.H.useImperativeHandle(e,t,r)},r.useInsertionEffect=function(e,t){return T.H.useInsertionEffect(e,t)},r.useLayoutEffect=function(e,t){return T.H.useLayoutEffect(e,t)},r.useMemo=function(e,t){return T.H.useMemo(e,t)},r.useOptimistic=function(e,t){return T.H.useOptimistic(e,t)},r.useReducer=function(e,t,r){return T.H.useReducer(e,t,r)},r.useRef=function(e){return T.H.useRef(e)},r.useState=function(e){return T.H.useState(e)},r.useSyncExternalStore=function(e,t,r){return T.H.useSyncExternalStore(e,t,r)},r.useTransition=function(){return T.H.useTransition()},r.version="19.3.0-canary-3f0b9e61-20260317"},71645,(e,t,r)=>{"use strict";t.exports=e.r(50740)},55682,(e,t,r)=>{"use strict";r._=function(e){return e&&e.__esModule?e:{default:e}}},90317,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={bindSnapshot:function(){return s},createAsyncLocalStorage:function(){return l},createSnapshot:function(){return c}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let u=Object.defineProperty(Error("Invariant: AsyncLocalStorage accessed in runtime where it is not available"),"__NEXT_ERROR_CODE",{value:"E504",enumerable:!1,configurable:!0});class i{disable(){throw u}getStore(){}run(){throw u}exit(){throw u}enterWith(){throw u}static bind(e){return e}}let a="u">typeof globalThis&&globalThis.AsyncLocalStorage;function l(){return a?new a:new i}function s(e){return a?a.bind(e):i.bind(e)}function c(){return a?a.snapshot():function(e,...t){return e(...t)}}},42344,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"workAsyncStorageInstance",{enumerable:!0,get:function(){return n}});let n=(0,e.r(90317).createAsyncLocalStorage)()},63599,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"workAsyncStorage",{enumerable:!0,get:function(){return n.workAsyncStorageInstance}});let n=e.r(42344)},12354,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"handleISRError",{enumerable:!0,get:function(){return o}});let n="u"<typeof window?e.r(63599).workAsyncStorage:void 0;function o({error:e}){if(n){let t=n.getStore();if(t?.isStaticGeneration)throw e&&console.error(e),e}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},90373,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useUntrackedPathname",{enumerable:!0,get:function(){return u}});let n=e.r(71645),o=e.r(61994);function u(){return!function(){if("u"<typeof window){let{workUnitAsyncStorage:t}=e.r(62141),r=t.getStore();if(!r)return!1;switch(r.type){case"prerender":case"prerender-client":case"prerender-ppr":case"validation-client":let n=r.fallbackRouteParams;return!!n&&n.size>0}}return!1}()?(0,n.useContext)(o.PathnameContext):null}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},78377,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={handleHardNavError:function(){return i},useNavFailureHandler:function(){return a}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});e.r(71645);let u=e.r(51191);function i(e){return!!(e&&"u">typeof window)&&!!window.next.__pendingUrl&&(0,u.createHrefFromUrl)(new URL(window.location.href))!==(0,u.createHrefFromUrl)(window.next.__pendingUrl)&&(console.error("Error occurred during navigation, falling back to hard navigation",e),window.location.href=window.next.__pendingUrl.toString(),!0)}function a(){}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},72383,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={ErrorBoundary:function(){return h},ErrorBoundaryHandler:function(){return y}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let u=e.r(90809),i=e.r(43476),a=u._(e.r(71645)),l=e.r(90373),s=e.r(65713);e.r(78377);let c=e.r(12354),f=e.r(82604),d=e.r(8372),p="u">typeof window&&(0,f.isBot)(window.navigator.userAgent);class y extends a.default.Component{static{this.contextType=d.AppRouterContext}constructor(e){super(e),this.reset=()=>{this.setState({error:null})},this.unstable_retry=()=>{(0,a.startTransition)(()=>{this.context?.refresh(),this.reset()})},this.state={error:null,previousPathname:this.props.pathname}}static getDerivedStateFromError(e){if((0,s.isNextRouterError)(e))throw e;return{error:e}}static getDerivedStateFromProps(e,t){let{error:r}=t;return e.pathname!==t.previousPathname&&t.error?{error:null,previousPathname:e.pathname}:{error:t.error,previousPathname:e.pathname}}render(){return this.state.error&&!p?((0,c.handleISRError)({error:this.state.error}),(0,i.jsxs)(i.Fragment,{children:[this.props.errorStyles,this.props.errorScripts,(0,i.jsx)(this.props.errorComponent,{error:this.state.error,reset:this.reset,unstable_retry:this.unstable_retry})]})):this.props.children}}function h({errorComponent:e,errorStyles:t,errorScripts:r,children:n}){let o=(0,l.useUntrackedPathname)();return e?(0,i.jsx)(y,{pathname:o,errorComponent:e,errorStyles:t,errorScripts:r,children:n}):(0,i.jsx)(i.Fragment,{children:n})}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},58442,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={RedirectBoundary:function(){return p},RedirectErrorBoundary:function(){return d}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let u=e.r(90809),i=e.r(43476),a=u._(e.r(71645)),l=e.r(76562),s=e.r(24063),c=e.r(68391);function f({redirect:e,reset:t,redirectType:r}){let n=(0,l.useRouter)();return(0,a.useEffect)(()=>{a.default.startTransition(()=>{"push"===r?n.push(e,{}):n.replace(e,{}),t()})},[e,r,t,n]),null}class d extends a.default.Component{constructor(e){super(e),this.state={redirect:null,redirectType:null}}static getDerivedStateFromError(e){if((0,c.isRedirectError)(e)){let t=(0,s.getURLFromRedirectError)(e),r=(0,s.getRedirectTypeFromError)(e);return"handled"in e?{redirect:null,redirectType:null}:{redirect:t,redirectType:r}}throw e}render(){let{redirect:e,redirectType:t}=this.state;return null!==e&&null!==t?(0,i.jsx)(f,{redirect:e,redirectType:t,reset:()=>this.setState({redirect:null})}):this.props.children}}function p({children:e}){let t=(0,l.useRouter)();return(0,i.jsx)(d,{router:t,children:e})}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},70725,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"createRouterCacheKey",{enumerable:!0,get:function(){return o}});let n=e.r(13258);function o(e,t=!1){return Array.isArray(e)?`${e[0]}|${e[1]}|${e[2]}`:t&&e.startsWith(n.PAGE_SEGMENT_KEY)?n.PAGE_SEGMENT_KEY:e}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},1244,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"unresolvedThenable",{enumerable:!0,get:function(){return n}});let n={then:()=>{}};("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},97367,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={MetadataBoundary:function(){return a},OutletBoundary:function(){return s},RootLayoutBoundary:function(){return c},ViewportBoundary:function(){return l}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let u=e.r(54839),i={[u.METADATA_BOUNDARY_NAME]:function({children:e}){return e},[u.VIEWPORT_BOUNDARY_NAME]:function({children:e}){return e},[u.OUTLET_BOUNDARY_NAME]:function({children:e}){return e},[u.ROOT_LAYOUT_BOUNDARY_NAME]:function({children:e}){return e}},a=i[u.METADATA_BOUNDARY_NAME.slice(0)],l=i[u.VIEWPORT_BOUNDARY_NAME.slice(0)],s=i[u.OUTLET_BOUNDARY_NAME.slice(0)],c=i[u.ROOT_LAYOUT_BOUNDARY_NAME.slice(0)]},18576,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={WarningIcon:function(){return l},errorStyles:function(){return i},errorThemeCss:function(){return a}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});e.r(55682);let u=e.r(43476);e.r(71645);let i={container:{fontFamily:'system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji"',height:"100vh",display:"flex",alignItems:"center",justifyContent:"center"},card:{marginTop:"-32px",maxWidth:"325px",padding:"32px 28px",textAlign:"left"},icon:{marginBottom:"24px"},title:{fontSize:"24px",fontWeight:500,letterSpacing:"-0.02em",lineHeight:"32px",margin:"0 0 12px 0",color:"var(--next-error-title)"},message:{fontSize:"14px",fontWeight:400,lineHeight:"21px",margin:"0 0 20px 0",color:"var(--next-error-message)"},form:{margin:0},buttonGroup:{display:"flex",gap:"8px",alignItems:"center"},button:{display:"inline-flex",alignItems:"center",justifyContent:"center",height:"32px",padding:"0 12px",fontSize:"14px",fontWeight:500,lineHeight:"20px",borderRadius:"6px",cursor:"pointer",color:"var(--next-error-btn-text)",background:"var(--next-error-btn-bg)",border:"var(--next-error-btn-border)"},buttonSecondary:{display:"inline-flex",alignItems:"center",justifyContent:"center",height:"32px",padding:"0 12px",fontSize:"14px",fontWeight:500,lineHeight:"20px",borderRadius:"6px",cursor:"pointer",color:"var(--next-error-btn-secondary-text)",background:"var(--next-error-btn-secondary-bg)",border:"var(--next-error-btn-secondary-border)"},digestFooter:{position:"fixed",bottom:"32px",left:"0",right:"0",textAlign:"center",fontFamily:'ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,monospace',fontSize:"12px",lineHeight:"18px",fontWeight:400,margin:"0",color:"var(--next-error-digest)"}},a=`
|
|
2
|
+
:root {
|
|
3
|
+
--next-error-bg: #fff;
|
|
4
|
+
--next-error-text: #171717;
|
|
5
|
+
--next-error-title: #171717;
|
|
6
|
+
--next-error-message: #171717;
|
|
7
|
+
--next-error-digest: #666666;
|
|
8
|
+
--next-error-btn-text: #fff;
|
|
9
|
+
--next-error-btn-bg: #171717;
|
|
10
|
+
--next-error-btn-border: none;
|
|
11
|
+
--next-error-btn-secondary-text: #171717;
|
|
12
|
+
--next-error-btn-secondary-bg: transparent;
|
|
13
|
+
--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);
|
|
14
|
+
}
|
|
15
|
+
@media (prefers-color-scheme: dark) {
|
|
16
|
+
:root {
|
|
17
|
+
--next-error-bg: #0a0a0a;
|
|
18
|
+
--next-error-text: #ededed;
|
|
19
|
+
--next-error-title: #ededed;
|
|
20
|
+
--next-error-message: #ededed;
|
|
21
|
+
--next-error-digest: #a0a0a0;
|
|
22
|
+
--next-error-btn-text: #0a0a0a;
|
|
23
|
+
--next-error-btn-bg: #ededed;
|
|
24
|
+
--next-error-btn-border: none;
|
|
25
|
+
--next-error-btn-secondary-text: #ededed;
|
|
26
|
+
--next-error-btn-secondary-bg: transparent;
|
|
27
|
+
--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }
|
|
31
|
+
`.replace(/\n\s*/g,"");function l(){return(0,u.jsx)("svg",{width:"32",height:"32",viewBox:"-0.2 -1.5 32 32",fill:"none",style:i.icon,children:(0,u.jsx)("path",{d:"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z",fill:"var(--next-error-title)"})})}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},68027,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return i}}),e.r(55682);let n=e.r(43476);e.r(71645);let o=e.r(12354),u=e.r(18576),i=function({error:e}){let t=e?.digest,r=!!t;return(0,o.handleISRError)({error:e}),(0,n.jsxs)("html",{id:"__next_error__",children:[(0,n.jsx)("head",{children:(0,n.jsx)("style",{dangerouslySetInnerHTML:{__html:u.errorThemeCss}})}),(0,n.jsxs)("body",{children:[(0,n.jsx)("div",{style:u.errorStyles.container,children:(0,n.jsxs)("div",{style:u.errorStyles.card,children:[(0,n.jsx)(u.WarningIcon,{}),(0,n.jsx)("h1",{style:u.errorStyles.title,children:"This page couldn’t load"}),(0,n.jsx)("p",{style:u.errorStyles.message,children:r?"A server error occurred. Reload to try again.":"Reload to try again, or go back."}),(0,n.jsxs)("div",{style:u.errorStyles.buttonGroup,children:[(0,n.jsx)("form",{style:u.errorStyles.form,children:(0,n.jsx)("button",{type:"submit",style:u.errorStyles.button,children:"Reload"})}),!r&&(0,n.jsx)("button",{type:"button",style:u.errorStyles.buttonSecondary,onClick:()=>{window.history.length>1?window.history.back():window.location.href="/"},children:"Back"})]})]})}),t&&(0,n.jsxs)("p",{style:u.errorStyles.digestFooter,children:["ERROR ",t]})]})]})};("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,91915,(e,t,r)=>{"use strict";function n(e,t={}){if(t.onlyHashChange)return void e();let r=document.documentElement;if("smooth"!==r.dataset.scrollBehavior)return void e();let a=r.style.scrollBehavior;r.style.scrollBehavior="auto",t.dontForceLayout||r.getClientRects(),e(),r.style.scrollBehavior=a}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"disableSmoothScrollDuringRouteTransition",{enumerable:!0,get:function(){return n}}),e.r(33525)},68017,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"HTTPAccessFallbackBoundary",{enumerable:!0,get:function(){return u}});let n=e.r(90809),a=e.r(43476),o=n._(e.r(71645)),i=e.r(90373),s=e.r(54394);e.r(33525);let l=e.r(8372);class c extends o.default.Component{constructor(e){super(e),this.state={triggeredStatus:void 0,previousPathname:e.pathname}}componentDidCatch(){}static getDerivedStateFromError(e){if((0,s.isHTTPAccessFallbackError)(e))return{triggeredStatus:(0,s.getAccessFallbackHTTPStatus)(e)};throw e}static getDerivedStateFromProps(e,t){return e.pathname!==t.previousPathname&&t.triggeredStatus?{triggeredStatus:void 0,previousPathname:e.pathname}:{triggeredStatus:t.triggeredStatus,previousPathname:e.pathname}}render(){let{notFound:e,forbidden:t,unauthorized:r,children:n}=this.props,{triggeredStatus:o}=this.state,i={[s.HTTPAccessErrorStatus.NOT_FOUND]:e,[s.HTTPAccessErrorStatus.FORBIDDEN]:t,[s.HTTPAccessErrorStatus.UNAUTHORIZED]:r};if(o){let l=o===s.HTTPAccessErrorStatus.NOT_FOUND&&e,c=o===s.HTTPAccessErrorStatus.FORBIDDEN&&t,u=o===s.HTTPAccessErrorStatus.UNAUTHORIZED&&r;return l||c||u?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("meta",{name:"robots",content:"noindex"}),!1,i[o]]}):n}return n}}function u({notFound:e,forbidden:t,unauthorized:r,children:n}){let s=(0,i.useUntrackedPathname)(),d=(0,o.useContext)(l.MissingSlotContext);return e||t||r?(0,a.jsx)(c,{pathname:s,notFound:e,forbidden:t,unauthorized:r,missingSlots:d,children:n}):(0,a.jsx)(a.Fragment,{children:n})}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},28298,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useRouterBFCache",{enumerable:!0,get:function(){return a}});let n=e.r(71645);function a(e,t,r){let[a,o]=(0,n.useState)(()=>({tree:e,cacheNode:t,stateKey:r,next:null}));if(a.tree===e)return a;let i={tree:e,cacheNode:t,stateKey:r,next:null},s=1,l=a,c=i;for(;null!==l&&s<1;){if(l.stateKey===r){c.next=l.next;break}{s++;let e={tree:l.tree,cacheNode:l.cacheNode,stateKey:l.stateKey,next:null};c.next=e,c=e}l=l.next}return o(i),i}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},39756,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={LoadingBoundaryProvider:function(){return j},default:function(){return A}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(55682),i=e.r(90809),s=e.r(43476),l=i._(e.r(71645)),c=o._(e.r(74080)),u=e.r(8372),d=e.r(1244),f=e.r(72383),p=e.r(91915),m=e.r(58442),h=e.r(68017),g=e.r(70725),y=e.r(28298);e.r(74180);let b=e.r(61994),P=e.r(33906),_=e.r(95871),v=c.default.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,E=["bottom","height","left","right","top","width","x","y"];function R(e,t){let r=e.getClientRects();if(0===r.length)return!1;let n=1/0;for(let e=0;e<r.length;e++){let t=r[e];t.top<n&&(n=t.top)}return n>=0&&n<=t}class O extends l.default.Component{componentDidMount(){this.handlePotentialScroll()}componentDidUpdate(){this.handlePotentialScroll()}render(){return this.props.children}constructor(...e){super(...e),this.handlePotentialScroll=()=>{let{focusAndScrollRef:e,cacheNode:t}=this.props,r=e.forceScroll?e.scrollRef:t.scrollRef;if(null===r||!r.current)return;let n=null,a=e.hashFragment;if(a&&(n="top"===a?document.body:document.getElementById(a)??document.getElementsByName(a)[0]),n||(n="u"<typeof window?null:(0,v.findDOMNode)(this)),n instanceof Element){for(;!(n instanceof HTMLElement)||function(e){if(["sticky","fixed"].includes(getComputedStyle(e).position))return!0;let t=e.getBoundingClientRect();return E.every(e=>0===t[e])}(n);){if(null===n.nextElementSibling)return;n=n.nextElementSibling}r.current=!1,(0,p.disableSmoothScrollDuringRouteTransition)(()=>{if(a)return void n.scrollIntoView();let e=document.documentElement,t=e.clientHeight;!R(n,t)&&(e.scrollTop=0,R(n,t)||n.scrollIntoView())},{dontForceLayout:!0,onlyHashChange:e.onlyHashChange}),e.onlyHashChange=!1,e.hashFragment=null,n.focus()}}}}function w({children:e,cacheNode:t}){let r=(0,l.useContext)(u.GlobalLayoutRouterContext);if(!r)throw Object.defineProperty(Error("invariant global layout router not mounted"),"__NEXT_ERROR_CODE",{value:"E473",enumerable:!1,configurable:!0});return(0,s.jsx)(O,{focusAndScrollRef:r.focusAndScrollRef,cacheNode:t,children:e})}function S({tree:e,segmentPath:t,debugNameContext:r,cacheNode:n,params:a,url:o,isActive:i}){let c,f=(0,l.useContext)(u.GlobalLayoutRouterContext);if((0,l.useContext)(b.NavigationPromisesContext),!f)throw Object.defineProperty(Error("invariant global layout router not mounted"),"__NEXT_ERROR_CODE",{value:"E473",enumerable:!1,configurable:!0});let p=null!==n?n:(0,l.use)(d.unresolvedThenable),m=null!==p.prefetchRsc?p.prefetchRsc:p.rsc,h=(0,l.useDeferredValue)(p.rsc,m);if((0,_.isDeferredRsc)(h)){let e=(0,l.use)(h);null===e&&(0,l.use)(d.unresolvedThenable),c=e}else null===h&&(0,l.use)(d.unresolvedThenable),c=h;let g=c;return(0,s.jsx)(u.LayoutRouterContext.Provider,{value:{parentTree:e,parentCacheNode:p,parentSegmentPath:t,parentParams:a,parentLoadingData:null,debugNameContext:r,url:o,isActive:i},children:g})}function j({loading:e,children:t}){let r=(0,l.use)(u.LayoutRouterContext);return null===r?t:(0,s.jsx)(u.LayoutRouterContext.Provider,{value:{parentTree:r.parentTree,parentCacheNode:r.parentCacheNode,parentSegmentPath:r.parentSegmentPath,parentParams:r.parentParams,parentLoadingData:e,debugNameContext:r.debugNameContext,url:r.url,isActive:r.isActive},children:t})}function C({name:e,loading:t,children:r}){if(null!==t){let n=t[0],a=t[1],o=t[2];return(0,s.jsx)(l.Suspense,{name:e,fallback:(0,s.jsxs)(s.Fragment,{children:[a,o,n]}),children:r})}return(0,s.jsx)(s.Fragment,{children:r})}function A({parallelRouterKey:e,error:t,errorStyles:r,errorScripts:n,templateStyles:a,templateScripts:o,template:i,notFound:c,forbidden:p,unauthorized:b,segmentViewBoundaries:_}){let v=(0,l.useContext)(u.LayoutRouterContext);if(!v)throw Object.defineProperty(Error("invariant expected layout router to be mounted"),"__NEXT_ERROR_CODE",{value:"E56",enumerable:!1,configurable:!0});let{parentTree:E,parentCacheNode:R,parentSegmentPath:O,parentParams:j,parentLoadingData:x,url:k,isActive:T,debugNameContext:N}=v,D=E[0],M=null===O?[e]:O.concat([D,e]),I=E[1][e],F=R.slots;(void 0===I||null===F)&&(0,l.use)(d.unresolvedThenable);let $=I[0],L=F[e]??null,U=(0,g.createRouterCacheKey)($,!0),X=(0,y.useRouterBFCache)(I,L,U),H=[];do{let e=X.tree,l=X.cacheNode,d=X.stateKey,g=e[0],y=j;if(Array.isArray(g)){let e=g[0],t=g[1],r=g[2],n=(0,P.getParamValueFromCacheKey)(t,r);null!==n&&(y={...j,[e]:n})}let _=function(e){if("/"===e)return"/";if("string"==typeof e)if("(__SLOT__)"===e)return;else return e+"/";return e[1]+"/"}(g),v=_??N,E=void 0===_?void 0:N,R=(0,s.jsxs)(w,{cacheNode:l,children:[(0,s.jsx)(f.ErrorBoundary,{errorComponent:t,errorStyles:r,errorScripts:n,children:(0,s.jsx)(C,{name:E,loading:x,children:(0,s.jsx)(h.HTTPAccessFallbackBoundary,{notFound:c,forbidden:p,unauthorized:b,children:(0,s.jsxs)(m.RedirectBoundary,{children:[(0,s.jsx)(S,{url:k,tree:e,params:y,cacheNode:l,segmentPath:M,debugNameContext:v,isActive:T&&d===U}),null]})})})}),null]}),O=(0,s.jsxs)(u.TemplateContext.Provider,{value:R,children:[a,o,i]},d);H.push(O),X=X.next}while(null!==X)return H}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},37457,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return s}});let n=e.r(90809),a=e.r(43476),o=n._(e.r(71645)),i=e.r(8372);function s(){let e=(0,o.useContext)(i.TemplateContext);return(0,a.jsx)(a.Fragment,{children:e})}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},93504,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"createRenderSearchParamsFromClient",{enumerable:!0,get:function(){return a}});let n=new WeakMap;function a(e){let t=n.get(e);if(t)return t;let r=Promise.resolve(e);return n.set(e,r),r}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},66996,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"createRenderSearchParamsFromClient",{enumerable:!0,get:function(){return n}});let n=e.r(93504).createRenderSearchParamsFromClient;("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},6831,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"createRenderParamsFromClient",{enumerable:!0,get:function(){return a}});let n=new WeakMap;function a(e){let t=n.get(e);if(t)return t;let r=Promise.resolve(e);return n.set(e,r),r}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},97689,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"createRenderParamsFromClient",{enumerable:!0,get:function(){return n}});let n=e.r(6831).createRenderParamsFromClient;("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},66373,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={accumulateRootVaryParam:function(){return y},accumulateVaryParam:function(){return g},createResponseVaryParamsAccumulator:function(){return c},createVaryParamsAccumulator:function(){return u},createVaryingParams:function(){return b},createVaryingSearchParams:function(){return P},emptyVaryParamsAccumulator:function(){return l},finishAccumulatingVaryParams:function(){return _},getMetadataVaryParamsAccumulator:function(){return d},getMetadataVaryParamsThenable:function(){return p},getRootParamsVaryParamsAccumulator:function(){return h},getVaryParamsThenable:function(){return f},getViewportVaryParamsAccumulator:function(){return m}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(62141);function i(){let e={varyParams:new Set,status:"pending",value:new Set,then(t){t&&("pending"===e.status?e.resolvers.push(t):t(e.value))},resolvers:[]};return e}let s=new Set,l={varyParams:s,status:"fulfilled",value:s,then(e){e&&e(s)},resolvers:[]};function c(){let e=i();return{head:e,rootParams:i(),segments:new Set}}function u(){let e=o.workUnitAsyncStorage.getStore();if(e)switch(e.type){case"prerender":case"prerender-runtime":{let t=e.varyParamsAccumulator;if(null!==t){let e=i();return t.segments.add(e),e}}}return null}function d(){let e=o.workUnitAsyncStorage.getStore();if(e)switch(e.type){case"prerender":case"prerender-runtime":{let t=e.varyParamsAccumulator;if(null!==t)return t.head}}return null}function f(e){return e}function p(){let e=d();return null!==e?e:null}let m=d;function h(){let e=o.workUnitAsyncStorage.getStore();if(e)switch(e.type){case"prerender":case"prerender-runtime":{let t=e.varyParamsAccumulator;if(null!==t)return t.rootParams}}return null}function g(e,t){e.varyParams.add(t)}function y(e){let t=h();null!==t&&g(t,e)}function b(e,t,r){if(null!==r)return new Proxy(t,{get:(t,n,a)=>("string"==typeof n&&(n===r||Object.prototype.hasOwnProperty.call(t,n))&&g(e,n),Reflect.get(t,n,a)),has:(t,n)=>(n===r&&g(e,r),Reflect.has(t,n)),ownKeys:t=>(g(e,r),Reflect.ownKeys(t))});let n={};for(let r in t)Object.defineProperty(n,r,{get:()=>(g(e,r),t[r]),enumerable:!0});return n}function P(e,t){let r={};for(let n in t)Object.defineProperty(r,n,{get:()=>(g(e,"?"),t[n]),enumerable:!0});return r}async function _(e){let t=e.rootParams.varyParams;for(let r of(v(e.head,t),e.segments))v(r,t);await Promise.resolve(),await Promise.resolve(),await Promise.resolve()}function v(e,t){if("pending"!==e.status)return;let r=new Set(e.varyParams);for(let e of t)r.add(e);for(let t of(e.value=r,e.status="fulfilled",e.resolvers))t(r);e.resolvers=[]}},42715,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"ReflectAdapter",{enumerable:!0,get:function(){return n}});class n{static get(e,t,r){let n=Reflect.get(e,t,r);return"function"==typeof n?n.bind(e):n}static set(e,t,r,n){return Reflect.set(e,t,r,n)}static has(e,t){return Reflect.has(e,t)}static deleteProperty(e,t){return Reflect.deleteProperty(e,t)}}},76361,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"createDedupedByCallsiteServerErrorLoggerDev",{enumerable:!0,get:function(){return l}});let n=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var t=a(void 0);if(t&&t.has(e))return t.get(e);var r={__proto__:null},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var i=n?Object.getOwnPropertyDescriptor(e,o):null;i&&(i.get||i.set)?Object.defineProperty(r,o,i):r[o]=e[o]}return r.default=e,t&&t.set(e,r),r}(e.r(71645));function a(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,r=new WeakMap;return(a=function(e){return e?r:t})(e)}let o={current:null},i="function"==typeof n.cache?n.cache:e=>e,s=console.warn;function l(e){return function(...t){s(e(...t))}}i(e=>{try{s(o.current)}finally{o.current=null}})},65932,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={describeHasCheckingStringProperty:function(){return s},describeStringPropertyAccess:function(){return i},wellKnownProperties:function(){return l}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=/^[A-Za-z_$][A-Za-z0-9_$]*$/;function i(e,t){return o.test(t)?`\`${e}.${t}\``:`\`${e}[${JSON.stringify(t)}]\``}function s(e,t){let r=JSON.stringify(t);return`\`Reflect.has(${e}, ${r})\`, \`${r} in ${e}\`, or similar`}let l=new Set(["hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toString","valueOf","toLocaleString","then","catch","finally","status","displayName","_debugInfo","toJSON","$$typeof","__esModule","@@iterator"])},83066,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"afterTaskAsyncStorageInstance",{enumerable:!0,get:function(){return n}});let n=(0,e.r(90317).createAsyncLocalStorage)()},41643,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"afterTaskAsyncStorage",{enumerable:!0,get:function(){return n.afterTaskAsyncStorageInstance}});let n=e.r(83066)},50999,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={isRequestAPICallableInsideAfter:function(){return c},throwForSearchParamsAccessInUseCache:function(){return l},throwWithStaticGenerationBailoutErrorWithDynamicError:function(){return s}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(43248),i=e.r(41643);function s(e,t){throw Object.defineProperty(new o.StaticGenBailoutError(`Route ${e} with \`dynamic = "error"\` couldn't be rendered statically because it used ${t}. See more info here: https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic#dynamic-rendering`),"__NEXT_ERROR_CODE",{value:"E543",enumerable:!1,configurable:!0})}function l(e,t){let r=Object.defineProperty(Error(`Route ${e.route} used \`searchParams\` inside "use cache". Accessing dynamic request data inside a cache scope is not supported. If you need some search params inside a cached function await \`searchParams\` outside of the cached function and pass only the required search params as arguments to the cached function. See more info here: https://nextjs.org/docs/messages/next-request-in-use-cache`),"__NEXT_ERROR_CODE",{value:"E842",enumerable:!1,configurable:!0});throw Error.captureStackTrace(r,t),e.invalidDynamicUsageError??=r,r}function c(){let e=i.afterTaskAsyncStorage.getStore();return(null==e?void 0:e.rootTaskSpawnPhase)==="action"}},28649,(e,t,r)=>{"use strict";var n=Object.defineProperty,a=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,i=Object.prototype.hasOwnProperty,s={},l={RequestCookies:()=>h,ResponseCookies:()=>g,parseCookie:()=>d,parseSetCookie:()=>f,stringifyCookie:()=>u};for(var c in l)n(s,c,{get:l[c],enumerable:!0});function u(e){var t;let r=["path"in e&&e.path&&`Path=${e.path}`,"expires"in e&&(e.expires||0===e.expires)&&`Expires=${("number"==typeof e.expires?new Date(e.expires):e.expires).toUTCString()}`,"maxAge"in e&&"number"==typeof e.maxAge&&`Max-Age=${e.maxAge}`,"domain"in e&&e.domain&&`Domain=${e.domain}`,"secure"in e&&e.secure&&"Secure","httpOnly"in e&&e.httpOnly&&"HttpOnly","sameSite"in e&&e.sameSite&&`SameSite=${e.sameSite}`,"partitioned"in e&&e.partitioned&&"Partitioned","priority"in e&&e.priority&&`Priority=${e.priority}`].filter(Boolean),n=`${e.name}=${encodeURIComponent(null!=(t=e.value)?t:"")}`;return 0===r.length?n:`${n}; ${r.join("; ")}`}function d(e){let t=new Map;for(let r of e.split(/; */)){if(!r)continue;let e=r.indexOf("=");if(-1===e){t.set(r,"true");continue}let[n,a]=[r.slice(0,e),r.slice(e+1)];try{t.set(n,decodeURIComponent(null!=a?a:"true"))}catch{}}return t}function f(e){if(!e)return;let[[t,r],...n]=d(e),{domain:a,expires:o,httponly:i,maxage:s,path:l,samesite:c,secure:u,partitioned:f,priority:h}=Object.fromEntries(n.map(([e,t])=>[e.toLowerCase().replace(/-/g,""),t]));{var g,y,b={name:t,value:decodeURIComponent(r),domain:a,...o&&{expires:new Date(o)},...i&&{httpOnly:!0},..."string"==typeof s&&{maxAge:Number(s)},path:l,...c&&{sameSite:p.includes(g=(g=c).toLowerCase())?g:void 0},...u&&{secure:!0},...h&&{priority:m.includes(y=(y=h).toLowerCase())?y:void 0},...f&&{partitioned:!0}};let e={};for(let t in b)b[t]&&(e[t]=b[t]);return e}}t.exports=((e,t,r)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let s of o(t))i.call(e,s)||void 0===s||n(e,s,{get:()=>t[s],enumerable:!(r=a(t,s))||r.enumerable});return e})(n({},"__esModule",{value:!0}),s);var p=["strict","lax","none"],m=["low","medium","high"],h=class{constructor(e){this._parsed=new Map,this._headers=e;const t=e.get("cookie");if(t)for(const[e,r]of d(t))this._parsed.set(e,{name:e,value:r})}[Symbol.iterator](){return this._parsed[Symbol.iterator]()}get size(){return this._parsed.size}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let r=Array.from(this._parsed);if(!e.length)return r.map(([e,t])=>t);let n="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return r.filter(([e])=>e===n).map(([e,t])=>t)}has(e){return this._parsed.has(e)}set(...e){let[t,r]=1===e.length?[e[0].name,e[0].value]:e,n=this._parsed;return n.set(t,{name:t,value:r}),this._headers.set("cookie",Array.from(n).map(([e,t])=>u(t)).join("; ")),this}delete(e){let t=this._parsed,r=Array.isArray(e)?e.map(e=>t.delete(e)):t.delete(e);return this._headers.set("cookie",Array.from(t).map(([e,t])=>u(t)).join("; ")),r}clear(){return this.delete(Array.from(this._parsed.keys())),this}[Symbol.for("edge-runtime.inspect.custom")](){return`RequestCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(e=>`${e.name}=${encodeURIComponent(e.value)}`).join("; ")}},g=class{constructor(e){var t,r,n;this._parsed=new Map,this._headers=e;const a=null!=(n=null!=(r=null==(t=e.getSetCookie)?void 0:t.call(e))?r:e.get("set-cookie"))?n:[];for(const e of Array.isArray(a)?a:function(e){if(!e)return[];var t,r,n,a,o,i=[],s=0;function l(){for(;s<e.length&&/\s/.test(e.charAt(s));)s+=1;return s<e.length}for(;s<e.length;){for(t=s,o=!1;l();)if(","===(r=e.charAt(s))){for(n=s,s+=1,l(),a=s;s<e.length&&"="!==(r=e.charAt(s))&&";"!==r&&","!==r;)s+=1;s<e.length&&"="===e.charAt(s)?(o=!0,s=a,i.push(e.substring(t,n)),t=s):s=n+1}else s+=1;(!o||s>=e.length)&&i.push(e.substring(t,e.length))}return i}(a)){const t=f(e);t&&this._parsed.set(t.name,t)}}get(...e){let t="string"==typeof e[0]?e[0]:e[0].name;return this._parsed.get(t)}getAll(...e){var t;let r=Array.from(this._parsed.values());if(!e.length)return r;let n="string"==typeof e[0]?e[0]:null==(t=e[0])?void 0:t.name;return r.filter(e=>e.name===n)}has(e){return this._parsed.has(e)}set(...e){let[t,r,n]=1===e.length?[e[0].name,e[0].value,e[0]]:e,a=this._parsed;return a.set(t,function(e={name:"",value:""}){return"number"==typeof e.expires&&(e.expires=new Date(e.expires)),e.maxAge&&(e.expires=new Date(Date.now()+1e3*e.maxAge)),(null===e.path||void 0===e.path)&&(e.path="/"),e}({name:t,value:r,...n})),function(e,t){for(let[,r]of(t.delete("set-cookie"),e)){let e=u(r);t.append("set-cookie",e)}}(a,this._headers),this}delete(...e){let[t,r]="string"==typeof e[0]?[e[0]]:[e[0].name,e[0]];return this.set({...r,name:t,value:"",expires:new Date(0)})}[Symbol.for("edge-runtime.inspect.custom")](){return`ResponseCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`}toString(){return[...this._parsed.values()].map(u).join("; ")}}},96883,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={RequestCookies:function(){return o.RequestCookies},ResponseCookies:function(){return o.ResponseCookies},stringifyCookie:function(){return o.stringifyCookie}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(28649)},97270,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={MutableRequestCookiesAdapter:function(){return m},ReadonlyRequestCookiesError:function(){return c},RequestCookiesAdapter:function(){return u},appendMutableCookies:function(){return p},areCookiesMutableInCurrentPhase:function(){return g},createCookiesWithMutableAccessCheck:function(){return h},getModifiedCookieValues:function(){return f},responseCookiesToRequestCookies:function(){return b}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(96883),i=e.r(42715),s=e.r(63599),l=e.r(39146);class c extends Error{constructor(){super("Cookies can only be modified in a Server Action or Route Handler. Read more: https://nextjs.org/docs/app/api-reference/functions/cookies#options")}static callable(){throw new c}}class u{static seal(e){return new Proxy(e,{get(e,t,r){switch(t){case"clear":case"delete":case"set":return c.callable;default:return i.ReflectAdapter.get(e,t,r)}}})}}let d=Symbol.for("next.mutated.cookies");function f(e){let t=e[d];return t&&Array.isArray(t)&&0!==t.length?t:[]}function p(e,t){let r=f(t);if(0===r.length)return!1;let n=new o.ResponseCookies(e),a=n.getAll();for(let e of r)n.set(e);for(let e of a)n.set(e);return!0}class m{static wrap(e,t){let r=new o.ResponseCookies(new Headers);for(let t of e.getAll())r.set(t);let n=[],a=new Set,c=()=>{let e=s.workAsyncStorage.getStore();if(e&&(e.pathWasRevalidated=l.ActionDidRevalidateStaticAndDynamic),n=r.getAll().filter(e=>a.has(e.name)),t){let e=[];for(let t of n){let r=new o.ResponseCookies(new Headers);r.set(t),e.push(r.toString())}t(e)}},u=new Proxy(r,{get(e,t,r){switch(t){case d:return n;case"delete":return function(...t){a.add("string"==typeof t[0]?t[0]:t[0].name);try{return e.delete(...t),u}finally{c()}};case"set":return function(...t){a.add("string"==typeof t[0]?t[0]:t[0].name);try{return e.set(...t),u}finally{c()}};default:return i.ReflectAdapter.get(e,t,r)}}});return u}}function h(e){let t=new Proxy(e.mutableCookies,{get(r,n,a){switch(n){case"delete":return function(...n){return y(e,"cookies().delete"),r.delete(...n),t};case"set":return function(...n){return y(e,"cookies().set"),r.set(...n),t};default:return i.ReflectAdapter.get(r,n,a)}}});return t}function g(e){return"action"===e.phase}function y(e,t){if(!g(e))throw new c}function b(e){let t=new o.RequestCookies(new Headers);for(let r of e.getAll())t.set(r);return t}},87720,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={HeadersAdapter:function(){return s},ReadonlyHeadersError:function(){return i}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(42715);class i extends Error{constructor(){super("Headers cannot be modified. Read more: https://nextjs.org/docs/app/api-reference/functions/headers")}static callable(){throw new i}}class s extends Headers{constructor(e){super(),this.headers=new Proxy(e,{get(t,r,n){if("symbol"==typeof r)return o.ReflectAdapter.get(t,r,n);let a=r.toLowerCase(),i=Object.keys(e).find(e=>e.toLowerCase()===a);if(void 0!==i)return o.ReflectAdapter.get(t,i,n)},set(t,r,n,a){if("symbol"==typeof r)return o.ReflectAdapter.set(t,r,n,a);let i=r.toLowerCase(),s=Object.keys(e).find(e=>e.toLowerCase()===i);return o.ReflectAdapter.set(t,s??r,n,a)},has(t,r){if("symbol"==typeof r)return o.ReflectAdapter.has(t,r);let n=r.toLowerCase(),a=Object.keys(e).find(e=>e.toLowerCase()===n);return void 0!==a&&o.ReflectAdapter.has(t,a)},deleteProperty(t,r){if("symbol"==typeof r)return o.ReflectAdapter.deleteProperty(t,r);let n=r.toLowerCase(),a=Object.keys(e).find(e=>e.toLowerCase()===n);return void 0===a||o.ReflectAdapter.deleteProperty(t,a)}})}static seal(e){return new Proxy(e,{get(e,t,r){switch(t){case"append":case"delete":case"set":return i.callable;default:return o.ReflectAdapter.get(e,t,r)}}})}merge(e){return Array.isArray(e)?e.join(", "):e}static from(e){return e instanceof Headers?e:new s(e)}append(e,t){let r=this.headers[e];"string"==typeof r?this.headers[e]=[r,t]:Array.isArray(r)?r.push(t):this.headers[e]=t}delete(e){delete this.headers[e]}get(e){let t=this.headers[e];return void 0!==t?this.merge(t):null}has(e){return void 0!==this.headers[e]}set(e,t){this.headers[e]=t}forEach(e,t){for(let[r,n]of this.entries())e.call(t,n,r,this)}*entries(){for(let e of Object.keys(this.headers)){let t=e.toLowerCase(),r=this.get(t);yield[t,r]}}*keys(){for(let e of Object.keys(this.headers)){let t=e.toLowerCase();yield t}}*values(){for(let e of Object.keys(this.headers)){let t=this.get(e);yield t}}[Symbol.iterator](){return this.entries()}}},1643,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={getParamProperties:function(){return l},getSegmentParam:function(){return i},isCatchAll:function(){return s}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(91463);function i(e){let t=o.INTERCEPTION_ROUTE_MARKERS.find(t=>e.startsWith(t));return(t&&(e=e.slice(t.length)),e.startsWith("[[...")&&e.endsWith("]]"))?{paramType:"optional-catchall",paramName:e.slice(5,-2)}:e.startsWith("[...")&&e.endsWith("]")?{paramType:t?`catchall-intercepted-${t}`:"catchall",paramName:e.slice(4,-1)}:e.startsWith("[")&&e.endsWith("]")?{paramType:t?`dynamic-intercepted-${t}`:"dynamic",paramName:e.slice(1,-1)}:null}function s(e){return"catchall"===e||"catchall-intercepted-(..)(..)"===e||"catchall-intercepted-(.)"===e||"catchall-intercepted-(..)"===e||"catchall-intercepted-(...)"===e||"optional-catchall"===e}function l(e){let t=!1,r=!1;switch(e){case"catchall":case"catchall-intercepted-(..)(..)":case"catchall-intercepted-(.)":case"catchall-intercepted-(..)":case"catchall-intercepted-(...)":t=!0;break;case"optional-catchall":t=!0,r=!0}return{repeat:t,optional:r}}},90929,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"parseRelativeUrl",{enumerable:!0,get:function(){return o}});let n=e.r(18967),a=e.r(98183);function o(e,t,r=!0){let i=new URL("u"<typeof window?"http://n":(0,n.getLocationOrigin)()),s=t?new URL(t,i):e.startsWith(".")?new URL("u"<typeof window?"http://n":window.location.href):i,{pathname:l,searchParams:c,search:u,hash:d,href:f,origin:p}=e.startsWith("/")?new URL(`${s.protocol}//${s.host}${e}`):new URL(e,s);if(p!==i.origin)throw Object.defineProperty(Error(`invariant: invalid relative URL, router received ${e}`),"__NEXT_ERROR_CODE",{value:"E159",enumerable:!1,configurable:!0});return{auth:null,host:null,hostname:null,pathname:l,port:null,protocol:null,query:r?(0,a.searchParamsToUrlQuery)(c):void 0,search:u,hash:d,href:f.slice(p.length),slashes:null}}},13770,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={InstantValidationError:function(){return s},isInstantValidationError:function(){return i}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o="INSTANT_VALIDATION_ERROR";function i(e){return!!(e&&"object"==typeof e&&e instanceof Error&&e.digest===o)}class s extends Error{constructor(...e){super(...e),this.digest=o}}},18450,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={assertRootParamInSamples:function(){return S},createCookiesFromSample:function(){return y},createDraftModeForValidation:function(){return _},createExhaustiveParamsProxy:function(){return v},createExhaustiveSearchParamsProxy:function(){return E},createExhaustiveURLSearchParamsProxy:function(){return R},createHeadersFromSample:function(){return P},createRelativeURLFromSamples:function(){return w},createValidationSampleTracking:function(){return m},trackMissingSampleError:function(){return h},trackMissingSampleErrorAndThrow:function(){return g}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(96883),i=e.r(97270),s=e.r(87720),l=e.r(1643),c=e.r(90929),u=e.r(12718),d=e.r(13770),f=e.r(62141),p=e.r(65932);function m(){return{missingSampleErrors:[]}}function h(e){(function(){let e=null,t=f.workUnitAsyncStorage.getStore();if(t)switch(t.type){case"request":case"validation-client":e=t.validationSampleTracking??null}if(!e)throw Object.defineProperty(new u.InvariantError("Expected to have a workUnitStore that provides validationSampleTracking"),"__NEXT_ERROR_CODE",{value:"E1110",enumerable:!1,configurable:!0});return e})().missingSampleErrors.push(e)}function g(e){throw h(e),e}function y(e,t){let r=new Set,n=new o.RequestCookies(new Headers);if(e)for(let t of e)r.add(t.name),null!==t.value&&n.set(t.name,t.value);return new Proxy(i.RequestCookiesAdapter.seal(n),{get(e,n,a){if("has"===n){let o=Reflect.get(e,n,a);return function(n){return r.has(n)||g(b(t,n)),o.call(e,n)}}if("get"===n){let o=Reflect.get(e,n,a);return function(n){let a;if("string"==typeof n)a=n;else{if(!n||"object"!=typeof n||"string"!=typeof n.name)return o.call(e,n);a=n.name}return r.has(a)||g(b(t,a)),o.call(e,a)}}return Reflect.get(e,n,a)}})}function b(e,t){return Object.defineProperty(new d.InstantValidationError(`Route "${e}" accessed cookie "${t}" which is not defined in the \`samples\` of \`unstable_instant\`. Add it to the sample's \`cookies\` array, or \`{ name: "${t}", value: null }\` if it should be absent.`),"__NEXT_ERROR_CODE",{value:"E1115",enumerable:!1,configurable:!0})}function P(e,t,r){let n=e?[...e]:[];if(n.find(([e])=>"cookie"===e.toLowerCase()))throw Object.defineProperty(new d.InstantValidationError('Invalid sample: Defining cookies via a "cookie" header is not supported. Use `cookies: [{ name: ..., value: ... }]` instead.'),"__NEXT_ERROR_CODE",{value:"E1111",enumerable:!1,configurable:!0});if(t){let e=t.toString();n.push(["cookie",""!==e?e:null])}let a=new Set,o={};for(let[e,t]of n)a.add(e.toLowerCase()),null!==t&&(o[e.toLowerCase()]=t);return new Proxy(s.HeadersAdapter.seal(s.HeadersAdapter.from(o)),{get(e,t,n){if("get"===t||"has"===t){let o=Reflect.get(e,t,n);return function(t){let n=t.toLowerCase();return a.has(n)||g(Object.defineProperty(new d.InstantValidationError(`Route "${r}" accessed header "${n}" which is not defined in the \`samples\` of \`unstable_instant\`. Add it to the sample's \`headers\` array, or \`["${n}", null]\` if it should be absent.`),"__NEXT_ERROR_CODE",{value:"E1116",enumerable:!1,configurable:!0})),o.call(e,n)}}return Reflect.get(e,t,n)}})}function _(){return{get isEnabled(){return!1},enable(){throw Object.defineProperty(Error("Draft mode cannot be enabled during build-time instant validation."),"__NEXT_ERROR_CODE",{value:"E1092",enumerable:!1,configurable:!0})},disable(){throw Object.defineProperty(Error("Draft mode cannot be disabled during build-time instant validation."),"__NEXT_ERROR_CODE",{value:"E1094",enumerable:!1,configurable:!0})}}}function v(e,t,r){return new Proxy(e,{get:(n,a,o)=>("string"==typeof a&&!p.wellKnownProperties.has(a)&&a in e&&!t.has(a)&&g(Object.defineProperty(new d.InstantValidationError(`Route "${r}" accessed param "${a}" which is not defined in the \`samples\` of \`unstable_instant\`. Add it to the sample's \`params\` object.`),"__NEXT_ERROR_CODE",{value:"E1095",enumerable:!1,configurable:!0})),Reflect.get(n,a,o))})}function E(e,t,r){return new Proxy(e,{get:(e,n,a)=>("string"!=typeof n||p.wellKnownProperties.has(n)||t.has(n)||g(O(r,n)),Reflect.get(e,n,a)),has:(e,n)=>("string"!=typeof n||p.wellKnownProperties.has(n)||t.has(n)||g(O(r,n)),Reflect.has(e,n))})}function R(e,t,r){return new Proxy(e,{get(e,n,a){if("get"===n||"getAll"===n||"has"===n){let o=Reflect.get(e,n,a);return n=>("string"!=typeof n||t.has(n)||g(O(r,n)),o.call(e,n))}let o=Reflect.get(e,n,a);return"function"!=typeof o||Object.hasOwn(e,n)?o:o.bind(e)}})}function O(e,t){return Object.defineProperty(new d.InstantValidationError(`Route "${e}" accessed searchParam "${t}" which is not defined in the \`samples\` of \`unstable_instant\`. Add it to the sample's \`searchParams\` object, or \`{ "${t}": null }\` if it should be absent.`),"__NEXT_ERROR_CODE",{value:"E1098",enumerable:!1,configurable:!0})}function w(e,t,r){let n=function(e,t){let r=[];for(let n of e.split("/")){let e=(0,l.getSegmentParam)(n);if(e)switch(e.paramType){case"catchall":case"optional-catchall":{let a=t[e.paramName];if(void 0===a)a=[n];else if(!Array.isArray(a))throw Object.defineProperty(new d.InstantValidationError(`Expected sample param value for segment '${n}' to be an array of strings, got ${typeof a}`),"__NEXT_ERROR_CODE",{value:"E1104",enumerable:!1,configurable:!0});r.push(...a.map(e=>encodeURIComponent(e)));break}case"dynamic":{let a=t[e.paramName];if(void 0===a)a=n;else if("string"!=typeof a)throw Object.defineProperty(new d.InstantValidationError(`Expected sample param value for segment '${n}' to be a string, got ${typeof a}`),"__NEXT_ERROR_CODE",{value:"E1108",enumerable:!1,configurable:!0});r.push(encodeURIComponent(a));break}case"catchall-intercepted-(..)(..)":case"catchall-intercepted-(.)":case"catchall-intercepted-(..)":case"catchall-intercepted-(...)":case"dynamic-intercepted-(..)(..)":case"dynamic-intercepted-(.)":case"dynamic-intercepted-(..)":case"dynamic-intercepted-(...)":throw Object.defineProperty(new u.InvariantError("Not implemented: Validation of interception routes"),"__NEXT_ERROR_CODE",{value:"E1106",enumerable:!1,configurable:!0});default:e.paramType}else r.push(n)}return r.join("/")}(e,t??{}),a="";if(r){let e=(function(e){let t=new URLSearchParams;if(e){for(let[r,n]of Object.entries(e))if(null!=n)if(Array.isArray(n))for(let e of n)t.append(r,e);else t.set(r,n)}return t})(r).toString();e&&(a="?"+e)}return(0,c.parseRelativeUrl)(n+a,void 0,!0)}function S(e,t,r){if(t&&r in t);else{let t=e.route;g(Object.defineProperty(new d.InstantValidationError(`Route "${t}" accessed root param "${r}" which is not defined in the \`samples\` of \`unstable_instant\`. Add it to the sample's \`params\` object.`),"__NEXT_ERROR_CODE",{value:"E1114",enumerable:!1,configurable:!0}))}}},69882,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={createPrerenderSearchParamsForClientPage:function(){return P},createSearchParamsFromClient:function(){return g},createServerSearchParamsForMetadata:function(){return y},createServerSearchParamsForServerPage:function(){return b},makeErroringSearchParamsForUseCache:function(){return O}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(63599),i=e.r(66373),s=e.r(42715),l=e.r(67673),c=e.r(62141),u=e.r(12718),d=e.r(63138),f=e.r(76361),p=e.r(65932),m=e.r(50999),h=e.r(42852);function g(t){let r=o.workAsyncStorage.getStore();if(!r)throw Object.defineProperty(new u.InvariantError("Expected workStore to be initialized"),"__NEXT_ERROR_CODE",{value:"E1068",enumerable:!1,configurable:!0});let n=c.workUnitAsyncStorage.getStore();if(n)switch(n.type){case"prerender":case"prerender-client":case"prerender-ppr":case"prerender-legacy":return _(r,n);case"validation-client":return function(t,r,n){var a;let{createExhaustiveSearchParamsProxy:o}=e.r(18450);return Promise.resolve(t=o(t,new Set(Object.keys((null==(a=n.validationSamples)?void 0:a.searchParams)??{})),r.route))}(t,r,n);case"prerender-runtime":throw Object.defineProperty(new u.InvariantError("createSearchParamsFromClient should not be called in a runtime prerender."),"__NEXT_ERROR_CODE",{value:"E769",enumerable:!1,configurable:!0});case"cache":case"private-cache":case"unstable-cache":throw Object.defineProperty(new u.InvariantError("createSearchParamsFromClient should not be called in cache contexts."),"__NEXT_ERROR_CODE",{value:"E739",enumerable:!1,configurable:!0});case"generate-static-params":throw Object.defineProperty(new u.InvariantError("createSearchParamsFromClient should not be called inside generateStaticParams."),"__NEXT_ERROR_CODE",{value:"E1133",enumerable:!1,configurable:!0});case"request":return v(t,r,n,!1)}(0,c.throwInvariantForMissingStore)()}function y(e,t){return b(e,(0,i.getMetadataVaryParamsAccumulator)(),t)}function b(e,t,r){let n=o.workAsyncStorage.getStore();if(!n)throw Object.defineProperty(new u.InvariantError("Expected workStore to be initialized"),"__NEXT_ERROR_CODE",{value:"E1068",enumerable:!1,configurable:!0});let a=c.workUnitAsyncStorage.getStore();if(a)switch(a.type){case"prerender":case"prerender-client":case"prerender-ppr":case"prerender-legacy":return _(n,a);case"validation-client":throw Object.defineProperty(new u.InvariantError("createServerSearchParamsForServerPage should not be called in a client validation."),"__NEXT_ERROR_CODE",{value:"E1066",enumerable:!1,configurable:!0});case"cache":case"private-cache":case"unstable-cache":throw Object.defineProperty(new u.InvariantError("createServerSearchParamsForServerPage should not be called in cache contexts."),"__NEXT_ERROR_CODE",{value:"E747",enumerable:!1,configurable:!0});case"generate-static-params":throw Object.defineProperty(new u.InvariantError("createServerSearchParamsForServerPage should not be called inside generateStaticParams."),"__NEXT_ERROR_CODE",{value:"E1128",enumerable:!1,configurable:!0});case"prerender-runtime":return function(e,t,r,n){let a=w(null!==r?(0,i.createVaryingSearchParams)(r,e):e),{stagedRendering:o}=t;if(!o)return a;let s=n?h.RenderStage.EarlyRuntime:h.RenderStage.Runtime;return o.waitForStage(s).then(()=>a)}(e,a,t,r);case"request":return v(e,n,a,r)}(0,c.throwInvariantForMissingStore)()}function P(){let e=o.workAsyncStorage.getStore();if(!e)throw Object.defineProperty(new u.InvariantError("Expected workStore to be initialized"),"__NEXT_ERROR_CODE",{value:"E1068",enumerable:!1,configurable:!0});if(e.forceStatic)return Promise.resolve({});let t=c.workUnitAsyncStorage.getStore();if(t)switch(t.type){case"prerender":case"prerender-client":return(0,d.makeHangingPromise)(t.renderSignal,e.route,"`searchParams`");case"validation-client":throw Object.defineProperty(new u.InvariantError("createPrerenderSearchParamsForClientPage should not be called in a client validation."),"__NEXT_ERROR_CODE",{value:"E1061",enumerable:!1,configurable:!0});case"prerender-runtime":throw Object.defineProperty(new u.InvariantError("createPrerenderSearchParamsForClientPage should not be called in a runtime prerender."),"__NEXT_ERROR_CODE",{value:"E768",enumerable:!1,configurable:!0});case"cache":case"private-cache":case"unstable-cache":throw Object.defineProperty(new u.InvariantError("createPrerenderSearchParamsForClientPage should not be called in cache contexts."),"__NEXT_ERROR_CODE",{value:"E746",enumerable:!1,configurable:!0});case"generate-static-params":throw Object.defineProperty(new u.InvariantError("createPrerenderSearchParamsForClientPage should not be called inside generateStaticParams."),"__NEXT_ERROR_CODE",{value:"E1124",enumerable:!1,configurable:!0});case"prerender-ppr":case"prerender-legacy":case"request":return Promise.resolve({})}(0,c.throwInvariantForMissingStore)()}function _(e,t){if(e.forceStatic)return Promise.resolve({});switch(t.type){case"prerender":case"prerender-client":var r=e,n=t;let a=E.get(n);if(a)return a;let o=(0,d.makeHangingPromise)(n.renderSignal,r.route,"`searchParams`"),i=new Proxy(o,{get(e,t,r){if(Object.hasOwn(o,t))return s.ReflectAdapter.get(e,t,r);switch(t){case"then":return(0,l.annotateDynamicAccess)("`await searchParams`, `searchParams.then`, or similar",n),s.ReflectAdapter.get(e,t,r);case"status":return(0,l.annotateDynamicAccess)("`use(searchParams)`, `searchParams.status`, or similar",n),s.ReflectAdapter.get(e,t,r);default:return s.ReflectAdapter.get(e,t,r)}}});return E.set(n,i),i;case"prerender-ppr":case"prerender-legacy":var c=e,u=t;let f=E.get(c);if(f)return f;let p=Promise.resolve({}),h=new Proxy(p,{get(e,t,r){if(Object.hasOwn(p,t))return s.ReflectAdapter.get(e,t,r);if("string"==typeof t&&"then"===t){let e="`await searchParams`, `searchParams.then`, or similar";c.dynamicShouldError?(0,m.throwWithStaticGenerationBailoutErrorWithDynamicError)(c.route,e):"prerender-ppr"===u.type?(0,l.postponeWithTracking)(c.route,e,u.dynamicTracking):(0,l.throwToInterruptStaticGeneration)(e,c,u)}return s.ReflectAdapter.get(e,t,r)}});return E.set(c,h),h;default:return t}}function v(t,r,n,a){if(r.forceStatic)return Promise.resolve({});if(!n.asyncApiPromises)return w(t);if(n.validationSamples){let{createExhaustiveSearchParamsProxy:a}=e.r(18450),o=new Set(Object.keys(n.validationSamples.searchParams??{}));t=a(t,o,r.route)}return(a?n.asyncApiPromises.earlySharedSearchParamsParent:n.asyncApiPromises.sharedSearchParamsParent).then(()=>t)}let E=new WeakMap,R=new WeakMap;function O(){let e=o.workAsyncStorage.getStore();if(!e)throw Object.defineProperty(new u.InvariantError("Expected workStore to be initialized"),"__NEXT_ERROR_CODE",{value:"E1068",enumerable:!1,configurable:!0});let t=R.get(e);if(t)return t;let r=Promise.resolve({}),n=new Proxy(r,{get:function t(n,a,o){return Object.hasOwn(r,a)||"string"!=typeof a||"then"!==a&&p.wellKnownProperties.has(a)||(0,m.throwForSearchParamsAccessInUseCache)(e,t),s.ReflectAdapter.get(n,a,o)}});return R.set(e,n),n}function w(e){let t=E.get(e);if(t)return t;let r=Promise.resolve(e);return E.set(e,r),r}(0,f.createDedupedByCallsiteServerErrorLoggerDev)(function(e,t){let r=e?`Route "${e}" `:"This route ";return Object.defineProperty(Error(`${r}used ${t}. \`searchParams\` is a Promise and must be unwrapped with \`await\` or \`React.use()\` before accessing its properties. Learn more: https://nextjs.org/docs/messages/sync-dynamic-apis`),"__NEXT_ERROR_CODE",{value:"E848",enumerable:!1,configurable:!0})})},74804,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"dynamicAccessAsyncStorageInstance",{enumerable:!0,get:function(){return n}});let n=(0,e.r(90317).createAsyncLocalStorage)()},88276,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"dynamicAccessAsyncStorage",{enumerable:!0,get:function(){return n.dynamicAccessAsyncStorageInstance}});let n=e.r(74804)},41489,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={createParamsFromClient:function(){return g},createPrerenderParamsForClientSegment:function(){return _},createServerParamsForMetadata:function(){return y},createServerParamsForRoute:function(){return b},createServerParamsForServerSegment:function(){return P}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(63599),i=e.r(66373),s=e.r(42715),l=e.r(67673),c=e.r(62141),u=e.r(12718),d=e.r(65932),f=e.r(63138),p=e.r(76361),m=e.r(88276),h=e.r(42852);function g(e){let t=o.workAsyncStorage.getStore();if(!t)throw Object.defineProperty(new u.InvariantError("Expected workStore to be initialized"),"__NEXT_ERROR_CODE",{value:"E1068",enumerable:!1,configurable:!0});let r=c.workUnitAsyncStorage.getStore();if(r)switch(r.type){case"prerender":case"prerender-client":case"prerender-ppr":case"prerender-legacy":return v(e,null,t,r,null);case"validation-client":return R(e,t,r.validationSamples);case"cache":case"private-cache":case"unstable-cache":throw Object.defineProperty(new u.InvariantError("createParamsFromClient should not be called in cache contexts."),"__NEXT_ERROR_CODE",{value:"E736",enumerable:!1,configurable:!0});case"prerender-runtime":throw Object.defineProperty(new u.InvariantError("createParamsFromClient should not be called in a runtime prerender."),"__NEXT_ERROR_CODE",{value:"E770",enumerable:!1,configurable:!0});case"generate-static-params":throw Object.defineProperty(new u.InvariantError("createParamsFromClient should not be called inside generateStaticParams."),"__NEXT_ERROR_CODE",{value:"E1122",enumerable:!1,configurable:!0});case"request":if(r.validationSamples)return R(e,t,r.validationSamples);return S(e)}(0,c.throwInvariantForMissingStore)()}function y(e,t,r){return P(e,t,(0,i.getMetadataVaryParamsAccumulator)(),r)}function b(e,t=null){let r=o.workAsyncStorage.getStore();if(!r)throw Object.defineProperty(new u.InvariantError("Expected workStore to be initialized"),"__NEXT_ERROR_CODE",{value:"E1068",enumerable:!1,configurable:!0});let n=c.workUnitAsyncStorage.getStore();if(n)switch(n.type){case"prerender":case"prerender-ppr":case"prerender-legacy":return v(e,null,r,n,t);case"prerender-client":case"validation-client":throw Object.defineProperty(new u.InvariantError("createServerParamsForRoute should not be called in client contexts."),"__NEXT_ERROR_CODE",{value:"E1064",enumerable:!1,configurable:!0});case"cache":case"private-cache":case"unstable-cache":throw Object.defineProperty(new u.InvariantError("createServerParamsForRoute should not be called in cache contexts."),"__NEXT_ERROR_CODE",{value:"E738",enumerable:!1,configurable:!0});case"generate-static-params":throw Object.defineProperty(new u.InvariantError("createServerParamsForRoute should not be called inside generateStaticParams."),"__NEXT_ERROR_CODE",{value:"E1131",enumerable:!1,configurable:!0});case"prerender-runtime":return E(e,null,n,t,!1);case"request":return S(e)}(0,c.throwInvariantForMissingStore)()}function P(t,r,n,a){let i=o.workAsyncStorage.getStore();if(!i)throw Object.defineProperty(new u.InvariantError("Expected workStore to be initialized"),"__NEXT_ERROR_CODE",{value:"E1068",enumerable:!1,configurable:!0});let s=c.workUnitAsyncStorage.getStore();if(s)switch(s.type){case"prerender":case"prerender-client":case"prerender-ppr":case"prerender-legacy":return v(t,r,i,s,n);case"validation-client":throw Object.defineProperty(new u.InvariantError("createServerParamsForServerSegment should not be called in client contexts."),"__NEXT_ERROR_CODE",{value:"E1101",enumerable:!1,configurable:!0});case"cache":case"private-cache":case"unstable-cache":throw Object.defineProperty(new u.InvariantError("createServerParamsForServerSegment should not be called in cache contexts."),"__NEXT_ERROR_CODE",{value:"E743",enumerable:!1,configurable:!0});case"generate-static-params":throw Object.defineProperty(new u.InvariantError("createServerParamsForServerSegment should not be called inside generateStaticParams."),"__NEXT_ERROR_CODE",{value:"E1120",enumerable:!1,configurable:!0});case"prerender-runtime":return E(t,r,s,n,a);case"request":if(s.asyncApiPromises&&s.validationSamples)return function(t,r,n,a,o){let{createExhaustiveParamsProxy:i}=e.r(18450),s=i(t,new Set(Object.keys(n.params??{})),r.route);return(o?a.earlySharedParamsParent:a.sharedParamsParent).then(()=>s)}(t,i,s.validationSamples,s.asyncApiPromises,a);if(s.asyncApiPromises&&function(e,t){if(t){for(let r in e)if(t.has(r))return!0}return!1}(t,s.fallbackParams))return(a?s.asyncApiPromises.earlySharedParamsParent:s.asyncApiPromises.sharedParamsParent).then(()=>t);return S(t)}(0,c.throwInvariantForMissingStore)()}function _(e){let t=o.workAsyncStorage.getStore();if(!t)throw Object.defineProperty(new u.InvariantError("Missing workStore in createPrerenderParamsForClientSegment"),"__NEXT_ERROR_CODE",{value:"E773",enumerable:!1,configurable:!0});let r=c.workUnitAsyncStorage.getStore();if(r)switch(r.type){case"prerender":case"prerender-client":let n=r.fallbackRouteParams;if(n){for(let a in e)if(n.has(a))return(0,f.makeHangingPromise)(r.renderSignal,t.route,"`params`")}break;case"validation-client":throw Object.defineProperty(new u.InvariantError("createPrerenderParamsForClientSegment should not be called in validation contexts."),"__NEXT_ERROR_CODE",{value:"E1099",enumerable:!1,configurable:!0});case"cache":case"private-cache":case"unstable-cache":throw Object.defineProperty(new u.InvariantError("createPrerenderParamsForClientSegment should not be called in cache contexts."),"__NEXT_ERROR_CODE",{value:"E734",enumerable:!1,configurable:!0});case"generate-static-params":throw Object.defineProperty(new u.InvariantError("createPrerenderParamsForClientSegment should not be called inside generateStaticParams."),"__NEXT_ERROR_CODE",{value:"E1126",enumerable:!1,configurable:!0})}return Promise.resolve(e)}function v(e,t,r,n,a){let o=null!==a?(0,i.createVaryingParams)(a,e,t):e;switch(n.type){case"prerender":case"prerender-client":{let t=n.fallbackRouteParams;if(t){for(let a in e)if(t.has(a))return function(e,t,r){let n=O.get(e);if(n)return n;let a=new Proxy((0,f.makeHangingPromise)(r.renderSignal,t.route,"`params`"),w);return O.set(e,a),a}(o,r,n)}break}case"prerender-ppr":{let t=n.fallbackRouteParams;if(t){for(let a in e)if(t.has(a))return function(e,t,r,n){let a=O.get(e);if(a)return a;let o={...e},i=Promise.resolve(o);return O.set(e,i),Object.keys(e).forEach(e=>{d.wellKnownProperties.has(e)||t.has(e)&&Object.defineProperty(o,e,{get(){let t=(0,d.describeStringPropertyAccess)("params",e);"prerender-ppr"===n.type?(0,l.postponeWithTracking)(r.route,t,n.dynamicTracking):(0,l.throwToInterruptStaticGeneration)(t,r,n)},enumerable:!0})}),i}(o,t,r,n)}}}return S(o)}function E(e,t,r,n,a){let o=S(null!==n?(0,i.createVaryingParams)(n,e,t):e),{stagedRendering:s}=r;if(!s)return o;let l=a?h.RenderStage.EarlyRuntime:h.RenderStage.Runtime;return s.waitForStage(l).then(()=>o)}function R(t,r,n){let{createExhaustiveParamsProxy:a}=e.r(18450);return Promise.resolve(a(t,new Set(Object.keys((null==n?void 0:n.params)??{})),r.route))}let O=new WeakMap,w={get:function(e,t,r){if("then"===t||"catch"===t||"finally"===t){let n=s.ReflectAdapter.get(e,t,r);return({[t]:(...t)=>{let r=m.dynamicAccessAsyncStorage.getStore();return r&&r.abortController.abort(Object.defineProperty(Error("Accessed fallback `params` during prerendering."),"__NEXT_ERROR_CODE",{value:"E691",enumerable:!1,configurable:!0})),new Proxy(n.apply(e,t),w)}})[t]}return s.ReflectAdapter.get(e,t,r)}};function S(e){let t=O.get(e);if(t)return t;let r=Promise.resolve(e);return O.set(e,r),r}(0,p.createDedupedByCallsiteServerErrorLoggerDev)(function(e,t){let r=e?`Route "${e}" `:"This route ";return Object.defineProperty(Error(`${r}used ${t}. \`params\` is a Promise and must be unwrapped with \`await\` or \`React.use()\` before accessing its properties. Learn more: https://nextjs.org/docs/messages/sync-dynamic-apis`),"__NEXT_ERROR_CODE",{value:"E834",enumerable:!1,configurable:!0})})},47257,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"ClientPageRoot",{enumerable:!0,get:function(){return l}});let n=e.r(43476),a=e.r(8372),o=e.r(71645),i=e.r(33906),s=e.r(61994);function l({Component:t,serverProvidedParams:r}){let c,u;if(null!==r)c=r.searchParams,u=r.params;else{let e=(0,o.use)(a.LayoutRouterContext);u=null!==e?e.parentParams:{},c=(0,i.urlSearchParamsToParsedUrlQuery)((0,o.use)(s.SearchParamsContext))}if("u"<typeof window){let r,a,{createSearchParamsFromClient:o}=e.r(69882);r=o(c);let{createParamsFromClient:i}=e.r(41489);return a=i(u),(0,n.jsx)(t,{params:a,searchParams:r})}{let{createRenderSearchParamsFromClient:r}=e.r(66996),a=r(c),{createRenderParamsFromClient:o}=e.r(97689),i=o(u);return(0,n.jsx)(t,{params:i,searchParams:a})}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},92825,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"ClientSegmentRoot",{enumerable:!0,get:function(){return i}});let n=e.r(43476),a=e.r(8372),o=e.r(71645);function i({Component:t,slots:r,serverProvidedParams:s}){let l;if(null!==s)l=s.params;else{let e=(0,o.use)(a.LayoutRouterContext);l=null!==e?e.parentParams:{}}if("u"<typeof window){let{createParamsFromClient:a}=e.r(41489),o=a(l);return(0,n.jsx)(t,{...r,params:o})}{let{createRenderParamsFromClient:a}=e.r(97689),o=a(l);return(0,n.jsx)(t,{...r,params:o})}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},27201,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"IconMark",{enumerable:!0,get:function(){return a}});let n=e.r(43476),a=()=>"u">typeof window?null:(0,n.jsx)("meta",{name:"«nxt-icon»"})}]);
|