@tec-explorer/skillpot 0.7.0 → 0.8.0
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/CHANGELOG.md +8 -0
- package/README.md +1 -0
- package/dist/cli.mjs +261 -97
- package/dist/gui/assets/{index-CQEycW9r.js → index-DN1MQ9V0.js} +1 -1
- package/dist/gui/index.html +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,14 @@
|
|
|
3
3
|
所有显著变更记录于此。格式遵循 [Keep a Changelog](https://keepachangelog.com/zh-CN/1.1.0/),
|
|
4
4
|
版本号遵循 [SemVer](https://semver.org/lang/zh-CN/)。
|
|
5
5
|
|
|
6
|
+
## [0.8.0] - 2026-09-04
|
|
7
|
+
|
|
8
|
+
### Added
|
|
9
|
+
- **`skillpot audit [--json]`**:审计每个 Agent 实际生效的 skill、来源与异常——外部同名占用(被绕过/遮蔽,error)、受管链接残留、声明开放但链接缺失(漂移)(产品计划 §9.4)
|
|
10
|
+
- **`update` / `--check` 携带文件级 diff**(新增/修改/删除),更新前即可看到将产生的变化(§9.2);CLI 表格与 GUI 维护页均展示
|
|
11
|
+
- **lint 安全规则扩展**(§9.1):SSH/云厂商凭据文件触碰、密钥类环境变量读取、curl POST/PUT 外发数据、向远端主机拷贝、清 shell 历史(反取证),附不误报的常规用例回归
|
|
12
|
+
- 产品计划 §10 更新为四条主线(安全纵深/团队对齐/覆盖验证/生态触达)并回填 M0-M2 完成状态
|
|
13
|
+
|
|
6
14
|
## [0.7.0] - 2026-09-04
|
|
7
15
|
|
|
8
16
|
### Added
|
package/README.md
CHANGED
|
@@ -85,6 +85,7 @@ skillpot doctor # 体检:断链/漂移/同名冲突
|
|
|
85
85
|
| `adopt [--from agents] [-f agents] [--move] [--dry-run]` | 收编已有 skill;`--move` 移动模式 |
|
|
86
86
|
| `remove <skill>` | 卸载(撤下所有链接 + 删除文件) |
|
|
87
87
|
| `doctor [--fix]` | 体检与自动修复 |
|
|
88
|
+
| `audit [--json]` | 审计:各 Agent 实际生效 skill、来源与被绕过/遮蔽 |
|
|
88
89
|
| `lint [skill] [--strict]` | 安全与质量检查:frontmatter + 脚本高危模式 |
|
|
89
90
|
| `update [skill] [--check]` | 检查/应用 git 来源 skill 的更新 |
|
|
90
91
|
| `gui [--port] [--host] [--no-open]` | Web 控制台:开关矩阵/体检/收编/安装/市场/维护 |
|
package/dist/cli.mjs
CHANGED
|
@@ -39109,7 +39109,28 @@ var DANGEROUS_PATTERNS = [
|
|
|
39109
39109
|
[/\bcurl\s+[^\n|]*\|\s*(?:ba|z)?sh\b/, "curl \u7BA1\u9053\u6267\u884C\u811A\u672C"],
|
|
39110
39110
|
[/\bwget\s+[^\n|]*\|\s*(?:ba|z)?sh\b/, "wget \u7BA1\u9053\u6267\u884C\u811A\u672C"],
|
|
39111
39111
|
[/\bsudo\b/, "sudo \u63D0\u6743"],
|
|
39112
|
-
[/\bchmod\s+777\b/, "chmod 777 \u5F00\u653E\u5199\u6743\u9650"]
|
|
39112
|
+
[/\bchmod\s+777\b/, "chmod 777 \u5F00\u653E\u5199\u6743\u9650"],
|
|
39113
|
+
// —— 凭据与敏感信息(§9.1:读取 env / credentials)——
|
|
39114
|
+
[/\.ssh[/']|\.aws[/']|\.kube[/']|\.netrc\b/, "\u89E6\u78B0 SSH/\u4E91\u5382\u5546\u51ED\u636E\u6587\u4EF6"],
|
|
39115
|
+
[
|
|
39116
|
+
/\b(?:API[_-]?KEY|APIKEY|SECRET[_-]?KEY|ACCESS[_-]?TOKEN|PRIVATE[_-]?KEY|AWS_SECRET[_-]?ACCESS[_-]?KEY)\b/i,
|
|
39117
|
+
"\u5F15\u7528\u5BC6\u94A5\u7C7B\u6807\u8BC6\u7B26"
|
|
39118
|
+
],
|
|
39119
|
+
[/\bprintenv\b/, "printenv \u5BFC\u51FA\u73AF\u5883\u53D8\u91CF"],
|
|
39120
|
+
[
|
|
39121
|
+
/process\.env\.[A-Z_]*(?:KEY|TOKEN|SECRET|PASSWORD|CREDENTIAL)\w*/i,
|
|
39122
|
+
"\u8BFB\u53D6 Node \u5BC6\u94A5\u7C7B\u73AF\u5883\u53D8\u91CF"
|
|
39123
|
+
],
|
|
39124
|
+
// —— 外发数据(§9.1:外发网络请求)——
|
|
39125
|
+
[
|
|
39126
|
+
/\bcurl\b[^\n]*(?:-X\s*(?:POST|PUT)\b|--data(?:-binary|-raw|-urlencode)?\b|--form\b|--upload-file\b|\s-T\s)/,
|
|
39127
|
+
"curl \u5411\u5916\u53D1\u9001\u6570\u636E\uFF08POST/PUT/\u4E0A\u4F20\uFF09"
|
|
39128
|
+
],
|
|
39129
|
+
[/\bwget\b[^\n]*--(?:post-data|post-file)\b/, "wget \u5411\u5916\u53D1\u9001\u6570\u636E"],
|
|
39130
|
+
[/\bnc\b[^\n]*\s-e\b/, "nc -e \u8FDC\u7A0B\u6267\u884C/\u53CD\u5F39 shell"],
|
|
39131
|
+
[/\b(?:scp|rsync)\b[^\n]*\b\w+@(?!localhost|127\.0\.0\.1)/, "\u5411\u8FDC\u7AEF\u4E3B\u673A\u62F7\u8D1D\u6587\u4EF6"],
|
|
39132
|
+
// —— 反取证 ——
|
|
39133
|
+
[/\.(?:bash|zsh)_history/, "\u89E6\u78B0 shell \u5386\u53F2\u6587\u4EF6"]
|
|
39113
39134
|
];
|
|
39114
39135
|
var SCRIPT_EXT = /\.(sh|bash|zsh|py|js|mjs|cjs|ts|rb|pl)$/;
|
|
39115
39136
|
function lintSkill(dir) {
|
|
@@ -39320,25 +39341,114 @@ async function installFromMarket(url, subdir, opts = {}) {
|
|
|
39320
39341
|
return addSkill(`${url}#${subdir}`, { name: opts.name, for: opts.for });
|
|
39321
39342
|
}
|
|
39322
39343
|
|
|
39323
|
-
// src/
|
|
39344
|
+
// src/tui/matrix.ts
|
|
39324
39345
|
import fs8 from "node:fs";
|
|
39325
39346
|
import path11 from "node:path";
|
|
39347
|
+
function deriveMatrix(agents) {
|
|
39348
|
+
const config = loadConfig();
|
|
39349
|
+
const skills = Object.keys(config.skills).sort();
|
|
39350
|
+
const list = agents ?? detectAll().map((r) => ({
|
|
39351
|
+
id: r.id,
|
|
39352
|
+
name: r.name,
|
|
39353
|
+
installed: r.installed,
|
|
39354
|
+
skillsDir: r.skillsDir
|
|
39355
|
+
}));
|
|
39356
|
+
const cells = {};
|
|
39357
|
+
for (const s of skills) {
|
|
39358
|
+
cells[s] = {};
|
|
39359
|
+
for (const a of list) {
|
|
39360
|
+
const target = path11.join(a.skillsDir, s);
|
|
39361
|
+
let actual = false;
|
|
39362
|
+
let managed = false;
|
|
39363
|
+
try {
|
|
39364
|
+
const st = fs8.lstatSync(target);
|
|
39365
|
+
actual = true;
|
|
39366
|
+
managed = st.isSymbolicLink() && fs8.realpathSync(target) === fs8.realpathSync(skillDir(s));
|
|
39367
|
+
} catch {
|
|
39368
|
+
}
|
|
39369
|
+
cells[s][a.id] = {
|
|
39370
|
+
enabled: config.skills[s].expose[a.id] === true,
|
|
39371
|
+
actual,
|
|
39372
|
+
managed
|
|
39373
|
+
};
|
|
39374
|
+
}
|
|
39375
|
+
}
|
|
39376
|
+
return { skills, agents: list, cells };
|
|
39377
|
+
}
|
|
39378
|
+
|
|
39379
|
+
// src/core/audit.ts
|
|
39380
|
+
function runAudit() {
|
|
39381
|
+
const matrix = deriveMatrix();
|
|
39382
|
+
const config = loadConfig();
|
|
39383
|
+
const agents = [];
|
|
39384
|
+
for (const a of matrix.agents) {
|
|
39385
|
+
if (!a.installed) continue;
|
|
39386
|
+
const active = [];
|
|
39387
|
+
const external = [];
|
|
39388
|
+
const findings = [];
|
|
39389
|
+
for (const skill of matrix.skills) {
|
|
39390
|
+
const cs = matrix.cells[skill]?.[a.id];
|
|
39391
|
+
if (!cs) continue;
|
|
39392
|
+
if (cs.actual && cs.managed) {
|
|
39393
|
+
active.push({
|
|
39394
|
+
skill,
|
|
39395
|
+
source: config.skills[skill]?.source ?? "\u672A\u767B\u8BB0\uFF08\u4E2D\u592E\u4ED3\u5E93\u5B58\u5728\u4F46 config \u7F3A\u5931\uFF09",
|
|
39396
|
+
enabled: cs.enabled
|
|
39397
|
+
});
|
|
39398
|
+
if (!cs.enabled) {
|
|
39399
|
+
findings.push({
|
|
39400
|
+
level: "warn",
|
|
39401
|
+
agent: a.id,
|
|
39402
|
+
message: `'${skill}' \u53D7\u7BA1\u94FE\u63A5\u4ECD\u5B58\u5728\uFF0C\u4F46\u77E9\u9635\u5DF2\u58F0\u660E\u5173\u95ED\uFF08disable \u6216 doctor --fix \u53EF\u6E05\u7406\uFF09`
|
|
39403
|
+
});
|
|
39404
|
+
}
|
|
39405
|
+
} else if (cs.actual && !cs.managed) {
|
|
39406
|
+
external.push({ name: skill, path: `${a.skillsDir}/${skill}` });
|
|
39407
|
+
if (cs.enabled) {
|
|
39408
|
+
findings.push({
|
|
39409
|
+
level: "error",
|
|
39410
|
+
agent: a.id,
|
|
39411
|
+
message: `'${skill}' \u58F0\u660E\u5BF9 ${a.id} \u5F00\u653E\uFF0C\u4F46\u8BE5\u4F4D\u7F6E\u88AB\u5916\u90E8\u540C\u540D\u6761\u76EE\u5360\u7528\u2014\u2014\u5B9E\u9645\u751F\u6548\u7684\u4E0D\u662F\u4E2D\u592E\u4ED3\u5E93\u7248\u672C\uFF08\u53EF\u80FD\u88AB\u7ED5\u8FC7/\u906E\u853D\uFF09`
|
|
39412
|
+
});
|
|
39413
|
+
}
|
|
39414
|
+
} else if (cs.enabled && !cs.actual) {
|
|
39415
|
+
findings.push({
|
|
39416
|
+
level: "warn",
|
|
39417
|
+
agent: a.id,
|
|
39418
|
+
message: `'${skill}' \u58F0\u660E\u5F00\u653E\u4F46\u94FE\u63A5\u7F3A\u5931\uFF08\u6F02\u79FB\uFF0Cdoctor --fix \u53EF\u91CD\u540C\u6B65\uFF09`
|
|
39419
|
+
});
|
|
39420
|
+
}
|
|
39421
|
+
}
|
|
39422
|
+
agents.push({
|
|
39423
|
+
agent: a.id,
|
|
39424
|
+
agentName: a.name,
|
|
39425
|
+
active,
|
|
39426
|
+
external,
|
|
39427
|
+
findings
|
|
39428
|
+
});
|
|
39429
|
+
}
|
|
39430
|
+
return { agents, generatedAt: (/* @__PURE__ */ new Date()).toISOString() };
|
|
39431
|
+
}
|
|
39432
|
+
|
|
39433
|
+
// src/core/doctor.ts
|
|
39434
|
+
import fs9 from "node:fs";
|
|
39435
|
+
import path12 from "node:path";
|
|
39326
39436
|
function runDoctor() {
|
|
39327
39437
|
const issues = [];
|
|
39328
39438
|
const config = loadConfig();
|
|
39329
39439
|
const state = loadState();
|
|
39330
39440
|
const home = agentHome();
|
|
39331
39441
|
for (const [name, entry] of Object.entries(config.skills)) {
|
|
39332
|
-
if (!
|
|
39442
|
+
if (!fs9.existsSync(path12.join(skillDir(name), "SKILL.md"))) {
|
|
39333
39443
|
issues.push({
|
|
39334
39444
|
level: "error",
|
|
39335
39445
|
message: `config \u4E2D\u7684 '${name}' \u5728\u4E2D\u592E\u4ED3\u5E93\u7F3A\u5931\uFF08source=${entry.source}\uFF09`
|
|
39336
39446
|
});
|
|
39337
39447
|
}
|
|
39338
39448
|
}
|
|
39339
|
-
if (
|
|
39340
|
-
for (const e of
|
|
39341
|
-
if (e.isDirectory() && !config.skills[e.name] &&
|
|
39449
|
+
if (fs9.existsSync(storeDir())) {
|
|
39450
|
+
for (const e of fs9.readdirSync(storeDir(), { withFileTypes: true })) {
|
|
39451
|
+
if (e.isDirectory() && !config.skills[e.name] && fs9.existsSync(path12.join(storeDir(), e.name, "SKILL.md"))) {
|
|
39342
39452
|
issues.push({
|
|
39343
39453
|
level: "warn",
|
|
39344
39454
|
message: `\u4E2D\u592E\u4ED3\u5E93\u4E2D\u7684 '${e.name}' \u672A\u767B\u8BB0\u8FDB config\uFF08\u624B\u52A8\u62F7\u5165\uFF1F\uFF09`,
|
|
@@ -39350,7 +39460,7 @@ function runDoctor() {
|
|
|
39350
39460
|
for (const link2 of state.links) {
|
|
39351
39461
|
let st = null;
|
|
39352
39462
|
try {
|
|
39353
|
-
st =
|
|
39463
|
+
st = fs9.lstatSync(link2.link_path);
|
|
39354
39464
|
} catch {
|
|
39355
39465
|
}
|
|
39356
39466
|
if (!st) {
|
|
@@ -39368,7 +39478,7 @@ function runDoctor() {
|
|
|
39368
39478
|
});
|
|
39369
39479
|
continue;
|
|
39370
39480
|
}
|
|
39371
|
-
if (!
|
|
39481
|
+
if (!fs9.existsSync(link2.link_path)) {
|
|
39372
39482
|
issues.push({
|
|
39373
39483
|
level: "error",
|
|
39374
39484
|
message: `\u65AD\u94FE\uFF1A${link2.link_path} \u6307\u5411\u7684\u76EE\u6807\u4E0D\u5B58\u5728`,
|
|
@@ -39378,19 +39488,19 @@ function runDoctor() {
|
|
|
39378
39488
|
}
|
|
39379
39489
|
for (const agent of AGENTS) {
|
|
39380
39490
|
const dir = agent.skillsDir(home);
|
|
39381
|
-
if (!
|
|
39491
|
+
if (!fs9.existsSync(dir)) continue;
|
|
39382
39492
|
let entries = [];
|
|
39383
39493
|
try {
|
|
39384
|
-
entries =
|
|
39494
|
+
entries = fs9.readdirSync(dir, { withFileTypes: true });
|
|
39385
39495
|
} catch {
|
|
39386
39496
|
continue;
|
|
39387
39497
|
}
|
|
39388
39498
|
for (const e of entries) {
|
|
39389
39499
|
if (!e.isSymbolicLink()) continue;
|
|
39390
|
-
const linkPath =
|
|
39500
|
+
const linkPath = path12.join(dir, e.name);
|
|
39391
39501
|
let target = "";
|
|
39392
39502
|
try {
|
|
39393
|
-
target =
|
|
39503
|
+
target = fs9.readlinkSync(linkPath);
|
|
39394
39504
|
} catch {
|
|
39395
39505
|
continue;
|
|
39396
39506
|
}
|
|
@@ -39406,8 +39516,8 @@ function runDoctor() {
|
|
|
39406
39516
|
}
|
|
39407
39517
|
for (const [name, entry] of Object.entries(config.skills)) {
|
|
39408
39518
|
for (const agent of AGENTS) {
|
|
39409
|
-
const target =
|
|
39410
|
-
const exposed =
|
|
39519
|
+
const target = path12.join(agent.skillsDir(home), name);
|
|
39520
|
+
const exposed = fs9.existsSync(target);
|
|
39411
39521
|
const wanted = entry.expose[agent.id] === true;
|
|
39412
39522
|
if (wanted && !exposed) {
|
|
39413
39523
|
issues.push({
|
|
@@ -39432,7 +39542,7 @@ function fixDoctor() {
|
|
|
39432
39542
|
state.links = state.links.filter((l) => {
|
|
39433
39543
|
let ok = false;
|
|
39434
39544
|
try {
|
|
39435
|
-
ok =
|
|
39545
|
+
ok = fs9.existsSync(l.link_path) && fs9.lstatSync(l.link_path).isSymbolicLink();
|
|
39436
39546
|
} catch {
|
|
39437
39547
|
ok = false;
|
|
39438
39548
|
}
|
|
@@ -39445,10 +39555,10 @@ function fixDoctor() {
|
|
|
39445
39555
|
saveState(state);
|
|
39446
39556
|
const config = loadConfig();
|
|
39447
39557
|
for (const [name, entry] of Object.entries(config.skills)) {
|
|
39448
|
-
if (!
|
|
39558
|
+
if (!fs9.existsSync(path12.join(skillDir(name), "SKILL.md"))) continue;
|
|
39449
39559
|
for (const agent of AGENTS) {
|
|
39450
|
-
const target =
|
|
39451
|
-
const exposed =
|
|
39560
|
+
const target = path12.join(agent.skillsDir(agentHome()), name);
|
|
39561
|
+
const exposed = fs9.existsSync(target);
|
|
39452
39562
|
const wanted = entry.expose[agent.id] === true;
|
|
39453
39563
|
if (wanted && !exposed) {
|
|
39454
39564
|
try {
|
|
@@ -39470,7 +39580,7 @@ function fixDoctor() {
|
|
|
39470
39580
|
function isOurSymlink(target, state, skill, agentId) {
|
|
39471
39581
|
let isLink = false;
|
|
39472
39582
|
try {
|
|
39473
|
-
isLink =
|
|
39583
|
+
isLink = fs9.lstatSync(target).isSymbolicLink();
|
|
39474
39584
|
} catch {
|
|
39475
39585
|
return false;
|
|
39476
39586
|
}
|
|
@@ -39481,13 +39591,13 @@ function isOurSymlink(target, state, skill, agentId) {
|
|
|
39481
39591
|
if (inLedger) return true;
|
|
39482
39592
|
let real = null;
|
|
39483
39593
|
try {
|
|
39484
|
-
real =
|
|
39594
|
+
real = fs9.realpathSync(target);
|
|
39485
39595
|
} catch {
|
|
39486
39596
|
return false;
|
|
39487
39597
|
}
|
|
39488
39598
|
let storeReal = null;
|
|
39489
39599
|
try {
|
|
39490
|
-
storeReal =
|
|
39600
|
+
storeReal = fs9.realpathSync(skillDir(skill));
|
|
39491
39601
|
} catch {
|
|
39492
39602
|
return false;
|
|
39493
39603
|
}
|
|
@@ -39495,21 +39605,21 @@ function isOurSymlink(target, state, skill, agentId) {
|
|
|
39495
39605
|
}
|
|
39496
39606
|
function sameRealPath(a, b) {
|
|
39497
39607
|
try {
|
|
39498
|
-
return
|
|
39608
|
+
return fs9.realpathSync(a) === fs9.realpathSync(b);
|
|
39499
39609
|
} catch {
|
|
39500
39610
|
return false;
|
|
39501
39611
|
}
|
|
39502
39612
|
}
|
|
39503
39613
|
|
|
39504
39614
|
// src/core/adopt.ts
|
|
39505
|
-
import
|
|
39506
|
-
import
|
|
39615
|
+
import fs10 from "node:fs";
|
|
39616
|
+
import path13 from "node:path";
|
|
39507
39617
|
function isManagedByStore(dir) {
|
|
39508
39618
|
try {
|
|
39509
|
-
if (!
|
|
39510
|
-
const real =
|
|
39511
|
-
const storeReal =
|
|
39512
|
-
return real === storeReal || real.startsWith(storeReal +
|
|
39619
|
+
if (!fs10.lstatSync(dir).isSymbolicLink()) return false;
|
|
39620
|
+
const real = fs10.realpathSync(dir);
|
|
39621
|
+
const storeReal = fs10.realpathSync(storeDir());
|
|
39622
|
+
return real === storeReal || real.startsWith(storeReal + path13.sep);
|
|
39513
39623
|
} catch {
|
|
39514
39624
|
return false;
|
|
39515
39625
|
}
|
|
@@ -39518,13 +39628,13 @@ function scanAgentSkills(agentId) {
|
|
|
39518
39628
|
const agent = getAgent(agentId);
|
|
39519
39629
|
if (!agent) throw new Error(`\u672A\u77E5 agent '${agentId}'`);
|
|
39520
39630
|
const dir = agent.skillsDir(agentHome());
|
|
39521
|
-
if (!
|
|
39631
|
+
if (!fs10.existsSync(dir)) return [];
|
|
39522
39632
|
const out = [];
|
|
39523
|
-
for (const e of
|
|
39633
|
+
for (const e of fs10.readdirSync(dir, { withFileTypes: true })) {
|
|
39524
39634
|
if (e.name.startsWith(".")) continue;
|
|
39525
39635
|
if (!e.isDirectory() && !e.isSymbolicLink()) continue;
|
|
39526
|
-
const p =
|
|
39527
|
-
if (!
|
|
39636
|
+
const p = path13.join(dir, e.name);
|
|
39637
|
+
if (!fs10.existsSync(path13.join(p, "SKILL.md"))) continue;
|
|
39528
39638
|
out.push({ name: e.name, path: p });
|
|
39529
39639
|
}
|
|
39530
39640
|
return out;
|
|
@@ -39532,7 +39642,7 @@ function scanAgentSkills(agentId) {
|
|
|
39532
39642
|
function scanAdoptable(agentId) {
|
|
39533
39643
|
return scanAgentSkills(agentId).filter((s) => {
|
|
39534
39644
|
try {
|
|
39535
|
-
return !
|
|
39645
|
+
return !fs10.lstatSync(s.path).isSymbolicLink();
|
|
39536
39646
|
} catch {
|
|
39537
39647
|
return false;
|
|
39538
39648
|
}
|
|
@@ -39563,7 +39673,7 @@ function adoptSkills(opts = {}) {
|
|
|
39563
39673
|
}
|
|
39564
39674
|
let isOwnSymlink = false;
|
|
39565
39675
|
try {
|
|
39566
|
-
isOwnSymlink =
|
|
39676
|
+
isOwnSymlink = fs10.lstatSync(skill.path).isSymbolicLink();
|
|
39567
39677
|
} catch {
|
|
39568
39678
|
}
|
|
39569
39679
|
if (isOwnSymlink) {
|
|
@@ -39583,7 +39693,7 @@ function adoptSkills(opts = {}) {
|
|
|
39583
39693
|
items.push({ agent: agentId, name: skill.name, path: skill.path, status: "skipped-invalid", detail: "\u76EE\u5F55\u540D\u4E0D\u5408\u6CD5" });
|
|
39584
39694
|
continue;
|
|
39585
39695
|
}
|
|
39586
|
-
const existsInStore = !!config.skills[name] ||
|
|
39696
|
+
const existsInStore = !!config.skills[name] || fs10.existsSync(skillDir(name));
|
|
39587
39697
|
if (opts.dryRun) {
|
|
39588
39698
|
items.push({
|
|
39589
39699
|
agent: agentId,
|
|
@@ -39640,7 +39750,7 @@ function adoptSkills(opts = {}) {
|
|
|
39640
39750
|
saveConfig(config);
|
|
39641
39751
|
for (const mv of pendingMoves) {
|
|
39642
39752
|
try {
|
|
39643
|
-
|
|
39753
|
+
fs10.rmSync(mv.path, { recursive: true, force: true });
|
|
39644
39754
|
enableSkill(mv.name, [mv.agentId]);
|
|
39645
39755
|
items.push({
|
|
39646
39756
|
agent: mv.agentId,
|
|
@@ -39675,30 +39785,56 @@ function adoptSkills(opts = {}) {
|
|
|
39675
39785
|
}
|
|
39676
39786
|
|
|
39677
39787
|
// src/core/update.ts
|
|
39678
|
-
import
|
|
39788
|
+
import fs11 from "node:fs";
|
|
39679
39789
|
import os3 from "node:os";
|
|
39680
|
-
import
|
|
39790
|
+
import path14 from "node:path";
|
|
39681
39791
|
import { execFile as execFile3 } from "node:child_process";
|
|
39682
39792
|
import { promisify as promisify3 } from "node:util";
|
|
39683
39793
|
var execFileP3 = promisify3(execFile3);
|
|
39794
|
+
function diffTree(oldDir, newDir) {
|
|
39795
|
+
const IGNORED2 = /* @__PURE__ */ new Set([".git"]);
|
|
39796
|
+
const collect = (root) => {
|
|
39797
|
+
const map = /* @__PURE__ */ new Map();
|
|
39798
|
+
const walk = (d) => {
|
|
39799
|
+
for (const e of fs11.readdirSync(d, { withFileTypes: true })) {
|
|
39800
|
+
if (IGNORED2.has(e.name)) continue;
|
|
39801
|
+
const p = path14.join(d, e.name);
|
|
39802
|
+
if (e.isDirectory()) walk(p);
|
|
39803
|
+
else if (e.isFile()) map.set(path14.relative(root, p), p);
|
|
39804
|
+
}
|
|
39805
|
+
};
|
|
39806
|
+
walk(root);
|
|
39807
|
+
return map;
|
|
39808
|
+
};
|
|
39809
|
+
const oldFiles = collect(oldDir);
|
|
39810
|
+
const newFiles = collect(newDir);
|
|
39811
|
+
const diff2 = { added: [], removed: [], modified: [] };
|
|
39812
|
+
for (const [rel, p] of newFiles) {
|
|
39813
|
+
if (!oldFiles.has(rel)) diff2.added.push(rel);
|
|
39814
|
+
else if (fs11.readFileSync(p) !== fs11.readFileSync(oldFiles.get(rel))) diff2.modified.push(rel);
|
|
39815
|
+
}
|
|
39816
|
+
for (const rel of oldFiles.keys()) if (!newFiles.has(rel)) diff2.removed.push(rel);
|
|
39817
|
+
for (const k of ["added", "removed", "modified"]) diff2[k].sort();
|
|
39818
|
+
return diff2;
|
|
39819
|
+
}
|
|
39684
39820
|
function parseGitSource(source) {
|
|
39685
39821
|
return source.startsWith("git:") ? source.slice(4) : null;
|
|
39686
39822
|
}
|
|
39687
39823
|
async function fetchRemote(repoSpec) {
|
|
39688
39824
|
const [url, sub] = repoSpec.split("#");
|
|
39689
|
-
const cloneDir =
|
|
39825
|
+
const cloneDir = fs11.mkdtempSync(path14.join(os3.tmpdir(), "skillpot-update-"));
|
|
39690
39826
|
try {
|
|
39691
39827
|
await execFileP3("git", ["clone", "--depth", "1", url, cloneDir], {
|
|
39692
39828
|
timeout: 3e5,
|
|
39693
39829
|
maxBuffer: 16 * 1024 * 1024
|
|
39694
39830
|
});
|
|
39695
|
-
const contentDir = sub ?
|
|
39696
|
-
if (!
|
|
39831
|
+
const contentDir = sub ? path14.join(cloneDir, sub) : cloneDir;
|
|
39832
|
+
if (!fs11.existsSync(path14.join(contentDir, "SKILL.md"))) {
|
|
39697
39833
|
throw new Error(`\u8FDC\u7AEF ${sub ? `#${sub} ` : ""}\u4E2D\u6CA1\u6709 SKILL.md`);
|
|
39698
39834
|
}
|
|
39699
39835
|
return { checksum: dirChecksum(contentDir), cloneDir, sub };
|
|
39700
39836
|
} catch (e) {
|
|
39701
|
-
|
|
39837
|
+
fs11.rmSync(cloneDir, { recursive: true, force: true });
|
|
39702
39838
|
throw e;
|
|
39703
39839
|
}
|
|
39704
39840
|
}
|
|
@@ -39717,7 +39853,7 @@ async function updateSkills(name, opts = {}) {
|
|
|
39717
39853
|
results.push({ skill: n, status: "local", detail: entry.source });
|
|
39718
39854
|
continue;
|
|
39719
39855
|
}
|
|
39720
|
-
if (!
|
|
39856
|
+
if (!fs11.existsSync(skillDir(n))) {
|
|
39721
39857
|
results.push({ skill: n, status: "error", detail: "\u4E2D\u592E\u4ED3\u5E93\u7F3A\u5931" });
|
|
39722
39858
|
continue;
|
|
39723
39859
|
}
|
|
@@ -39728,24 +39864,35 @@ async function updateSkills(name, opts = {}) {
|
|
|
39728
39864
|
results.push({ skill: n, status: "up-to-date" });
|
|
39729
39865
|
continue;
|
|
39730
39866
|
}
|
|
39867
|
+
const srcDir = fetched.sub ? path14.join(fetched.cloneDir, fetched.sub) : fetched.cloneDir;
|
|
39868
|
+
const diff2 = diffTree(skillDir(n), srcDir);
|
|
39731
39869
|
if (opts.check) {
|
|
39732
|
-
results.push({
|
|
39870
|
+
results.push({
|
|
39871
|
+
skill: n,
|
|
39872
|
+
status: "outdated",
|
|
39873
|
+
detail: `\u8FDC\u7AEF ${fetched.checksum.slice(0, 15)}`,
|
|
39874
|
+
diff: diff2
|
|
39875
|
+
});
|
|
39733
39876
|
continue;
|
|
39734
39877
|
}
|
|
39735
|
-
const staging =
|
|
39878
|
+
const staging = fs11.mkdtempSync(path14.join(os3.tmpdir(), "skillpot-new-"));
|
|
39736
39879
|
try {
|
|
39737
|
-
|
|
39738
|
-
|
|
39739
|
-
|
|
39740
|
-
fs10.cpSync(staging, skillDir(n), { recursive: true });
|
|
39880
|
+
fs11.cpSync(srcDir, staging, { recursive: true });
|
|
39881
|
+
fs11.rmSync(skillDir(n), { recursive: true, force: true });
|
|
39882
|
+
fs11.cpSync(staging, skillDir(n), { recursive: true });
|
|
39741
39883
|
} finally {
|
|
39742
|
-
|
|
39884
|
+
fs11.rmSync(staging, { recursive: true, force: true });
|
|
39743
39885
|
}
|
|
39744
39886
|
entry.checksum = dirChecksum(skillDir(n));
|
|
39745
39887
|
entry.installed_at = (/* @__PURE__ */ new Date()).toISOString();
|
|
39746
|
-
results.push({
|
|
39888
|
+
results.push({
|
|
39889
|
+
skill: n,
|
|
39890
|
+
status: "updated",
|
|
39891
|
+
detail: entry.checksum.slice(0, 15),
|
|
39892
|
+
diff: diff2
|
|
39893
|
+
});
|
|
39747
39894
|
} finally {
|
|
39748
|
-
|
|
39895
|
+
fs11.rmSync(fetched.cloneDir, { recursive: true, force: true });
|
|
39749
39896
|
}
|
|
39750
39897
|
} catch (e) {
|
|
39751
39898
|
results.push({ skill: n, status: "error", detail: e instanceof Error ? e.message : String(e) });
|
|
@@ -39759,21 +39906,21 @@ async function updateSkills(name, opts = {}) {
|
|
|
39759
39906
|
import readline from "node:readline";
|
|
39760
39907
|
|
|
39761
39908
|
// src/core/skill-detail.ts
|
|
39762
|
-
import
|
|
39763
|
-
import
|
|
39909
|
+
import fs12 from "node:fs";
|
|
39910
|
+
import path15 from "node:path";
|
|
39764
39911
|
function readSkillDetail(name) {
|
|
39765
39912
|
const dir = skillDir(name);
|
|
39766
|
-
const mdPath =
|
|
39767
|
-
if (!
|
|
39913
|
+
const mdPath = path15.join(dir, "SKILL.md");
|
|
39914
|
+
if (!fs12.existsSync(mdPath)) return null;
|
|
39768
39915
|
const files = [];
|
|
39769
39916
|
const walk = (d) => {
|
|
39770
|
-
for (const e of
|
|
39771
|
-
const p =
|
|
39917
|
+
for (const e of fs12.readdirSync(d, { withFileTypes: true })) {
|
|
39918
|
+
const p = path15.join(d, e.name);
|
|
39772
39919
|
if (e.isDirectory()) {
|
|
39773
|
-
files.push(
|
|
39920
|
+
files.push(path15.relative(dir, p) + "/");
|
|
39774
39921
|
walk(p);
|
|
39775
39922
|
} else {
|
|
39776
|
-
files.push(
|
|
39923
|
+
files.push(path15.relative(dir, p));
|
|
39777
39924
|
}
|
|
39778
39925
|
}
|
|
39779
39926
|
};
|
|
@@ -39782,7 +39929,7 @@ function readSkillDetail(name) {
|
|
|
39782
39929
|
name,
|
|
39783
39930
|
meta: readSkillMeta(dir),
|
|
39784
39931
|
files: files.sort(),
|
|
39785
|
-
skillMd:
|
|
39932
|
+
skillMd: fs12.readFileSync(mdPath, "utf8")
|
|
39786
39933
|
};
|
|
39787
39934
|
}
|
|
39788
39935
|
|
|
@@ -39919,41 +40066,6 @@ import path16 from "node:path";
|
|
|
39919
40066
|
import { spawn } from "node:child_process";
|
|
39920
40067
|
import { fileURLToPath } from "node:url";
|
|
39921
40068
|
|
|
39922
|
-
// src/tui/matrix.ts
|
|
39923
|
-
import fs12 from "node:fs";
|
|
39924
|
-
import path15 from "node:path";
|
|
39925
|
-
function deriveMatrix(agents) {
|
|
39926
|
-
const config = loadConfig();
|
|
39927
|
-
const skills = Object.keys(config.skills).sort();
|
|
39928
|
-
const list = agents ?? detectAll().map((r) => ({
|
|
39929
|
-
id: r.id,
|
|
39930
|
-
name: r.name,
|
|
39931
|
-
installed: r.installed,
|
|
39932
|
-
skillsDir: r.skillsDir
|
|
39933
|
-
}));
|
|
39934
|
-
const cells = {};
|
|
39935
|
-
for (const s of skills) {
|
|
39936
|
-
cells[s] = {};
|
|
39937
|
-
for (const a of list) {
|
|
39938
|
-
const target = path15.join(a.skillsDir, s);
|
|
39939
|
-
let actual = false;
|
|
39940
|
-
let managed = false;
|
|
39941
|
-
try {
|
|
39942
|
-
const st = fs12.lstatSync(target);
|
|
39943
|
-
actual = true;
|
|
39944
|
-
managed = st.isSymbolicLink() && fs12.realpathSync(target) === fs12.realpathSync(skillDir(s));
|
|
39945
|
-
} catch {
|
|
39946
|
-
}
|
|
39947
|
-
cells[s][a.id] = {
|
|
39948
|
-
enabled: config.skills[s].expose[a.id] === true,
|
|
39949
|
-
actual,
|
|
39950
|
-
managed
|
|
39951
|
-
};
|
|
39952
|
-
}
|
|
39953
|
-
}
|
|
39954
|
-
return { skills, agents: list, cells };
|
|
39955
|
-
}
|
|
39956
|
-
|
|
39957
40069
|
// src/tui/cells.ts
|
|
39958
40070
|
var import_picocolors = __toESM(require_picocolors());
|
|
39959
40071
|
function cellGlyph(cs) {
|
|
@@ -46288,6 +46400,45 @@ program2.command("doctor").description("\u4F53\u68C0\uFF1A\u65AD\u94FE\u3001expo
|
|
|
46288
46400
|
printIssues(issues);
|
|
46289
46401
|
})
|
|
46290
46402
|
);
|
|
46403
|
+
program2.command("audit").description("\u5BA1\u8BA1\uFF1A\u6BCF\u4E2A Agent \u5B9E\u9645\u751F\u6548\u7684 skill\u3001\u6765\u6E90\u4E0E\u88AB\u7ED5\u8FC7/\u906E\u853D\u60C5\u51B5").option("--json", "\u4EE5 JSON \u8F93\u51FA").action(
|
|
46404
|
+
run((opts) => {
|
|
46405
|
+
const report = runAudit();
|
|
46406
|
+
if (opts.json) {
|
|
46407
|
+
console.log(JSON.stringify(report, null, 2));
|
|
46408
|
+
return;
|
|
46409
|
+
}
|
|
46410
|
+
for (const a of report.agents) {
|
|
46411
|
+
console.log(
|
|
46412
|
+
import_picocolors2.default.bold(`${a.agentName} (${a.agent})`) + ` \u2014 \u5B9E\u9645\u751F\u6548 ${a.active.length} \u4E2A`
|
|
46413
|
+
);
|
|
46414
|
+
if (a.active.length) {
|
|
46415
|
+
console.log(
|
|
46416
|
+
renderTable(
|
|
46417
|
+
["Skill", "\u6765\u6E90", "\u58F0\u660E"],
|
|
46418
|
+
a.active.map((e) => [
|
|
46419
|
+
e.skill,
|
|
46420
|
+
e.source.length > 64 ? e.source.slice(0, 61) + "\u2026" : e.source,
|
|
46421
|
+
e.enabled ? "\u5F00\u653E" : import_picocolors2.default.yellow("\u5173\u95ED\uFF08\u94FE\u63A5\u6B8B\u7559\uFF09")
|
|
46422
|
+
])
|
|
46423
|
+
)
|
|
46424
|
+
);
|
|
46425
|
+
} else {
|
|
46426
|
+
console.log(import_picocolors2.default.dim(" \uFF08\u65E0\u751F\u6548 skill\uFF09"));
|
|
46427
|
+
}
|
|
46428
|
+
for (const e of a.external) {
|
|
46429
|
+
console.log(import_picocolors2.default.yellow(`\u26A0 \u5916\u90E8\u540C\u540D\u6761\u76EE\uFF08\u975E\u672C\u5DE5\u5177\u521B\u5EFA\uFF09\uFF1A${e.path}`));
|
|
46430
|
+
}
|
|
46431
|
+
for (const f of a.findings) {
|
|
46432
|
+
console.log(f.level === "error" ? import_picocolors2.default.red(`\u2717 ${f.message}`) : import_picocolors2.default.yellow(`\u26A0 ${f.message}`));
|
|
46433
|
+
}
|
|
46434
|
+
console.log();
|
|
46435
|
+
}
|
|
46436
|
+
const total = report.agents.reduce((n, a) => n + a.findings.length, 0);
|
|
46437
|
+
console.log(
|
|
46438
|
+
total ? import_picocolors2.default.yellow(`\u5BA1\u8BA1\u5B8C\u6210\uFF0C\u5171 ${total} \u6761\u53D1\u73B0\uFF0C\u8BE6\u89C1\u4E0A\u8868`) : import_picocolors2.default.green("\u5BA1\u8BA1\u901A\u8FC7\uFF1A\u5404 Agent \u5B9E\u9645\u751F\u6548\u72B6\u6001\u4E0E\u77E9\u9635\u4E00\u81F4")
|
|
46439
|
+
);
|
|
46440
|
+
})
|
|
46441
|
+
);
|
|
46291
46442
|
function printIssues(issues) {
|
|
46292
46443
|
for (const i of issues) {
|
|
46293
46444
|
const tag = i.level === "error" ? import_picocolors2.default.red("error") : import_picocolors2.default.yellow("warn ");
|
|
@@ -46375,7 +46526,20 @@ program2.command("update [skill]").description("\u68C0\u67E5\u5E76\u5E94\u7528 g
|
|
|
46375
46526
|
console.log(
|
|
46376
46527
|
renderTable(
|
|
46377
46528
|
["Skill", "\u72B6\u6001", "\u5907\u6CE8"],
|
|
46378
|
-
results.map((r) =>
|
|
46529
|
+
results.map((r) => {
|
|
46530
|
+
let note = r.detail ?? "";
|
|
46531
|
+
if (r.diff) {
|
|
46532
|
+
const { added, modified, removed } = r.diff;
|
|
46533
|
+
const counts = [
|
|
46534
|
+
added.length ? `+${added.length}` : "",
|
|
46535
|
+
modified.length ? `~${modified.length}` : "",
|
|
46536
|
+
removed.length ? `-${removed.length}` : ""
|
|
46537
|
+
].filter(Boolean).join(" ");
|
|
46538
|
+
const paths = [...added, ...modified, ...removed];
|
|
46539
|
+
note = `${note ? note + " " : ""}diff ${counts}\uFF08${paths.slice(0, 4).join("\u3001")}${paths.length > 4 ? " \u7B49" : ""}\uFF09`;
|
|
46540
|
+
}
|
|
46541
|
+
return [r.skill, label[r.status] ?? r.status, note];
|
|
46542
|
+
})
|
|
46379
46543
|
)
|
|
46380
46544
|
);
|
|
46381
46545
|
})
|
|
@@ -37,4 +37,4 @@
|
|
|
37
37
|
`+l[u].replace(" at new "," at ");return e.displayName&&s.includes("<anonymous>")&&(s=s.replace("<anonymous>",e.displayName)),s}while(1<=u&&0<=o);break}}}finally{Cl=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?xn(e):""}function Oc(e){switch(e.tag){case 5:return xn(e.type);case 16:return xn("Lazy");case 13:return xn("Suspense");case 19:return xn("SuspenseList");case 0:case 2:case 15:return e=jl(e.type,!1),e;case 11:return e=jl(e.type.render,!1),e;case 1:return e=jl(e.type,!0),e;default:return""}}function bl(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case At:return"Fragment";case Ut:return"Portal";case Zl:return"Profiler";case Gi:return"StrictMode";case Jl:return"Suspense";case ql:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case as:return(e.displayName||"Context")+".Consumer";case ss:return(e._context.displayName||"Context")+".Provider";case Zi:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case Ji:return t=e.displayName||null,t!==null?t:bl(e.type)||"Memo";case qe:t=e._payload,e=e._init;try{return bl(e(t))}catch{}}return null}function Mc(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=t.render,e=e.displayName||e.name||"",t.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return bl(t);case 8:return t===Gi?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t}return null}function dt(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function fs(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function Dc(e){var t=fs(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var l=n.get,i=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return l.call(this)},set:function(u){r=""+u,i.call(this,u)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(u){r=""+u},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function sr(e){e._valueTracker||(e._valueTracker=Dc(e))}function ds(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=fs(e)?e.checked?"true":"false":e.value),e=r,e!==n?(t.setValue(e),!0):!1}function Ir(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function ei(e,t){var n=t.checked;return W({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function Bu(e,t){var n=t.defaultValue==null?"":t.defaultValue,r=t.checked!=null?t.checked:t.defaultChecked;n=dt(t.value!=null?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function ps(e,t){t=t.checked,t!=null&&Xi(e,"checked",t,!1)}function ti(e,t){ps(e,t);var n=dt(t.value),r=t.type;if(n!=null)r==="number"?(n===0&&e.value===""||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if(r==="submit"||r==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?ni(e,t.type,n):t.hasOwnProperty("defaultValue")&&ni(e,t.type,dt(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function Hu(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!(r!=="submit"&&r!=="reset"||t.value!==void 0&&t.value!==null))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}n=e.name,n!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,n!==""&&(e.name=n)}function ni(e,t,n){(t!=="number"||Ir(e.ownerDocument)!==e)&&(n==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var Nn=Array.isArray;function Jt(e,t,n,r){if(e=e.options,t){t={};for(var l=0;l<n.length;l++)t["$"+n[l]]=!0;for(n=0;n<e.length;n++)l=t.hasOwnProperty("$"+e[n].value),e[n].selected!==l&&(e[n].selected=l),l&&r&&(e[n].defaultSelected=!0)}else{for(n=""+dt(n),t=null,l=0;l<e.length;l++){if(e[l].value===n){e[l].selected=!0,r&&(e[l].defaultSelected=!0);return}t!==null||e[l].disabled||(t=e[l])}t!==null&&(t.selected=!0)}}function ri(e,t){if(t.dangerouslySetInnerHTML!=null)throw Error(x(91));return W({},t,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function Qu(e,t){var n=t.value;if(n==null){if(n=t.children,t=t.defaultValue,n!=null){if(t!=null)throw Error(x(92));if(Nn(n)){if(1<n.length)throw Error(x(93));n=n[0]}t=n}t==null&&(t=""),n=t}e._wrapperState={initialValue:dt(n)}}function ms(e,t){var n=dt(t.value),r=dt(t.defaultValue);n!=null&&(n=""+n,n!==e.value&&(e.value=n),t.defaultValue==null&&e.defaultValue!==n&&(e.defaultValue=n)),r!=null&&(e.defaultValue=""+r)}function Wu(e){var t=e.textContent;t===e._wrapperState.initialValue&&t!==""&&t!==null&&(e.value=t)}function hs(e){switch(e){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function li(e,t){return e==null||e==="http://www.w3.org/1999/xhtml"?hs(t):e==="http://www.w3.org/2000/svg"&&t==="foreignObject"?"http://www.w3.org/1999/xhtml":e}var ar,vs=function(e){return typeof MSApp<"u"&&MSApp.execUnsafeLocalFunction?function(t,n,r,l){MSApp.execUnsafeLocalFunction(function(){return e(t,n,r,l)})}:e}(function(e,t){if(e.namespaceURI!=="http://www.w3.org/2000/svg"||"innerHTML"in e)e.innerHTML=t;else{for(ar=ar||document.createElement("div"),ar.innerHTML="<svg>"+t.valueOf().toString()+"</svg>",t=ar.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function In(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var jn={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},Ic=["Webkit","ms","Moz","O"];Object.keys(jn).forEach(function(e){Ic.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),jn[t]=jn[e]})});function gs(e,t,n){return t==null||typeof t=="boolean"||t===""?"":n||typeof t!="number"||t===0||jn.hasOwnProperty(e)&&jn[e]?(""+t).trim():t+"px"}function ys(e,t){e=e.style;for(var n in t)if(t.hasOwnProperty(n)){var r=n.indexOf("--")===0,l=gs(n,t[n],r);n==="float"&&(n="cssFloat"),r?e.setProperty(n,l):e[n]=l}}var Fc=W({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function ii(e,t){if(t){if(Fc[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(x(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(x(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(x(61))}if(t.style!=null&&typeof t.style!="object")throw Error(x(62))}}function ui(e,t){if(e.indexOf("-")===-1)return typeof t.is=="string";switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var oi=null;function qi(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var si=null,qt=null,bt=null;function Ku(e){if(e=tr(e)){if(typeof si!="function")throw Error(x(280));var t=e.stateNode;t&&(t=fl(t),si(e.stateNode,e.type,t))}}function ks(e){qt?bt?bt.push(e):bt=[e]:qt=e}function ws(){if(qt){var e=qt,t=bt;if(bt=qt=null,Ku(e),t)for(e=0;e<t.length;e++)Ku(t[e])}}function Ss(e,t){return e(t)}function xs(){}var _l=!1;function Ns(e,t,n){if(_l)return e(t,n);_l=!0;try{return Ss(e,t,n)}finally{_l=!1,(qt!==null||bt!==null)&&(xs(),ws())}}function Fn(e,t){var n=e.stateNode;if(n===null)return null;var r=fl(n);if(r===null)return null;n=r[t];e:switch(t){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(r=!r.disabled)||(e=e.type,r=!(e==="button"||e==="input"||e==="select"||e==="textarea")),e=!r;break e;default:e=!1}if(e)return null;if(n&&typeof n!="function")throw Error(x(231,t,typeof n));return n}var ai=!1;if(Ke)try{var hn={};Object.defineProperty(hn,"passive",{get:function(){ai=!0}}),window.addEventListener("test",hn,hn),window.removeEventListener("test",hn,hn)}catch{ai=!1}function $c(e,t,n,r,l,i,u,o,s){var f=Array.prototype.slice.call(arguments,3);try{t.apply(n,f)}catch(v){this.onError(v)}}var _n=!1,Fr=null,$r=!1,ci=null,Uc={onError:function(e){_n=!0,Fr=e}};function Ac(e,t,n,r,l,i,u,o,s){_n=!1,Fr=null,$c.apply(Uc,arguments)}function Vc(e,t,n,r,l,i,u,o,s){if(Ac.apply(this,arguments),_n){if(_n){var f=Fr;_n=!1,Fr=null}else throw Error(x(198));$r||($r=!0,ci=f)}}function It(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,t.flags&4098&&(n=t.return),e=t.return;while(e)}return t.tag===3?n:null}function Es(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function Yu(e){if(It(e)!==e)throw Error(x(188))}function Bc(e){var t=e.alternate;if(!t){if(t=It(e),t===null)throw Error(x(188));return t!==e?null:e}for(var n=e,r=t;;){var l=n.return;if(l===null)break;var i=l.alternate;if(i===null){if(r=l.return,r!==null){n=r;continue}break}if(l.child===i.child){for(i=l.child;i;){if(i===n)return Yu(l),e;if(i===r)return Yu(l),t;i=i.sibling}throw Error(x(188))}if(n.return!==r.return)n=l,r=i;else{for(var u=!1,o=l.child;o;){if(o===n){u=!0,n=l,r=i;break}if(o===r){u=!0,r=l,n=i;break}o=o.sibling}if(!u){for(o=i.child;o;){if(o===n){u=!0,n=i,r=l;break}if(o===r){u=!0,r=i,n=l;break}o=o.sibling}if(!u)throw Error(x(189))}}if(n.alternate!==r)throw Error(x(190))}if(n.tag!==3)throw Error(x(188));return n.stateNode.current===n?e:t}function Cs(e){return e=Bc(e),e!==null?js(e):null}function js(e){if(e.tag===5||e.tag===6)return e;for(e=e.child;e!==null;){var t=js(e);if(t!==null)return t;e=e.sibling}return null}var _s=we.unstable_scheduleCallback,Xu=we.unstable_cancelCallback,Hc=we.unstable_shouldYield,Qc=we.unstable_requestPaint,Y=we.unstable_now,Wc=we.unstable_getCurrentPriorityLevel,bi=we.unstable_ImmediatePriority,Ps=we.unstable_UserBlockingPriority,Ur=we.unstable_NormalPriority,Kc=we.unstable_LowPriority,Ts=we.unstable_IdlePriority,ol=null,Ue=null;function Yc(e){if(Ue&&typeof Ue.onCommitFiberRoot=="function")try{Ue.onCommitFiberRoot(ol,e,void 0,(e.current.flags&128)===128)}catch{}}var Oe=Math.clz32?Math.clz32:Zc,Xc=Math.log,Gc=Math.LN2;function Zc(e){return e>>>=0,e===0?32:31-(Xc(e)/Gc|0)|0}var cr=64,fr=4194304;function En(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function Ar(e,t){var n=e.pendingLanes;if(n===0)return 0;var r=0,l=e.suspendedLanes,i=e.pingedLanes,u=n&268435455;if(u!==0){var o=u&~l;o!==0?r=En(o):(i&=u,i!==0&&(r=En(i)))}else u=n&~l,u!==0?r=En(u):i!==0&&(r=En(i));if(r===0)return 0;if(t!==0&&t!==r&&!(t&l)&&(l=r&-r,i=t&-t,l>=i||l===16&&(i&4194240)!==0))return t;if(r&4&&(r|=n&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=r;0<t;)n=31-Oe(t),l=1<<n,r|=e[n],t&=~l;return r}function Jc(e,t){switch(e){case 1:case 2:case 4:return t+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return-1;case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function qc(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,l=e.expirationTimes,i=e.pendingLanes;0<i;){var u=31-Oe(i),o=1<<u,s=l[u];s===-1?(!(o&n)||o&r)&&(l[u]=Jc(o,t)):s<=t&&(e.expiredLanes|=o),i&=~o}}function fi(e){return e=e.pendingLanes&-1073741825,e!==0?e:e&1073741824?1073741824:0}function zs(){var e=cr;return cr<<=1,!(cr&4194240)&&(cr=64),e}function Pl(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function bn(e,t,n){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-Oe(t),e[t]=n}function bc(e,t){var n=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var r=e.eventTimes;for(e=e.expirationTimes;0<n;){var l=31-Oe(n),i=1<<l;t[l]=0,r[l]=-1,e[l]=-1,n&=~i}}function eu(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var r=31-Oe(n),l=1<<r;l&t|e[r]&t&&(e[r]|=t),n&=~l}}var F=0;function Ls(e){return e&=-e,1<e?4<e?e&268435455?16:536870912:4:1}var Rs,tu,Os,Ms,Ds,di=!1,dr=[],lt=null,it=null,ut=null,$n=new Map,Un=new Map,et=[],ef="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");function Gu(e,t){switch(e){case"focusin":case"focusout":lt=null;break;case"dragenter":case"dragleave":it=null;break;case"mouseover":case"mouseout":ut=null;break;case"pointerover":case"pointerout":$n.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":Un.delete(t.pointerId)}}function vn(e,t,n,r,l,i){return e===null||e.nativeEvent!==i?(e={blockedOn:t,domEventName:n,eventSystemFlags:r,nativeEvent:i,targetContainers:[l]},t!==null&&(t=tr(t),t!==null&&tu(t)),e):(e.eventSystemFlags|=r,t=e.targetContainers,l!==null&&t.indexOf(l)===-1&&t.push(l),e)}function tf(e,t,n,r,l){switch(t){case"focusin":return lt=vn(lt,e,t,n,r,l),!0;case"dragenter":return it=vn(it,e,t,n,r,l),!0;case"mouseover":return ut=vn(ut,e,t,n,r,l),!0;case"pointerover":var i=l.pointerId;return $n.set(i,vn($n.get(i)||null,e,t,n,r,l)),!0;case"gotpointercapture":return i=l.pointerId,Un.set(i,vn(Un.get(i)||null,e,t,n,r,l)),!0}return!1}function Is(e){var t=Ct(e.target);if(t!==null){var n=It(t);if(n!==null){if(t=n.tag,t===13){if(t=Es(n),t!==null){e.blockedOn=t,Ds(e.priority,function(){Os(n)});return}}else if(t===3&&n.stateNode.current.memoizedState.isDehydrated){e.blockedOn=n.tag===3?n.stateNode.containerInfo:null;return}}}e.blockedOn=null}function jr(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var n=pi(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(n===null){n=e.nativeEvent;var r=new n.constructor(n.type,n);oi=r,n.target.dispatchEvent(r),oi=null}else return t=tr(n),t!==null&&tu(t),e.blockedOn=n,!1;t.shift()}return!0}function Zu(e,t,n){jr(e)&&n.delete(t)}function nf(){di=!1,lt!==null&&jr(lt)&&(lt=null),it!==null&&jr(it)&&(it=null),ut!==null&&jr(ut)&&(ut=null),$n.forEach(Zu),Un.forEach(Zu)}function gn(e,t){e.blockedOn===t&&(e.blockedOn=null,di||(di=!0,we.unstable_scheduleCallback(we.unstable_NormalPriority,nf)))}function An(e){function t(l){return gn(l,e)}if(0<dr.length){gn(dr[0],e);for(var n=1;n<dr.length;n++){var r=dr[n];r.blockedOn===e&&(r.blockedOn=null)}}for(lt!==null&&gn(lt,e),it!==null&&gn(it,e),ut!==null&&gn(ut,e),$n.forEach(t),Un.forEach(t),n=0;n<et.length;n++)r=et[n],r.blockedOn===e&&(r.blockedOn=null);for(;0<et.length&&(n=et[0],n.blockedOn===null);)Is(n),n.blockedOn===null&&et.shift()}var en=Ze.ReactCurrentBatchConfig,Vr=!0;function rf(e,t,n,r){var l=F,i=en.transition;en.transition=null;try{F=1,nu(e,t,n,r)}finally{F=l,en.transition=i}}function lf(e,t,n,r){var l=F,i=en.transition;en.transition=null;try{F=4,nu(e,t,n,r)}finally{F=l,en.transition=i}}function nu(e,t,n,r){if(Vr){var l=pi(e,t,n,r);if(l===null)$l(e,t,r,Br,n),Gu(e,r);else if(tf(l,e,t,n,r))r.stopPropagation();else if(Gu(e,r),t&4&&-1<ef.indexOf(e)){for(;l!==null;){var i=tr(l);if(i!==null&&Rs(i),i=pi(e,t,n,r),i===null&&$l(e,t,r,Br,n),i===l)break;l=i}l!==null&&r.stopPropagation()}else $l(e,t,r,null,n)}}var Br=null;function pi(e,t,n,r){if(Br=null,e=qi(r),e=Ct(e),e!==null)if(t=It(e),t===null)e=null;else if(n=t.tag,n===13){if(e=Es(t),e!==null)return e;e=null}else if(n===3){if(t.stateNode.current.memoizedState.isDehydrated)return t.tag===3?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null);return Br=e,null}function Fs(e){switch(e){case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 1;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"toggle":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 4;case"message":switch(Wc()){case bi:return 1;case Ps:return 4;case Ur:case Kc:return 16;case Ts:return 536870912;default:return 16}default:return 16}}var nt=null,ru=null,_r=null;function $s(){if(_r)return _r;var e,t=ru,n=t.length,r,l="value"in nt?nt.value:nt.textContent,i=l.length;for(e=0;e<n&&t[e]===l[e];e++);var u=n-e;for(r=1;r<=u&&t[n-r]===l[i-r];r++);return _r=l.slice(e,1<r?1-r:void 0)}function Pr(e){var t=e.keyCode;return"charCode"in e?(e=e.charCode,e===0&&t===13&&(e=13)):e=t,e===10&&(e=13),32<=e||e===13?e:0}function pr(){return!0}function Ju(){return!1}function xe(e){function t(n,r,l,i,u){this._reactName=n,this._targetInst=l,this.type=r,this.nativeEvent=i,this.target=u,this.currentTarget=null;for(var o in e)e.hasOwnProperty(o)&&(n=e[o],this[o]=n?n(i):i[o]);return this.isDefaultPrevented=(i.defaultPrevented!=null?i.defaultPrevented:i.returnValue===!1)?pr:Ju,this.isPropagationStopped=Ju,this}return W(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var n=this.nativeEvent;n&&(n.preventDefault?n.preventDefault():typeof n.returnValue!="unknown"&&(n.returnValue=!1),this.isDefaultPrevented=pr)},stopPropagation:function(){var n=this.nativeEvent;n&&(n.stopPropagation?n.stopPropagation():typeof n.cancelBubble!="unknown"&&(n.cancelBubble=!0),this.isPropagationStopped=pr)},persist:function(){},isPersistent:pr}),t}var dn={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},lu=xe(dn),er=W({},dn,{view:0,detail:0}),uf=xe(er),Tl,zl,yn,sl=W({},er,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:iu,button:0,buttons:0,relatedTarget:function(e){return e.relatedTarget===void 0?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return"movementX"in e?e.movementX:(e!==yn&&(yn&&e.type==="mousemove"?(Tl=e.screenX-yn.screenX,zl=e.screenY-yn.screenY):zl=Tl=0,yn=e),Tl)},movementY:function(e){return"movementY"in e?e.movementY:zl}}),qu=xe(sl),of=W({},sl,{dataTransfer:0}),sf=xe(of),af=W({},er,{relatedTarget:0}),Ll=xe(af),cf=W({},dn,{animationName:0,elapsedTime:0,pseudoElement:0}),ff=xe(cf),df=W({},dn,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),pf=xe(df),mf=W({},dn,{data:0}),bu=xe(mf),hf={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},vf={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},gf={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function yf(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=gf[e])?!!t[e]:!1}function iu(){return yf}var kf=W({},er,{key:function(e){if(e.key){var t=hf[e.key]||e.key;if(t!=="Unidentified")return t}return e.type==="keypress"?(e=Pr(e),e===13?"Enter":String.fromCharCode(e)):e.type==="keydown"||e.type==="keyup"?vf[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:iu,charCode:function(e){return e.type==="keypress"?Pr(e):0},keyCode:function(e){return e.type==="keydown"||e.type==="keyup"?e.keyCode:0},which:function(e){return e.type==="keypress"?Pr(e):e.type==="keydown"||e.type==="keyup"?e.keyCode:0}}),wf=xe(kf),Sf=W({},sl,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),eo=xe(Sf),xf=W({},er,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:iu}),Nf=xe(xf),Ef=W({},dn,{propertyName:0,elapsedTime:0,pseudoElement:0}),Cf=xe(Ef),jf=W({},sl,{deltaX:function(e){return"deltaX"in e?e.deltaX:"wheelDeltaX"in e?-e.wheelDeltaX:0},deltaY:function(e){return"deltaY"in e?e.deltaY:"wheelDeltaY"in e?-e.wheelDeltaY:"wheelDelta"in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0}),_f=xe(jf),Pf=[9,13,27,32],uu=Ke&&"CompositionEvent"in window,Pn=null;Ke&&"documentMode"in document&&(Pn=document.documentMode);var Tf=Ke&&"TextEvent"in window&&!Pn,Us=Ke&&(!uu||Pn&&8<Pn&&11>=Pn),to=" ",no=!1;function As(e,t){switch(e){case"keyup":return Pf.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Vs(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var Vt=!1;function zf(e,t){switch(e){case"compositionend":return Vs(t);case"keypress":return t.which!==32?null:(no=!0,to);case"textInput":return e=t.data,e===to&&no?null:e;default:return null}}function Lf(e,t){if(Vt)return e==="compositionend"||!uu&&As(e,t)?(e=$s(),_r=ru=nt=null,Vt=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case"compositionend":return Us&&t.locale!=="ko"?null:t.data;default:return null}}var Rf={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function ro(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t==="input"?!!Rf[e.type]:t==="textarea"}function Bs(e,t,n,r){ks(r),t=Hr(t,"onChange"),0<t.length&&(n=new lu("onChange","change",null,n,r),e.push({event:n,listeners:t}))}var Tn=null,Vn=null;function Of(e){bs(e,0)}function al(e){var t=Qt(e);if(ds(t))return e}function Mf(e,t){if(e==="change")return t}var Hs=!1;if(Ke){var Rl;if(Ke){var Ol="oninput"in document;if(!Ol){var lo=document.createElement("div");lo.setAttribute("oninput","return;"),Ol=typeof lo.oninput=="function"}Rl=Ol}else Rl=!1;Hs=Rl&&(!document.documentMode||9<document.documentMode)}function io(){Tn&&(Tn.detachEvent("onpropertychange",Qs),Vn=Tn=null)}function Qs(e){if(e.propertyName==="value"&&al(Vn)){var t=[];Bs(t,Vn,e,qi(e)),Ns(Of,t)}}function Df(e,t,n){e==="focusin"?(io(),Tn=t,Vn=n,Tn.attachEvent("onpropertychange",Qs)):e==="focusout"&&io()}function If(e){if(e==="selectionchange"||e==="keyup"||e==="keydown")return al(Vn)}function Ff(e,t){if(e==="click")return al(t)}function $f(e,t){if(e==="input"||e==="change")return al(t)}function Uf(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var De=typeof Object.is=="function"?Object.is:Uf;function Bn(e,t){if(De(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(r=0;r<n.length;r++){var l=n[r];if(!Gl.call(t,l)||!De(e[l],t[l]))return!1}return!0}function uo(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function oo(e,t){var n=uo(e);e=0;for(var r;n;){if(n.nodeType===3){if(r=e+n.textContent.length,e<=t&&r>=t)return{node:n,offset:t-e};e=r}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=uo(n)}}function Ws(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Ws(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Ks(){for(var e=window,t=Ir();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=Ir(e.document)}return t}function ou(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}function Af(e){var t=Ks(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&Ws(n.ownerDocument.documentElement,n)){if(r!==null&&ou(n)){if(t=r.start,e=r.end,e===void 0&&(e=t),"selectionStart"in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if(e=(t=n.ownerDocument||document)&&t.defaultView||window,e.getSelection){e=e.getSelection();var l=n.textContent.length,i=Math.min(r.start,l);r=r.end===void 0?i:Math.min(r.end,l),!e.extend&&i>r&&(l=r,r=i,i=l),l=oo(n,i);var u=oo(n,r);l&&u&&(e.rangeCount!==1||e.anchorNode!==l.node||e.anchorOffset!==l.offset||e.focusNode!==u.node||e.focusOffset!==u.offset)&&(t=t.createRange(),t.setStart(l.node,l.offset),e.removeAllRanges(),i>r?(e.addRange(t),e.extend(u.node,u.offset)):(t.setEnd(u.node,u.offset),e.addRange(t)))}}for(t=[],e=n;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof n.focus=="function"&&n.focus(),n=0;n<t.length;n++)e=t[n],e.element.scrollLeft=e.left,e.element.scrollTop=e.top}}var Vf=Ke&&"documentMode"in document&&11>=document.documentMode,Bt=null,mi=null,zn=null,hi=!1;function so(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;hi||Bt==null||Bt!==Ir(r)||(r=Bt,"selectionStart"in r&&ou(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),zn&&Bn(zn,r)||(zn=r,r=Hr(mi,"onSelect"),0<r.length&&(t=new lu("onSelect","select",null,t,n),e.push({event:t,listeners:r}),t.target=Bt)))}function mr(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var Ht={animationend:mr("Animation","AnimationEnd"),animationiteration:mr("Animation","AnimationIteration"),animationstart:mr("Animation","AnimationStart"),transitionend:mr("Transition","TransitionEnd")},Ml={},Ys={};Ke&&(Ys=document.createElement("div").style,"AnimationEvent"in window||(delete Ht.animationend.animation,delete Ht.animationiteration.animation,delete Ht.animationstart.animation),"TransitionEvent"in window||delete Ht.transitionend.transition);function cl(e){if(Ml[e])return Ml[e];if(!Ht[e])return e;var t=Ht[e],n;for(n in t)if(t.hasOwnProperty(n)&&n in Ys)return Ml[e]=t[n];return e}var Xs=cl("animationend"),Gs=cl("animationiteration"),Zs=cl("animationstart"),Js=cl("transitionend"),qs=new Map,ao="abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");function mt(e,t){qs.set(e,t),Dt(t,[e])}for(var Dl=0;Dl<ao.length;Dl++){var Il=ao[Dl],Bf=Il.toLowerCase(),Hf=Il[0].toUpperCase()+Il.slice(1);mt(Bf,"on"+Hf)}mt(Xs,"onAnimationEnd");mt(Gs,"onAnimationIteration");mt(Zs,"onAnimationStart");mt("dblclick","onDoubleClick");mt("focusin","onFocus");mt("focusout","onBlur");mt(Js,"onTransitionEnd");rn("onMouseEnter",["mouseout","mouseover"]);rn("onMouseLeave",["mouseout","mouseover"]);rn("onPointerEnter",["pointerout","pointerover"]);rn("onPointerLeave",["pointerout","pointerover"]);Dt("onChange","change click focusin focusout input keydown keyup selectionchange".split(" "));Dt("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" "));Dt("onBeforeInput",["compositionend","keypress","textInput","paste"]);Dt("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" "));Dt("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" "));Dt("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var Cn="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),Qf=new Set("cancel close invalid load scroll toggle".split(" ").concat(Cn));function co(e,t,n){var r=e.type||"unknown-event";e.currentTarget=n,Vc(r,t,void 0,e),e.currentTarget=null}function bs(e,t){t=(t&4)!==0;for(var n=0;n<e.length;n++){var r=e[n],l=r.event;r=r.listeners;e:{var i=void 0;if(t)for(var u=r.length-1;0<=u;u--){var o=r[u],s=o.instance,f=o.currentTarget;if(o=o.listener,s!==i&&l.isPropagationStopped())break e;co(l,o,f),i=s}else for(u=0;u<r.length;u++){if(o=r[u],s=o.instance,f=o.currentTarget,o=o.listener,s!==i&&l.isPropagationStopped())break e;co(l,o,f),i=s}}}if($r)throw e=ci,$r=!1,ci=null,e}function A(e,t){var n=t[wi];n===void 0&&(n=t[wi]=new Set);var r=e+"__bubble";n.has(r)||(ea(t,e,2,!1),n.add(r))}function Fl(e,t,n){var r=0;t&&(r|=4),ea(n,e,r,t)}var hr="_reactListening"+Math.random().toString(36).slice(2);function Hn(e){if(!e[hr]){e[hr]=!0,os.forEach(function(n){n!=="selectionchange"&&(Qf.has(n)||Fl(n,!1,e),Fl(n,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[hr]||(t[hr]=!0,Fl("selectionchange",!1,t))}}function ea(e,t,n,r){switch(Fs(t)){case 1:var l=rf;break;case 4:l=lf;break;default:l=nu}n=l.bind(null,t,n,e),l=void 0,!ai||t!=="touchstart"&&t!=="touchmove"&&t!=="wheel"||(l=!0),r?l!==void 0?e.addEventListener(t,n,{capture:!0,passive:l}):e.addEventListener(t,n,!0):l!==void 0?e.addEventListener(t,n,{passive:l}):e.addEventListener(t,n,!1)}function $l(e,t,n,r,l){var i=r;if(!(t&1)&&!(t&2)&&r!==null)e:for(;;){if(r===null)return;var u=r.tag;if(u===3||u===4){var o=r.stateNode.containerInfo;if(o===l||o.nodeType===8&&o.parentNode===l)break;if(u===4)for(u=r.return;u!==null;){var s=u.tag;if((s===3||s===4)&&(s=u.stateNode.containerInfo,s===l||s.nodeType===8&&s.parentNode===l))return;u=u.return}for(;o!==null;){if(u=Ct(o),u===null)return;if(s=u.tag,s===5||s===6){r=i=u;continue e}o=o.parentNode}}r=r.return}Ns(function(){var f=i,v=qi(n),h=[];e:{var m=qs.get(e);if(m!==void 0){var S=lu,w=e;switch(e){case"keypress":if(Pr(n)===0)break e;case"keydown":case"keyup":S=wf;break;case"focusin":w="focus",S=Ll;break;case"focusout":w="blur",S=Ll;break;case"beforeblur":case"afterblur":S=Ll;break;case"click":if(n.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":S=qu;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":S=sf;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":S=Nf;break;case Xs:case Gs:case Zs:S=ff;break;case Js:S=Cf;break;case"scroll":S=uf;break;case"wheel":S=_f;break;case"copy":case"cut":case"paste":S=pf;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":S=eo}var k=(t&4)!==0,O=!k&&e==="scroll",a=k?m!==null?m+"Capture":null:m;k=[];for(var c=f,p;c!==null;){p=c;var g=p.stateNode;if(p.tag===5&&g!==null&&(p=g,a!==null&&(g=Fn(c,a),g!=null&&k.push(Qn(c,g,p)))),O)break;c=c.return}0<k.length&&(m=new S(m,w,null,n,v),h.push({event:m,listeners:k}))}}if(!(t&7)){e:{if(m=e==="mouseover"||e==="pointerover",S=e==="mouseout"||e==="pointerout",m&&n!==oi&&(w=n.relatedTarget||n.fromElement)&&(Ct(w)||w[Ye]))break e;if((S||m)&&(m=v.window===v?v:(m=v.ownerDocument)?m.defaultView||m.parentWindow:window,S?(w=n.relatedTarget||n.toElement,S=f,w=w?Ct(w):null,w!==null&&(O=It(w),w!==O||w.tag!==5&&w.tag!==6)&&(w=null)):(S=null,w=f),S!==w)){if(k=qu,g="onMouseLeave",a="onMouseEnter",c="mouse",(e==="pointerout"||e==="pointerover")&&(k=eo,g="onPointerLeave",a="onPointerEnter",c="pointer"),O=S==null?m:Qt(S),p=w==null?m:Qt(w),m=new k(g,c+"leave",S,n,v),m.target=O,m.relatedTarget=p,g=null,Ct(v)===f&&(k=new k(a,c+"enter",w,n,v),k.target=p,k.relatedTarget=O,g=k),O=g,S&&w)t:{for(k=S,a=w,c=0,p=k;p;p=$t(p))c++;for(p=0,g=a;g;g=$t(g))p++;for(;0<c-p;)k=$t(k),c--;for(;0<p-c;)a=$t(a),p--;for(;c--;){if(k===a||a!==null&&k===a.alternate)break t;k=$t(k),a=$t(a)}k=null}else k=null;S!==null&&fo(h,m,S,k,!1),w!==null&&O!==null&&fo(h,O,w,k,!0)}}e:{if(m=f?Qt(f):window,S=m.nodeName&&m.nodeName.toLowerCase(),S==="select"||S==="input"&&m.type==="file")var N=Mf;else if(ro(m))if(Hs)N=$f;else{N=If;var T=Df}else(S=m.nodeName)&&S.toLowerCase()==="input"&&(m.type==="checkbox"||m.type==="radio")&&(N=Ff);if(N&&(N=N(e,f))){Bs(h,N,n,v);break e}T&&T(e,m,f),e==="focusout"&&(T=m._wrapperState)&&T.controlled&&m.type==="number"&&ni(m,"number",m.value)}switch(T=f?Qt(f):window,e){case"focusin":(ro(T)||T.contentEditable==="true")&&(Bt=T,mi=f,zn=null);break;case"focusout":zn=mi=Bt=null;break;case"mousedown":hi=!0;break;case"contextmenu":case"mouseup":case"dragend":hi=!1,so(h,n,v);break;case"selectionchange":if(Vf)break;case"keydown":case"keyup":so(h,n,v)}var _;if(uu)e:{switch(e){case"compositionstart":var P="onCompositionStart";break e;case"compositionend":P="onCompositionEnd";break e;case"compositionupdate":P="onCompositionUpdate";break e}P=void 0}else Vt?As(e,n)&&(P="onCompositionEnd"):e==="keydown"&&n.keyCode===229&&(P="onCompositionStart");P&&(Us&&n.locale!=="ko"&&(Vt||P!=="onCompositionStart"?P==="onCompositionEnd"&&Vt&&(_=$s()):(nt=v,ru="value"in nt?nt.value:nt.textContent,Vt=!0)),T=Hr(f,P),0<T.length&&(P=new bu(P,e,null,n,v),h.push({event:P,listeners:T}),_?P.data=_:(_=Vs(n),_!==null&&(P.data=_)))),(_=Tf?zf(e,n):Lf(e,n))&&(f=Hr(f,"onBeforeInput"),0<f.length&&(v=new bu("onBeforeInput","beforeinput",null,n,v),h.push({event:v,listeners:f}),v.data=_))}bs(h,t)})}function Qn(e,t,n){return{instance:e,listener:t,currentTarget:n}}function Hr(e,t){for(var n=t+"Capture",r=[];e!==null;){var l=e,i=l.stateNode;l.tag===5&&i!==null&&(l=i,i=Fn(e,n),i!=null&&r.unshift(Qn(e,i,l)),i=Fn(e,t),i!=null&&r.push(Qn(e,i,l))),e=e.return}return r}function $t(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5);return e||null}function fo(e,t,n,r,l){for(var i=t._reactName,u=[];n!==null&&n!==r;){var o=n,s=o.alternate,f=o.stateNode;if(s!==null&&s===r)break;o.tag===5&&f!==null&&(o=f,l?(s=Fn(n,i),s!=null&&u.unshift(Qn(n,s,o))):l||(s=Fn(n,i),s!=null&&u.push(Qn(n,s,o)))),n=n.return}u.length!==0&&e.push({event:t,listeners:u})}var Wf=/\r\n?/g,Kf=/\u0000|\uFFFD/g;function po(e){return(typeof e=="string"?e:""+e).replace(Wf,`
|
|
38
38
|
`).replace(Kf,"")}function vr(e,t,n){if(t=po(t),po(e)!==t&&n)throw Error(x(425))}function Qr(){}var vi=null,gi=null;function yi(e,t){return e==="textarea"||e==="noscript"||typeof t.children=="string"||typeof t.children=="number"||typeof t.dangerouslySetInnerHTML=="object"&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var ki=typeof setTimeout=="function"?setTimeout:void 0,Yf=typeof clearTimeout=="function"?clearTimeout:void 0,mo=typeof Promise=="function"?Promise:void 0,Xf=typeof queueMicrotask=="function"?queueMicrotask:typeof mo<"u"?function(e){return mo.resolve(null).then(e).catch(Gf)}:ki;function Gf(e){setTimeout(function(){throw e})}function Ul(e,t){var n=t,r=0;do{var l=n.nextSibling;if(e.removeChild(n),l&&l.nodeType===8)if(n=l.data,n==="/$"){if(r===0){e.removeChild(l),An(t);return}r--}else n!=="$"&&n!=="$?"&&n!=="$!"||r++;n=l}while(n);An(t)}function ot(e){for(;e!=null;e=e.nextSibling){var t=e.nodeType;if(t===1||t===3)break;if(t===8){if(t=e.data,t==="$"||t==="$!"||t==="$?")break;if(t==="/$")return null}}return e}function ho(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n==="$"||n==="$!"||n==="$?"){if(t===0)return e;t--}else n==="/$"&&t++}e=e.previousSibling}return null}var pn=Math.random().toString(36).slice(2),$e="__reactFiber$"+pn,Wn="__reactProps$"+pn,Ye="__reactContainer$"+pn,wi="__reactEvents$"+pn,Zf="__reactListeners$"+pn,Jf="__reactHandles$"+pn;function Ct(e){var t=e[$e];if(t)return t;for(var n=e.parentNode;n;){if(t=n[Ye]||n[$e]){if(n=t.alternate,t.child!==null||n!==null&&n.child!==null)for(e=ho(e);e!==null;){if(n=e[$e])return n;e=ho(e)}return t}e=n,n=e.parentNode}return null}function tr(e){return e=e[$e]||e[Ye],!e||e.tag!==5&&e.tag!==6&&e.tag!==13&&e.tag!==3?null:e}function Qt(e){if(e.tag===5||e.tag===6)return e.stateNode;throw Error(x(33))}function fl(e){return e[Wn]||null}var Si=[],Wt=-1;function ht(e){return{current:e}}function V(e){0>Wt||(e.current=Si[Wt],Si[Wt]=null,Wt--)}function $(e,t){Wt++,Si[Wt]=e.current,e.current=t}var pt={},oe=ht(pt),me=ht(!1),zt=pt;function ln(e,t){var n=e.type.contextTypes;if(!n)return pt;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var l={},i;for(i in n)l[i]=t[i];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=l),l}function he(e){return e=e.childContextTypes,e!=null}function Wr(){V(me),V(oe)}function vo(e,t,n){if(oe.current!==pt)throw Error(x(168));$(oe,t),$(me,n)}function ta(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,typeof r.getChildContext!="function")return n;r=r.getChildContext();for(var l in r)if(!(l in t))throw Error(x(108,Mc(e)||"Unknown",l));return W({},n,r)}function Kr(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||pt,zt=oe.current,$(oe,e),$(me,me.current),!0}function go(e,t,n){var r=e.stateNode;if(!r)throw Error(x(169));n?(e=ta(e,t,zt),r.__reactInternalMemoizedMergedChildContext=e,V(me),V(oe),$(oe,e)):V(me),$(me,n)}var Be=null,dl=!1,Al=!1;function na(e){Be===null?Be=[e]:Be.push(e)}function qf(e){dl=!0,na(e)}function vt(){if(!Al&&Be!==null){Al=!0;var e=0,t=F;try{var n=Be;for(F=1;e<n.length;e++){var r=n[e];do r=r(!0);while(r!==null)}Be=null,dl=!1}catch(l){throw Be!==null&&(Be=Be.slice(e+1)),_s(bi,vt),l}finally{F=t,Al=!1}}return null}var Kt=[],Yt=0,Yr=null,Xr=0,Ne=[],Ee=0,Lt=null,He=1,Qe="";function Nt(e,t){Kt[Yt++]=Xr,Kt[Yt++]=Yr,Yr=e,Xr=t}function ra(e,t,n){Ne[Ee++]=He,Ne[Ee++]=Qe,Ne[Ee++]=Lt,Lt=e;var r=He;e=Qe;var l=32-Oe(r)-1;r&=~(1<<l),n+=1;var i=32-Oe(t)+l;if(30<i){var u=l-l%5;i=(r&(1<<u)-1).toString(32),r>>=u,l-=u,He=1<<32-Oe(t)+l|n<<l|r,Qe=i+e}else He=1<<i|n<<l|r,Qe=e}function su(e){e.return!==null&&(Nt(e,1),ra(e,1,0))}function au(e){for(;e===Yr;)Yr=Kt[--Yt],Kt[Yt]=null,Xr=Kt[--Yt],Kt[Yt]=null;for(;e===Lt;)Lt=Ne[--Ee],Ne[Ee]=null,Qe=Ne[--Ee],Ne[Ee]=null,He=Ne[--Ee],Ne[Ee]=null}var ke=null,ye=null,B=!1,Re=null;function la(e,t){var n=Ce(5,null,null,0);n.elementType="DELETED",n.stateNode=t,n.return=e,t=e.deletions,t===null?(e.deletions=[n],e.flags|=16):t.push(n)}function yo(e,t){switch(e.tag){case 5:var n=e.type;return t=t.nodeType!==1||n.toLowerCase()!==t.nodeName.toLowerCase()?null:t,t!==null?(e.stateNode=t,ke=e,ye=ot(t.firstChild),!0):!1;case 6:return t=e.pendingProps===""||t.nodeType!==3?null:t,t!==null?(e.stateNode=t,ke=e,ye=null,!0):!1;case 13:return t=t.nodeType!==8?null:t,t!==null?(n=Lt!==null?{id:He,overflow:Qe}:null,e.memoizedState={dehydrated:t,treeContext:n,retryLane:1073741824},n=Ce(18,null,null,0),n.stateNode=t,n.return=e,e.child=n,ke=e,ye=null,!0):!1;default:return!1}}function xi(e){return(e.mode&1)!==0&&(e.flags&128)===0}function Ni(e){if(B){var t=ye;if(t){var n=t;if(!yo(e,t)){if(xi(e))throw Error(x(418));t=ot(n.nextSibling);var r=ke;t&&yo(e,t)?la(r,n):(e.flags=e.flags&-4097|2,B=!1,ke=e)}}else{if(xi(e))throw Error(x(418));e.flags=e.flags&-4097|2,B=!1,ke=e}}}function ko(e){for(e=e.return;e!==null&&e.tag!==5&&e.tag!==3&&e.tag!==13;)e=e.return;ke=e}function gr(e){if(e!==ke)return!1;if(!B)return ko(e),B=!0,!1;var t;if((t=e.tag!==3)&&!(t=e.tag!==5)&&(t=e.type,t=t!=="head"&&t!=="body"&&!yi(e.type,e.memoizedProps)),t&&(t=ye)){if(xi(e))throw ia(),Error(x(418));for(;t;)la(e,t),t=ot(t.nextSibling)}if(ko(e),e.tag===13){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(x(317));e:{for(e=e.nextSibling,t=0;e;){if(e.nodeType===8){var n=e.data;if(n==="/$"){if(t===0){ye=ot(e.nextSibling);break e}t--}else n!=="$"&&n!=="$!"&&n!=="$?"||t++}e=e.nextSibling}ye=null}}else ye=ke?ot(e.stateNode.nextSibling):null;return!0}function ia(){for(var e=ye;e;)e=ot(e.nextSibling)}function un(){ye=ke=null,B=!1}function cu(e){Re===null?Re=[e]:Re.push(e)}var bf=Ze.ReactCurrentBatchConfig;function kn(e,t,n){if(e=n.ref,e!==null&&typeof e!="function"&&typeof e!="object"){if(n._owner){if(n=n._owner,n){if(n.tag!==1)throw Error(x(309));var r=n.stateNode}if(!r)throw Error(x(147,e));var l=r,i=""+e;return t!==null&&t.ref!==null&&typeof t.ref=="function"&&t.ref._stringRef===i?t.ref:(t=function(u){var o=l.refs;u===null?delete o[i]:o[i]=u},t._stringRef=i,t)}if(typeof e!="string")throw Error(x(284));if(!n._owner)throw Error(x(290,e))}return e}function yr(e,t){throw e=Object.prototype.toString.call(t),Error(x(31,e==="[object Object]"?"object with keys {"+Object.keys(t).join(", ")+"}":e))}function wo(e){var t=e._init;return t(e._payload)}function ua(e){function t(a,c){if(e){var p=a.deletions;p===null?(a.deletions=[c],a.flags|=16):p.push(c)}}function n(a,c){if(!e)return null;for(;c!==null;)t(a,c),c=c.sibling;return null}function r(a,c){for(a=new Map;c!==null;)c.key!==null?a.set(c.key,c):a.set(c.index,c),c=c.sibling;return a}function l(a,c){return a=ft(a,c),a.index=0,a.sibling=null,a}function i(a,c,p){return a.index=p,e?(p=a.alternate,p!==null?(p=p.index,p<c?(a.flags|=2,c):p):(a.flags|=2,c)):(a.flags|=1048576,c)}function u(a){return e&&a.alternate===null&&(a.flags|=2),a}function o(a,c,p,g){return c===null||c.tag!==6?(c=Yl(p,a.mode,g),c.return=a,c):(c=l(c,p),c.return=a,c)}function s(a,c,p,g){var N=p.type;return N===At?v(a,c,p.props.children,g,p.key):c!==null&&(c.elementType===N||typeof N=="object"&&N!==null&&N.$$typeof===qe&&wo(N)===c.type)?(g=l(c,p.props),g.ref=kn(a,c,p),g.return=a,g):(g=Dr(p.type,p.key,p.props,null,a.mode,g),g.ref=kn(a,c,p),g.return=a,g)}function f(a,c,p,g){return c===null||c.tag!==4||c.stateNode.containerInfo!==p.containerInfo||c.stateNode.implementation!==p.implementation?(c=Xl(p,a.mode,g),c.return=a,c):(c=l(c,p.children||[]),c.return=a,c)}function v(a,c,p,g,N){return c===null||c.tag!==7?(c=Tt(p,a.mode,g,N),c.return=a,c):(c=l(c,p),c.return=a,c)}function h(a,c,p){if(typeof c=="string"&&c!==""||typeof c=="number")return c=Yl(""+c,a.mode,p),c.return=a,c;if(typeof c=="object"&&c!==null){switch(c.$$typeof){case or:return p=Dr(c.type,c.key,c.props,null,a.mode,p),p.ref=kn(a,null,c),p.return=a,p;case Ut:return c=Xl(c,a.mode,p),c.return=a,c;case qe:var g=c._init;return h(a,g(c._payload),p)}if(Nn(c)||mn(c))return c=Tt(c,a.mode,p,null),c.return=a,c;yr(a,c)}return null}function m(a,c,p,g){var N=c!==null?c.key:null;if(typeof p=="string"&&p!==""||typeof p=="number")return N!==null?null:o(a,c,""+p,g);if(typeof p=="object"&&p!==null){switch(p.$$typeof){case or:return p.key===N?s(a,c,p,g):null;case Ut:return p.key===N?f(a,c,p,g):null;case qe:return N=p._init,m(a,c,N(p._payload),g)}if(Nn(p)||mn(p))return N!==null?null:v(a,c,p,g,null);yr(a,p)}return null}function S(a,c,p,g,N){if(typeof g=="string"&&g!==""||typeof g=="number")return a=a.get(p)||null,o(c,a,""+g,N);if(typeof g=="object"&&g!==null){switch(g.$$typeof){case or:return a=a.get(g.key===null?p:g.key)||null,s(c,a,g,N);case Ut:return a=a.get(g.key===null?p:g.key)||null,f(c,a,g,N);case qe:var T=g._init;return S(a,c,p,T(g._payload),N)}if(Nn(g)||mn(g))return a=a.get(p)||null,v(c,a,g,N,null);yr(c,g)}return null}function w(a,c,p,g){for(var N=null,T=null,_=c,P=c=0,E=null;_!==null&&P<p.length;P++){_.index>P?(E=_,_=null):E=_.sibling;var C=m(a,_,p[P],g);if(C===null){_===null&&(_=E);break}e&&_&&C.alternate===null&&t(a,_),c=i(C,c,P),T===null?N=C:T.sibling=C,T=C,_=E}if(P===p.length)return n(a,_),B&&Nt(a,P),N;if(_===null){for(;P<p.length;P++)_=h(a,p[P],g),_!==null&&(c=i(_,c,P),T===null?N=_:T.sibling=_,T=_);return B&&Nt(a,P),N}for(_=r(a,_);P<p.length;P++)E=S(_,a,P,p[P],g),E!==null&&(e&&E.alternate!==null&&_.delete(E.key===null?P:E.key),c=i(E,c,P),T===null?N=E:T.sibling=E,T=E);return e&&_.forEach(function(I){return t(a,I)}),B&&Nt(a,P),N}function k(a,c,p,g){var N=mn(p);if(typeof N!="function")throw Error(x(150));if(p=N.call(p),p==null)throw Error(x(151));for(var T=N=null,_=c,P=c=0,E=null,C=p.next();_!==null&&!C.done;P++,C=p.next()){_.index>P?(E=_,_=null):E=_.sibling;var I=m(a,_,C.value,g);if(I===null){_===null&&(_=E);break}e&&_&&I.alternate===null&&t(a,_),c=i(I,c,P),T===null?N=I:T.sibling=I,T=I,_=E}if(C.done)return n(a,_),B&&Nt(a,P),N;if(_===null){for(;!C.done;P++,C=p.next())C=h(a,C.value,g),C!==null&&(c=i(C,c,P),T===null?N=C:T.sibling=C,T=C);return B&&Nt(a,P),N}for(_=r(a,_);!C.done;P++,C=p.next())C=S(_,a,P,C.value,g),C!==null&&(e&&C.alternate!==null&&_.delete(C.key===null?P:C.key),c=i(C,c,P),T===null?N=C:T.sibling=C,T=C);return e&&_.forEach(function(gt){return t(a,gt)}),B&&Nt(a,P),N}function O(a,c,p,g){if(typeof p=="object"&&p!==null&&p.type===At&&p.key===null&&(p=p.props.children),typeof p=="object"&&p!==null){switch(p.$$typeof){case or:e:{for(var N=p.key,T=c;T!==null;){if(T.key===N){if(N=p.type,N===At){if(T.tag===7){n(a,T.sibling),c=l(T,p.props.children),c.return=a,a=c;break e}}else if(T.elementType===N||typeof N=="object"&&N!==null&&N.$$typeof===qe&&wo(N)===T.type){n(a,T.sibling),c=l(T,p.props),c.ref=kn(a,T,p),c.return=a,a=c;break e}n(a,T);break}else t(a,T);T=T.sibling}p.type===At?(c=Tt(p.props.children,a.mode,g,p.key),c.return=a,a=c):(g=Dr(p.type,p.key,p.props,null,a.mode,g),g.ref=kn(a,c,p),g.return=a,a=g)}return u(a);case Ut:e:{for(T=p.key;c!==null;){if(c.key===T)if(c.tag===4&&c.stateNode.containerInfo===p.containerInfo&&c.stateNode.implementation===p.implementation){n(a,c.sibling),c=l(c,p.children||[]),c.return=a,a=c;break e}else{n(a,c);break}else t(a,c);c=c.sibling}c=Xl(p,a.mode,g),c.return=a,a=c}return u(a);case qe:return T=p._init,O(a,c,T(p._payload),g)}if(Nn(p))return w(a,c,p,g);if(mn(p))return k(a,c,p,g);yr(a,p)}return typeof p=="string"&&p!==""||typeof p=="number"?(p=""+p,c!==null&&c.tag===6?(n(a,c.sibling),c=l(c,p),c.return=a,a=c):(n(a,c),c=Yl(p,a.mode,g),c.return=a,a=c),u(a)):n(a,c)}return O}var on=ua(!0),oa=ua(!1),Gr=ht(null),Zr=null,Xt=null,fu=null;function du(){fu=Xt=Zr=null}function pu(e){var t=Gr.current;V(Gr),e._currentValue=t}function Ei(e,t,n){for(;e!==null;){var r=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,r!==null&&(r.childLanes|=t)):r!==null&&(r.childLanes&t)!==t&&(r.childLanes|=t),e===n)break;e=e.return}}function tn(e,t){Zr=e,fu=Xt=null,e=e.dependencies,e!==null&&e.firstContext!==null&&(e.lanes&t&&(pe=!0),e.firstContext=null)}function _e(e){var t=e._currentValue;if(fu!==e)if(e={context:e,memoizedValue:t,next:null},Xt===null){if(Zr===null)throw Error(x(308));Xt=e,Zr.dependencies={lanes:0,firstContext:e}}else Xt=Xt.next=e;return t}var jt=null;function mu(e){jt===null?jt=[e]:jt.push(e)}function sa(e,t,n,r){var l=t.interleaved;return l===null?(n.next=n,mu(t)):(n.next=l.next,l.next=n),t.interleaved=n,Xe(e,r)}function Xe(e,t){e.lanes|=t;var n=e.alternate;for(n!==null&&(n.lanes|=t),n=e,e=e.return;e!==null;)e.childLanes|=t,n=e.alternate,n!==null&&(n.childLanes|=t),n=e,e=e.return;return n.tag===3?n.stateNode:null}var be=!1;function hu(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function aa(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function We(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function st(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,D&2){var l=r.pending;return l===null?t.next=t:(t.next=l.next,l.next=t),r.pending=t,Xe(e,n)}return l=r.interleaved,l===null?(t.next=t,mu(r)):(t.next=l.next,l.next=t),r.interleaved=t,Xe(e,n)}function Tr(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194240)!==0)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,eu(e,n)}}function So(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var l=null,i=null;if(n=n.firstBaseUpdate,n!==null){do{var u={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};i===null?l=i=u:i=i.next=u,n=n.next}while(n!==null);i===null?l=i=t:i=i.next=t}else l=i=t;n={baseState:r.baseState,firstBaseUpdate:l,lastBaseUpdate:i,shared:r.shared,effects:r.effects},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function Jr(e,t,n,r){var l=e.updateQueue;be=!1;var i=l.firstBaseUpdate,u=l.lastBaseUpdate,o=l.shared.pending;if(o!==null){l.shared.pending=null;var s=o,f=s.next;s.next=null,u===null?i=f:u.next=f,u=s;var v=e.alternate;v!==null&&(v=v.updateQueue,o=v.lastBaseUpdate,o!==u&&(o===null?v.firstBaseUpdate=f:o.next=f,v.lastBaseUpdate=s))}if(i!==null){var h=l.baseState;u=0,v=f=s=null,o=i;do{var m=o.lane,S=o.eventTime;if((r&m)===m){v!==null&&(v=v.next={eventTime:S,lane:0,tag:o.tag,payload:o.payload,callback:o.callback,next:null});e:{var w=e,k=o;switch(m=t,S=n,k.tag){case 1:if(w=k.payload,typeof w=="function"){h=w.call(S,h,m);break e}h=w;break e;case 3:w.flags=w.flags&-65537|128;case 0:if(w=k.payload,m=typeof w=="function"?w.call(S,h,m):w,m==null)break e;h=W({},h,m);break e;case 2:be=!0}}o.callback!==null&&o.lane!==0&&(e.flags|=64,m=l.effects,m===null?l.effects=[o]:m.push(o))}else S={eventTime:S,lane:m,tag:o.tag,payload:o.payload,callback:o.callback,next:null},v===null?(f=v=S,s=h):v=v.next=S,u|=m;if(o=o.next,o===null){if(o=l.shared.pending,o===null)break;m=o,o=m.next,m.next=null,l.lastBaseUpdate=m,l.shared.pending=null}}while(!0);if(v===null&&(s=h),l.baseState=s,l.firstBaseUpdate=f,l.lastBaseUpdate=v,t=l.shared.interleaved,t!==null){l=t;do u|=l.lane,l=l.next;while(l!==t)}else i===null&&(l.shared.lanes=0);Ot|=u,e.lanes=u,e.memoizedState=h}}function xo(e,t,n){if(e=t.effects,t.effects=null,e!==null)for(t=0;t<e.length;t++){var r=e[t],l=r.callback;if(l!==null){if(r.callback=null,r=n,typeof l!="function")throw Error(x(191,l));l.call(r)}}}var nr={},Ae=ht(nr),Kn=ht(nr),Yn=ht(nr);function _t(e){if(e===nr)throw Error(x(174));return e}function vu(e,t){switch($(Yn,t),$(Kn,e),$(Ae,nr),e=t.nodeType,e){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:li(null,"");break;default:e=e===8?t.parentNode:t,t=e.namespaceURI||null,e=e.tagName,t=li(t,e)}V(Ae),$(Ae,t)}function sn(){V(Ae),V(Kn),V(Yn)}function ca(e){_t(Yn.current);var t=_t(Ae.current),n=li(t,e.type);t!==n&&($(Kn,e),$(Ae,n))}function gu(e){Kn.current===e&&(V(Ae),V(Kn))}var H=ht(0);function qr(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||n.data==="$?"||n.data==="$!"))return t}else if(t.tag===19&&t.memoizedProps.revealOrder!==void 0){if(t.flags&128)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var Vl=[];function yu(){for(var e=0;e<Vl.length;e++)Vl[e]._workInProgressVersionPrimary=null;Vl.length=0}var zr=Ze.ReactCurrentDispatcher,Bl=Ze.ReactCurrentBatchConfig,Rt=0,Q=null,G=null,q=null,br=!1,Ln=!1,Xn=0,ed=0;function le(){throw Error(x(321))}function ku(e,t){if(t===null)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!De(e[n],t[n]))return!1;return!0}function wu(e,t,n,r,l,i){if(Rt=i,Q=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,zr.current=e===null||e.memoizedState===null?ld:id,e=n(r,l),Ln){i=0;do{if(Ln=!1,Xn=0,25<=i)throw Error(x(301));i+=1,q=G=null,t.updateQueue=null,zr.current=ud,e=n(r,l)}while(Ln)}if(zr.current=el,t=G!==null&&G.next!==null,Rt=0,q=G=Q=null,br=!1,t)throw Error(x(300));return e}function Su(){var e=Xn!==0;return Xn=0,e}function Fe(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return q===null?Q.memoizedState=q=e:q=q.next=e,q}function Pe(){if(G===null){var e=Q.alternate;e=e!==null?e.memoizedState:null}else e=G.next;var t=q===null?Q.memoizedState:q.next;if(t!==null)q=t,G=e;else{if(e===null)throw Error(x(310));G=e,e={memoizedState:G.memoizedState,baseState:G.baseState,baseQueue:G.baseQueue,queue:G.queue,next:null},q===null?Q.memoizedState=q=e:q=q.next=e}return q}function Gn(e,t){return typeof t=="function"?t(e):t}function Hl(e){var t=Pe(),n=t.queue;if(n===null)throw Error(x(311));n.lastRenderedReducer=e;var r=G,l=r.baseQueue,i=n.pending;if(i!==null){if(l!==null){var u=l.next;l.next=i.next,i.next=u}r.baseQueue=l=i,n.pending=null}if(l!==null){i=l.next,r=r.baseState;var o=u=null,s=null,f=i;do{var v=f.lane;if((Rt&v)===v)s!==null&&(s=s.next={lane:0,action:f.action,hasEagerState:f.hasEagerState,eagerState:f.eagerState,next:null}),r=f.hasEagerState?f.eagerState:e(r,f.action);else{var h={lane:v,action:f.action,hasEagerState:f.hasEagerState,eagerState:f.eagerState,next:null};s===null?(o=s=h,u=r):s=s.next=h,Q.lanes|=v,Ot|=v}f=f.next}while(f!==null&&f!==i);s===null?u=r:s.next=o,De(r,t.memoizedState)||(pe=!0),t.memoizedState=r,t.baseState=u,t.baseQueue=s,n.lastRenderedState=r}if(e=n.interleaved,e!==null){l=e;do i=l.lane,Q.lanes|=i,Ot|=i,l=l.next;while(l!==e)}else l===null&&(n.lanes=0);return[t.memoizedState,n.dispatch]}function Ql(e){var t=Pe(),n=t.queue;if(n===null)throw Error(x(311));n.lastRenderedReducer=e;var r=n.dispatch,l=n.pending,i=t.memoizedState;if(l!==null){n.pending=null;var u=l=l.next;do i=e(i,u.action),u=u.next;while(u!==l);De(i,t.memoizedState)||(pe=!0),t.memoizedState=i,t.baseQueue===null&&(t.baseState=i),n.lastRenderedState=i}return[i,r]}function fa(){}function da(e,t){var n=Q,r=Pe(),l=t(),i=!De(r.memoizedState,l);if(i&&(r.memoizedState=l,pe=!0),r=r.queue,xu(ha.bind(null,n,r,e),[e]),r.getSnapshot!==t||i||q!==null&&q.memoizedState.tag&1){if(n.flags|=2048,Zn(9,ma.bind(null,n,r,l,t),void 0,null),b===null)throw Error(x(349));Rt&30||pa(n,t,l)}return l}function pa(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},t=Q.updateQueue,t===null?(t={lastEffect:null,stores:null},Q.updateQueue=t,t.stores=[e]):(n=t.stores,n===null?t.stores=[e]:n.push(e))}function ma(e,t,n,r){t.value=n,t.getSnapshot=r,va(t)&&ga(e)}function ha(e,t,n){return n(function(){va(t)&&ga(e)})}function va(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!De(e,n)}catch{return!0}}function ga(e){var t=Xe(e,1);t!==null&&Me(t,e,1,-1)}function No(e){var t=Fe();return typeof e=="function"&&(e=e()),t.memoizedState=t.baseState=e,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:Gn,lastRenderedState:e},t.queue=e,e=e.dispatch=rd.bind(null,Q,e),[t.memoizedState,e]}function Zn(e,t,n,r){return e={tag:e,create:t,destroy:n,deps:r,next:null},t=Q.updateQueue,t===null?(t={lastEffect:null,stores:null},Q.updateQueue=t,t.lastEffect=e.next=e):(n=t.lastEffect,n===null?t.lastEffect=e.next=e:(r=n.next,n.next=e,e.next=r,t.lastEffect=e)),e}function ya(){return Pe().memoizedState}function Lr(e,t,n,r){var l=Fe();Q.flags|=e,l.memoizedState=Zn(1|t,n,void 0,r===void 0?null:r)}function pl(e,t,n,r){var l=Pe();r=r===void 0?null:r;var i=void 0;if(G!==null){var u=G.memoizedState;if(i=u.destroy,r!==null&&ku(r,u.deps)){l.memoizedState=Zn(t,n,i,r);return}}Q.flags|=e,l.memoizedState=Zn(1|t,n,i,r)}function Eo(e,t){return Lr(8390656,8,e,t)}function xu(e,t){return pl(2048,8,e,t)}function ka(e,t){return pl(4,2,e,t)}function wa(e,t){return pl(4,4,e,t)}function Sa(e,t){if(typeof t=="function")return e=e(),t(e),function(){t(null)};if(t!=null)return e=e(),t.current=e,function(){t.current=null}}function xa(e,t,n){return n=n!=null?n.concat([e]):null,pl(4,4,Sa.bind(null,t,e),n)}function Nu(){}function Na(e,t){var n=Pe();t=t===void 0?null:t;var r=n.memoizedState;return r!==null&&t!==null&&ku(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function Ea(e,t){var n=Pe();t=t===void 0?null:t;var r=n.memoizedState;return r!==null&&t!==null&&ku(t,r[1])?r[0]:(e=e(),n.memoizedState=[e,t],e)}function Ca(e,t,n){return Rt&21?(De(n,t)||(n=zs(),Q.lanes|=n,Ot|=n,e.baseState=!0),t):(e.baseState&&(e.baseState=!1,pe=!0),e.memoizedState=n)}function td(e,t){var n=F;F=n!==0&&4>n?n:4,e(!0);var r=Bl.transition;Bl.transition={};try{e(!1),t()}finally{F=n,Bl.transition=r}}function ja(){return Pe().memoizedState}function nd(e,t,n){var r=ct(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},_a(e))Pa(t,n);else if(n=sa(e,t,n,r),n!==null){var l=ae();Me(n,e,r,l),Ta(n,t,r)}}function rd(e,t,n){var r=ct(e),l={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(_a(e))Pa(t,l);else{var i=e.alternate;if(e.lanes===0&&(i===null||i.lanes===0)&&(i=t.lastRenderedReducer,i!==null))try{var u=t.lastRenderedState,o=i(u,n);if(l.hasEagerState=!0,l.eagerState=o,De(o,u)){var s=t.interleaved;s===null?(l.next=l,mu(t)):(l.next=s.next,s.next=l),t.interleaved=l;return}}catch{}finally{}n=sa(e,t,l,r),n!==null&&(l=ae(),Me(n,e,r,l),Ta(n,t,r))}}function _a(e){var t=e.alternate;return e===Q||t!==null&&t===Q}function Pa(e,t){Ln=br=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Ta(e,t,n){if(n&4194240){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,eu(e,n)}}var el={readContext:_e,useCallback:le,useContext:le,useEffect:le,useImperativeHandle:le,useInsertionEffect:le,useLayoutEffect:le,useMemo:le,useReducer:le,useRef:le,useState:le,useDebugValue:le,useDeferredValue:le,useTransition:le,useMutableSource:le,useSyncExternalStore:le,useId:le,unstable_isNewReconciler:!1},ld={readContext:_e,useCallback:function(e,t){return Fe().memoizedState=[e,t===void 0?null:t],e},useContext:_e,useEffect:Eo,useImperativeHandle:function(e,t,n){return n=n!=null?n.concat([e]):null,Lr(4194308,4,Sa.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Lr(4194308,4,e,t)},useInsertionEffect:function(e,t){return Lr(4,2,e,t)},useMemo:function(e,t){var n=Fe();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=Fe();return t=n!==void 0?n(t):t,r.memoizedState=r.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},r.queue=e,e=e.dispatch=nd.bind(null,Q,e),[r.memoizedState,e]},useRef:function(e){var t=Fe();return e={current:e},t.memoizedState=e},useState:No,useDebugValue:Nu,useDeferredValue:function(e){return Fe().memoizedState=e},useTransition:function(){var e=No(!1),t=e[0];return e=td.bind(null,e[1]),Fe().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=Q,l=Fe();if(B){if(n===void 0)throw Error(x(407));n=n()}else{if(n=t(),b===null)throw Error(x(349));Rt&30||pa(r,t,n)}l.memoizedState=n;var i={value:n,getSnapshot:t};return l.queue=i,Eo(ha.bind(null,r,i,e),[e]),r.flags|=2048,Zn(9,ma.bind(null,r,i,n,t),void 0,null),n},useId:function(){var e=Fe(),t=b.identifierPrefix;if(B){var n=Qe,r=He;n=(r&~(1<<32-Oe(r)-1)).toString(32)+n,t=":"+t+"R"+n,n=Xn++,0<n&&(t+="H"+n.toString(32)),t+=":"}else n=ed++,t=":"+t+"r"+n.toString(32)+":";return e.memoizedState=t},unstable_isNewReconciler:!1},id={readContext:_e,useCallback:Na,useContext:_e,useEffect:xu,useImperativeHandle:xa,useInsertionEffect:ka,useLayoutEffect:wa,useMemo:Ea,useReducer:Hl,useRef:ya,useState:function(){return Hl(Gn)},useDebugValue:Nu,useDeferredValue:function(e){var t=Pe();return Ca(t,G.memoizedState,e)},useTransition:function(){var e=Hl(Gn)[0],t=Pe().memoizedState;return[e,t]},useMutableSource:fa,useSyncExternalStore:da,useId:ja,unstable_isNewReconciler:!1},ud={readContext:_e,useCallback:Na,useContext:_e,useEffect:xu,useImperativeHandle:xa,useInsertionEffect:ka,useLayoutEffect:wa,useMemo:Ea,useReducer:Ql,useRef:ya,useState:function(){return Ql(Gn)},useDebugValue:Nu,useDeferredValue:function(e){var t=Pe();return G===null?t.memoizedState=e:Ca(t,G.memoizedState,e)},useTransition:function(){var e=Ql(Gn)[0],t=Pe().memoizedState;return[e,t]},useMutableSource:fa,useSyncExternalStore:da,useId:ja,unstable_isNewReconciler:!1};function ze(e,t){if(e&&e.defaultProps){t=W({},t),e=e.defaultProps;for(var n in e)t[n]===void 0&&(t[n]=e[n]);return t}return t}function Ci(e,t,n,r){t=e.memoizedState,n=n(r,t),n=n==null?t:W({},t,n),e.memoizedState=n,e.lanes===0&&(e.updateQueue.baseState=n)}var ml={isMounted:function(e){return(e=e._reactInternals)?It(e)===e:!1},enqueueSetState:function(e,t,n){e=e._reactInternals;var r=ae(),l=ct(e),i=We(r,l);i.payload=t,n!=null&&(i.callback=n),t=st(e,i,l),t!==null&&(Me(t,e,l,r),Tr(t,e,l))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=ae(),l=ct(e),i=We(r,l);i.tag=1,i.payload=t,n!=null&&(i.callback=n),t=st(e,i,l),t!==null&&(Me(t,e,l,r),Tr(t,e,l))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=ae(),r=ct(e),l=We(n,r);l.tag=2,t!=null&&(l.callback=t),t=st(e,l,r),t!==null&&(Me(t,e,r,n),Tr(t,e,r))}};function Co(e,t,n,r,l,i,u){return e=e.stateNode,typeof e.shouldComponentUpdate=="function"?e.shouldComponentUpdate(r,i,u):t.prototype&&t.prototype.isPureReactComponent?!Bn(n,r)||!Bn(l,i):!0}function za(e,t,n){var r=!1,l=pt,i=t.contextType;return typeof i=="object"&&i!==null?i=_e(i):(l=he(t)?zt:oe.current,r=t.contextTypes,i=(r=r!=null)?ln(e,l):pt),t=new t(n,i),e.memoizedState=t.state!==null&&t.state!==void 0?t.state:null,t.updater=ml,e.stateNode=t,t._reactInternals=e,r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=l,e.__reactInternalMemoizedMaskedChildContext=i),t}function jo(e,t,n,r){e=t.state,typeof t.componentWillReceiveProps=="function"&&t.componentWillReceiveProps(n,r),typeof t.UNSAFE_componentWillReceiveProps=="function"&&t.UNSAFE_componentWillReceiveProps(n,r),t.state!==e&&ml.enqueueReplaceState(t,t.state,null)}function ji(e,t,n,r){var l=e.stateNode;l.props=n,l.state=e.memoizedState,l.refs={},hu(e);var i=t.contextType;typeof i=="object"&&i!==null?l.context=_e(i):(i=he(t)?zt:oe.current,l.context=ln(e,i)),l.state=e.memoizedState,i=t.getDerivedStateFromProps,typeof i=="function"&&(Ci(e,t,i,n),l.state=e.memoizedState),typeof t.getDerivedStateFromProps=="function"||typeof l.getSnapshotBeforeUpdate=="function"||typeof l.UNSAFE_componentWillMount!="function"&&typeof l.componentWillMount!="function"||(t=l.state,typeof l.componentWillMount=="function"&&l.componentWillMount(),typeof l.UNSAFE_componentWillMount=="function"&&l.UNSAFE_componentWillMount(),t!==l.state&&ml.enqueueReplaceState(l,l.state,null),Jr(e,n,l,r),l.state=e.memoizedState),typeof l.componentDidMount=="function"&&(e.flags|=4194308)}function an(e,t){try{var n="",r=t;do n+=Oc(r),r=r.return;while(r);var l=n}catch(i){l=`
|
|
39
39
|
Error generating stack: `+i.message+`
|
|
40
|
-
`+i.stack}return{value:e,source:t,stack:l,digest:null}}function Wl(e,t,n){return{value:e,source:null,stack:n??null,digest:t??null}}function _i(e,t){try{console.error(t.value)}catch(n){setTimeout(function(){throw n})}}var od=typeof WeakMap=="function"?WeakMap:Map;function La(e,t,n){n=We(-1,n),n.tag=3,n.payload={element:null};var r=t.value;return n.callback=function(){nl||(nl=!0,Fi=r),_i(e,t)},n}function Ra(e,t,n){n=We(-1,n),n.tag=3;var r=e.type.getDerivedStateFromError;if(typeof r=="function"){var l=t.value;n.payload=function(){return r(l)},n.callback=function(){_i(e,t)}}var i=e.stateNode;return i!==null&&typeof i.componentDidCatch=="function"&&(n.callback=function(){_i(e,t),typeof r!="function"&&(at===null?at=new Set([this]):at.add(this));var u=t.stack;this.componentDidCatch(t.value,{componentStack:u!==null?u:""})}),n}function _o(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new od;var l=new Set;r.set(t,l)}else l=r.get(t),l===void 0&&(l=new Set,r.set(t,l));l.has(n)||(l.add(n),e=Sd.bind(null,e,t,n),t.then(e,e))}function Po(e){do{var t;if((t=e.tag===13)&&(t=e.memoizedState,t=t!==null?t.dehydrated!==null:!0),t)return e;e=e.return}while(e!==null);return null}function To(e,t,n,r,l){return e.mode&1?(e.flags|=65536,e.lanes=l,e):(e===t?e.flags|=65536:(e.flags|=128,n.flags|=131072,n.flags&=-52805,n.tag===1&&(n.alternate===null?n.tag=17:(t=We(-1,1),t.tag=2,st(n,t,1))),n.lanes|=1),e)}var sd=Ze.ReactCurrentOwner,pe=!1;function se(e,t,n,r){t.child=e===null?oa(t,null,n,r):on(t,e.child,n,r)}function zo(e,t,n,r,l){n=n.render;var i=t.ref;return tn(t,l),r=wu(e,t,n,r,i,l),n=Su(),e!==null&&!pe?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~l,Ge(e,t,l)):(B&&n&&su(t),t.flags|=1,se(e,t,r,l),t.child)}function Lo(e,t,n,r,l){if(e===null){var i=n.type;return typeof i=="function"&&!Lu(i)&&i.defaultProps===void 0&&n.compare===null&&n.defaultProps===void 0?(t.tag=15,t.type=i,Oa(e,t,i,r,l)):(e=Dr(n.type,null,r,t,t.mode,l),e.ref=t.ref,e.return=t,t.child=e)}if(i=e.child,!(e.lanes&l)){var u=i.memoizedProps;if(n=n.compare,n=n!==null?n:Bn,n(u,r)&&e.ref===t.ref)return Ge(e,t,l)}return t.flags|=1,e=ft(i,r),e.ref=t.ref,e.return=t,t.child=e}function Oa(e,t,n,r,l){if(e!==null){var i=e.memoizedProps;if(Bn(i,r)&&e.ref===t.ref)if(pe=!1,t.pendingProps=r=i,(e.lanes&l)!==0)e.flags&131072&&(pe=!0);else return t.lanes=e.lanes,Ge(e,t,l)}return Pi(e,t,n,r,l)}function Ma(e,t,n){var r=t.pendingProps,l=r.children,i=e!==null?e.memoizedState:null;if(r.mode==="hidden")if(!(t.mode&1))t.memoizedState={baseLanes:0,cachePool:null,transitions:null},$(Zt,ge),ge|=n;else{if(!(n&1073741824))return e=i!==null?i.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,$(Zt,ge),ge|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},r=i!==null?i.baseLanes:n,$(Zt,ge),ge|=r}else i!==null?(r=i.baseLanes|n,t.memoizedState=null):r=n,$(Zt,ge),ge|=r;return se(e,t,l,n),t.child}function Da(e,t){var n=t.ref;(e===null&&n!==null||e!==null&&e.ref!==n)&&(t.flags|=512,t.flags|=2097152)}function Pi(e,t,n,r,l){var i=he(n)?zt:oe.current;return i=ln(t,i),tn(t,l),n=wu(e,t,n,r,i,l),r=Su(),e!==null&&!pe?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~l,Ge(e,t,l)):(B&&r&&su(t),t.flags|=1,se(e,t,n,l),t.child)}function Ro(e,t,n,r,l){if(he(n)){var i=!0;Kr(t)}else i=!1;if(tn(t,l),t.stateNode===null)Rr(e,t),za(t,n,r),ji(t,n,r,l),r=!0;else if(e===null){var u=t.stateNode,o=t.memoizedProps;u.props=o;var s=u.context,f=n.contextType;typeof f=="object"&&f!==null?f=_e(f):(f=he(n)?zt:oe.current,f=ln(t,f));var v=n.getDerivedStateFromProps,h=typeof v=="function"||typeof u.getSnapshotBeforeUpdate=="function";h||typeof u.UNSAFE_componentWillReceiveProps!="function"&&typeof u.componentWillReceiveProps!="function"||(o!==r||s!==f)&&jo(t,u,r,f),be=!1;var m=t.memoizedState;u.state=m,Jr(t,r,u,l),s=t.memoizedState,o!==r||m!==s||me.current||be?(typeof v=="function"&&(Ci(t,n,v,r),s=t.memoizedState),(o=be||Co(t,n,o,r,m,s,f))?(h||typeof u.UNSAFE_componentWillMount!="function"&&typeof u.componentWillMount!="function"||(typeof u.componentWillMount=="function"&&u.componentWillMount(),typeof u.UNSAFE_componentWillMount=="function"&&u.UNSAFE_componentWillMount()),typeof u.componentDidMount=="function"&&(t.flags|=4194308)):(typeof u.componentDidMount=="function"&&(t.flags|=4194308),t.memoizedProps=r,t.memoizedState=s),u.props=r,u.state=s,u.context=f,r=o):(typeof u.componentDidMount=="function"&&(t.flags|=4194308),r=!1)}else{u=t.stateNode,aa(e,t),o=t.memoizedProps,f=t.type===t.elementType?o:ze(t.type,o),u.props=f,h=t.pendingProps,m=u.context,s=n.contextType,typeof s=="object"&&s!==null?s=_e(s):(s=he(n)?zt:oe.current,s=ln(t,s));var S=n.getDerivedStateFromProps;(v=typeof S=="function"||typeof u.getSnapshotBeforeUpdate=="function")||typeof u.UNSAFE_componentWillReceiveProps!="function"&&typeof u.componentWillReceiveProps!="function"||(o!==h||m!==s)&&jo(t,u,r,s),be=!1,m=t.memoizedState,u.state=m,Jr(t,r,u,l);var w=t.memoizedState;o!==h||m!==w||me.current||be?(typeof S=="function"&&(Ci(t,n,S,r),w=t.memoizedState),(f=be||Co(t,n,f,r,m,w,s)||!1)?(v||typeof u.UNSAFE_componentWillUpdate!="function"&&typeof u.componentWillUpdate!="function"||(typeof u.componentWillUpdate=="function"&&u.componentWillUpdate(r,w,s),typeof u.UNSAFE_componentWillUpdate=="function"&&u.UNSAFE_componentWillUpdate(r,w,s)),typeof u.componentDidUpdate=="function"&&(t.flags|=4),typeof u.getSnapshotBeforeUpdate=="function"&&(t.flags|=1024)):(typeof u.componentDidUpdate!="function"||o===e.memoizedProps&&m===e.memoizedState||(t.flags|=4),typeof u.getSnapshotBeforeUpdate!="function"||o===e.memoizedProps&&m===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=w),u.props=r,u.state=w,u.context=s,r=f):(typeof u.componentDidUpdate!="function"||o===e.memoizedProps&&m===e.memoizedState||(t.flags|=4),typeof u.getSnapshotBeforeUpdate!="function"||o===e.memoizedProps&&m===e.memoizedState||(t.flags|=1024),r=!1)}return Ti(e,t,n,r,i,l)}function Ti(e,t,n,r,l,i){Da(e,t);var u=(t.flags&128)!==0;if(!r&&!u)return l&&go(t,n,!1),Ge(e,t,i);r=t.stateNode,sd.current=t;var o=u&&typeof n.getDerivedStateFromError!="function"?null:r.render();return t.flags|=1,e!==null&&u?(t.child=on(t,e.child,null,i),t.child=on(t,null,o,i)):se(e,t,o,i),t.memoizedState=r.state,l&&go(t,n,!0),t.child}function Ia(e){var t=e.stateNode;t.pendingContext?vo(e,t.pendingContext,t.pendingContext!==t.context):t.context&&vo(e,t.context,!1),vu(e,t.containerInfo)}function Oo(e,t,n,r,l){return un(),cu(l),t.flags|=256,se(e,t,n,r),t.child}var zi={dehydrated:null,treeContext:null,retryLane:0};function Li(e){return{baseLanes:e,cachePool:null,transitions:null}}function Fa(e,t,n){var r=t.pendingProps,l=H.current,i=!1,u=(t.flags&128)!==0,o;if((o=u)||(o=e!==null&&e.memoizedState===null?!1:(l&2)!==0),o?(i=!0,t.flags&=-129):(e===null||e.memoizedState!==null)&&(l|=1),$(H,l&1),e===null)return Ni(t),e=t.memoizedState,e!==null&&(e=e.dehydrated,e!==null)?(t.mode&1?e.data==="$!"?t.lanes=8:t.lanes=1073741824:t.lanes=1,null):(u=r.children,e=r.fallback,i?(r=t.mode,i=t.child,u={mode:"hidden",children:u},!(r&1)&&i!==null?(i.childLanes=0,i.pendingProps=u):i=gl(u,r,0,null),e=Tt(e,r,n,null),i.return=t,e.return=t,i.sibling=e,t.child=i,t.child.memoizedState=Li(n),t.memoizedState=zi,e):Eu(t,u));if(l=e.memoizedState,l!==null&&(o=l.dehydrated,o!==null))return ad(e,t,u,r,o,l,n);if(i){i=r.fallback,u=t.mode,l=e.child,o=l.sibling;var s={mode:"hidden",children:r.children};return!(u&1)&&t.child!==l?(r=t.child,r.childLanes=0,r.pendingProps=s,t.deletions=null):(r=ft(l,s),r.subtreeFlags=l.subtreeFlags&14680064),o!==null?i=ft(o,i):(i=Tt(i,u,n,null),i.flags|=2),i.return=t,r.return=t,r.sibling=i,t.child=r,r=i,i=t.child,u=e.child.memoizedState,u=u===null?Li(n):{baseLanes:u.baseLanes|n,cachePool:null,transitions:u.transitions},i.memoizedState=u,i.childLanes=e.childLanes&~n,t.memoizedState=zi,r}return i=e.child,e=i.sibling,r=ft(i,{mode:"visible",children:r.children}),!(t.mode&1)&&(r.lanes=n),r.return=t,r.sibling=null,e!==null&&(n=t.deletions,n===null?(t.deletions=[e],t.flags|=16):n.push(e)),t.child=r,t.memoizedState=null,r}function Eu(e,t){return t=gl({mode:"visible",children:t},e.mode,0,null),t.return=e,e.child=t}function kr(e,t,n,r){return r!==null&&cu(r),on(t,e.child,null,n),e=Eu(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function ad(e,t,n,r,l,i,u){if(n)return t.flags&256?(t.flags&=-257,r=Wl(Error(x(422))),kr(e,t,u,r)):t.memoizedState!==null?(t.child=e.child,t.flags|=128,null):(i=r.fallback,l=t.mode,r=gl({mode:"visible",children:r.children},l,0,null),i=Tt(i,l,u,null),i.flags|=2,r.return=t,i.return=t,r.sibling=i,t.child=r,t.mode&1&&on(t,e.child,null,u),t.child.memoizedState=Li(u),t.memoizedState=zi,i);if(!(t.mode&1))return kr(e,t,u,null);if(l.data==="$!"){if(r=l.nextSibling&&l.nextSibling.dataset,r)var o=r.dgst;return r=o,i=Error(x(419)),r=Wl(i,r,void 0),kr(e,t,u,r)}if(o=(u&e.childLanes)!==0,pe||o){if(r=b,r!==null){switch(u&-u){case 4:l=2;break;case 16:l=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:l=32;break;case 536870912:l=268435456;break;default:l=0}l=l&(r.suspendedLanes|u)?0:l,l!==0&&l!==i.retryLane&&(i.retryLane=l,Xe(e,l),Me(r,e,l,-1))}return zu(),r=Wl(Error(x(421))),kr(e,t,u,r)}return l.data==="$?"?(t.flags|=128,t.child=e.child,t=xd.bind(null,e),l._reactRetry=t,null):(e=i.treeContext,ye=ot(l.nextSibling),ke=t,B=!0,Re=null,e!==null&&(Ne[Ee++]=He,Ne[Ee++]=Qe,Ne[Ee++]=Lt,He=e.id,Qe=e.overflow,Lt=t),t=Eu(t,r.children),t.flags|=4096,t)}function Mo(e,t,n){e.lanes|=t;var r=e.alternate;r!==null&&(r.lanes|=t),Ei(e.return,t,n)}function Kl(e,t,n,r,l){var i=e.memoizedState;i===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:l}:(i.isBackwards=t,i.rendering=null,i.renderingStartTime=0,i.last=r,i.tail=n,i.tailMode=l)}function $a(e,t,n){var r=t.pendingProps,l=r.revealOrder,i=r.tail;if(se(e,t,r.children,n),r=H.current,r&2)r=r&1|2,t.flags|=128;else{if(e!==null&&e.flags&128)e:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&Mo(e,n,t);else if(e.tag===19)Mo(e,n,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;e.sibling===null;){if(e.return===null||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}r&=1}if($(H,r),!(t.mode&1))t.memoizedState=null;else switch(l){case"forwards":for(n=t.child,l=null;n!==null;)e=n.alternate,e!==null&&qr(e)===null&&(l=n),n=n.sibling;n=l,n===null?(l=t.child,t.child=null):(l=n.sibling,n.sibling=null),Kl(t,!1,l,n,i);break;case"backwards":for(n=null,l=t.child,t.child=null;l!==null;){if(e=l.alternate,e!==null&&qr(e)===null){t.child=l;break}e=l.sibling,l.sibling=n,n=l,l=e}Kl(t,!0,n,null,i);break;case"together":Kl(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function Rr(e,t){!(t.mode&1)&&e!==null&&(e.alternate=null,t.alternate=null,t.flags|=2)}function Ge(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),Ot|=t.lanes,!(n&t.childLanes))return null;if(e!==null&&t.child!==e.child)throw Error(x(153));if(t.child!==null){for(e=t.child,n=ft(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=ft(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function cd(e,t,n){switch(t.tag){case 3:Ia(t),un();break;case 5:ca(t);break;case 1:he(t.type)&&Kr(t);break;case 4:vu(t,t.stateNode.containerInfo);break;case 10:var r=t.type._context,l=t.memoizedProps.value;$(Gr,r._currentValue),r._currentValue=l;break;case 13:if(r=t.memoizedState,r!==null)return r.dehydrated!==null?($(H,H.current&1),t.flags|=128,null):n&t.child.childLanes?Fa(e,t,n):($(H,H.current&1),e=Ge(e,t,n),e!==null?e.sibling:null);$(H,H.current&1);break;case 19:if(r=(n&t.childLanes)!==0,e.flags&128){if(r)return $a(e,t,n);t.flags|=128}if(l=t.memoizedState,l!==null&&(l.rendering=null,l.tail=null,l.lastEffect=null),$(H,H.current),r)break;return null;case 22:case 23:return t.lanes=0,Ma(e,t,n)}return Ge(e,t,n)}var Ua,Ri,Aa,Va;Ua=function(e,t){for(var n=t.child;n!==null;){if(n.tag===5||n.tag===6)e.appendChild(n.stateNode);else if(n.tag!==4&&n.child!==null){n.child.return=n,n=n.child;continue}if(n===t)break;for(;n.sibling===null;){if(n.return===null||n.return===t)return;n=n.return}n.sibling.return=n.return,n=n.sibling}};Ri=function(){};Aa=function(e,t,n,r){var l=e.memoizedProps;if(l!==r){e=t.stateNode,_t(Ae.current);var i=null;switch(n){case"input":l=ei(e,l),r=ei(e,r),i=[];break;case"select":l=W({},l,{value:void 0}),r=W({},r,{value:void 0}),i=[];break;case"textarea":l=ri(e,l),r=ri(e,r),i=[];break;default:typeof l.onClick!="function"&&typeof r.onClick=="function"&&(e.onclick=Qr)}ii(n,r);var u;n=null;for(f in l)if(!r.hasOwnProperty(f)&&l.hasOwnProperty(f)&&l[f]!=null)if(f==="style"){var o=l[f];for(u in o)o.hasOwnProperty(u)&&(n||(n={}),n[u]="")}else f!=="dangerouslySetInnerHTML"&&f!=="children"&&f!=="suppressContentEditableWarning"&&f!=="suppressHydrationWarning"&&f!=="autoFocus"&&(Dn.hasOwnProperty(f)?i||(i=[]):(i=i||[]).push(f,null));for(f in r){var s=r[f];if(o=l!=null?l[f]:void 0,r.hasOwnProperty(f)&&s!==o&&(s!=null||o!=null))if(f==="style")if(o){for(u in o)!o.hasOwnProperty(u)||s&&s.hasOwnProperty(u)||(n||(n={}),n[u]="");for(u in s)s.hasOwnProperty(u)&&o[u]!==s[u]&&(n||(n={}),n[u]=s[u])}else n||(i||(i=[]),i.push(f,n)),n=s;else f==="dangerouslySetInnerHTML"?(s=s?s.__html:void 0,o=o?o.__html:void 0,s!=null&&o!==s&&(i=i||[]).push(f,s)):f==="children"?typeof s!="string"&&typeof s!="number"||(i=i||[]).push(f,""+s):f!=="suppressContentEditableWarning"&&f!=="suppressHydrationWarning"&&(Dn.hasOwnProperty(f)?(s!=null&&f==="onScroll"&&A("scroll",e),i||o===s||(i=[])):(i=i||[]).push(f,s))}n&&(i=i||[]).push("style",n);var f=i;(t.updateQueue=f)&&(t.flags|=4)}};Va=function(e,t,n,r){n!==r&&(t.flags|=4)};function wn(e,t){if(!B)switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;t!==null;)t.alternate!==null&&(n=t),t=t.sibling;n===null?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var r=null;n!==null;)n.alternate!==null&&(r=n),n=n.sibling;r===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:r.sibling=null}}function ie(e){var t=e.alternate!==null&&e.alternate.child===e.child,n=0,r=0;if(t)for(var l=e.child;l!==null;)n|=l.lanes|l.childLanes,r|=l.subtreeFlags&14680064,r|=l.flags&14680064,l.return=e,l=l.sibling;else for(l=e.child;l!==null;)n|=l.lanes|l.childLanes,r|=l.subtreeFlags,r|=l.flags,l.return=e,l=l.sibling;return e.subtreeFlags|=r,e.childLanes=n,t}function fd(e,t,n){var r=t.pendingProps;switch(au(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return ie(t),null;case 1:return he(t.type)&&Wr(),ie(t),null;case 3:return r=t.stateNode,sn(),V(me),V(oe),yu(),r.pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),(e===null||e.child===null)&&(gr(t)?t.flags|=4:e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,Re!==null&&(Ai(Re),Re=null))),Ri(e,t),ie(t),null;case 5:gu(t);var l=_t(Yn.current);if(n=t.type,e!==null&&t.stateNode!=null)Aa(e,t,n,r,l),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!r){if(t.stateNode===null)throw Error(x(166));return ie(t),null}if(e=_t(Ae.current),gr(t)){r=t.stateNode,n=t.type;var i=t.memoizedProps;switch(r[$e]=t,r[Wn]=i,e=(t.mode&1)!==0,n){case"dialog":A("cancel",r),A("close",r);break;case"iframe":case"object":case"embed":A("load",r);break;case"video":case"audio":for(l=0;l<Cn.length;l++)A(Cn[l],r);break;case"source":A("error",r);break;case"img":case"image":case"link":A("error",r),A("load",r);break;case"details":A("toggle",r);break;case"input":Bu(r,i),A("invalid",r);break;case"select":r._wrapperState={wasMultiple:!!i.multiple},A("invalid",r);break;case"textarea":Qu(r,i),A("invalid",r)}ii(n,i),l=null;for(var u in i)if(i.hasOwnProperty(u)){var o=i[u];u==="children"?typeof o=="string"?r.textContent!==o&&(i.suppressHydrationWarning!==!0&&vr(r.textContent,o,e),l=["children",o]):typeof o=="number"&&r.textContent!==""+o&&(i.suppressHydrationWarning!==!0&&vr(r.textContent,o,e),l=["children",""+o]):Dn.hasOwnProperty(u)&&o!=null&&u==="onScroll"&&A("scroll",r)}switch(n){case"input":sr(r),Hu(r,i,!0);break;case"textarea":sr(r),Wu(r);break;case"select":case"option":break;default:typeof i.onClick=="function"&&(r.onclick=Qr)}r=l,t.updateQueue=r,r!==null&&(t.flags|=4)}else{u=l.nodeType===9?l:l.ownerDocument,e==="http://www.w3.org/1999/xhtml"&&(e=hs(n)),e==="http://www.w3.org/1999/xhtml"?n==="script"?(e=u.createElement("div"),e.innerHTML="<script><\/script>",e=e.removeChild(e.firstChild)):typeof r.is=="string"?e=u.createElement(n,{is:r.is}):(e=u.createElement(n),n==="select"&&(u=e,r.multiple?u.multiple=!0:r.size&&(u.size=r.size))):e=u.createElementNS(e,n),e[$e]=t,e[Wn]=r,Ua(e,t,!1,!1),t.stateNode=e;e:{switch(u=ui(n,r),n){case"dialog":A("cancel",e),A("close",e),l=r;break;case"iframe":case"object":case"embed":A("load",e),l=r;break;case"video":case"audio":for(l=0;l<Cn.length;l++)A(Cn[l],e);l=r;break;case"source":A("error",e),l=r;break;case"img":case"image":case"link":A("error",e),A("load",e),l=r;break;case"details":A("toggle",e),l=r;break;case"input":Bu(e,r),l=ei(e,r),A("invalid",e);break;case"option":l=r;break;case"select":e._wrapperState={wasMultiple:!!r.multiple},l=W({},r,{value:void 0}),A("invalid",e);break;case"textarea":Qu(e,r),l=ri(e,r),A("invalid",e);break;default:l=r}ii(n,l),o=l;for(i in o)if(o.hasOwnProperty(i)){var s=o[i];i==="style"?ys(e,s):i==="dangerouslySetInnerHTML"?(s=s?s.__html:void 0,s!=null&&vs(e,s)):i==="children"?typeof s=="string"?(n!=="textarea"||s!=="")&&In(e,s):typeof s=="number"&&In(e,""+s):i!=="suppressContentEditableWarning"&&i!=="suppressHydrationWarning"&&i!=="autoFocus"&&(Dn.hasOwnProperty(i)?s!=null&&i==="onScroll"&&A("scroll",e):s!=null&&Xi(e,i,s,u))}switch(n){case"input":sr(e),Hu(e,r,!1);break;case"textarea":sr(e),Wu(e);break;case"option":r.value!=null&&e.setAttribute("value",""+dt(r.value));break;case"select":e.multiple=!!r.multiple,i=r.value,i!=null?Jt(e,!!r.multiple,i,!1):r.defaultValue!=null&&Jt(e,!!r.multiple,r.defaultValue,!0);break;default:typeof l.onClick=="function"&&(e.onclick=Qr)}switch(n){case"button":case"input":case"select":case"textarea":r=!!r.autoFocus;break e;case"img":r=!0;break e;default:r=!1}}r&&(t.flags|=4)}t.ref!==null&&(t.flags|=512,t.flags|=2097152)}return ie(t),null;case 6:if(e&&t.stateNode!=null)Va(e,t,e.memoizedProps,r);else{if(typeof r!="string"&&t.stateNode===null)throw Error(x(166));if(n=_t(Yn.current),_t(Ae.current),gr(t)){if(r=t.stateNode,n=t.memoizedProps,r[$e]=t,(i=r.nodeValue!==n)&&(e=ke,e!==null))switch(e.tag){case 3:vr(r.nodeValue,n,(e.mode&1)!==0);break;case 5:e.memoizedProps.suppressHydrationWarning!==!0&&vr(r.nodeValue,n,(e.mode&1)!==0)}i&&(t.flags|=4)}else r=(n.nodeType===9?n:n.ownerDocument).createTextNode(r),r[$e]=t,t.stateNode=r}return ie(t),null;case 13:if(V(H),r=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(B&&ye!==null&&t.mode&1&&!(t.flags&128))ia(),un(),t.flags|=98560,i=!1;else if(i=gr(t),r!==null&&r.dehydrated!==null){if(e===null){if(!i)throw Error(x(318));if(i=t.memoizedState,i=i!==null?i.dehydrated:null,!i)throw Error(x(317));i[$e]=t}else un(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;ie(t),i=!1}else Re!==null&&(Ai(Re),Re=null),i=!0;if(!i)return t.flags&65536?t:null}return t.flags&128?(t.lanes=n,t):(r=r!==null,r!==(e!==null&&e.memoizedState!==null)&&r&&(t.child.flags|=8192,t.mode&1&&(e===null||H.current&1?Z===0&&(Z=3):zu())),t.updateQueue!==null&&(t.flags|=4),ie(t),null);case 4:return sn(),Ri(e,t),e===null&&Hn(t.stateNode.containerInfo),ie(t),null;case 10:return pu(t.type._context),ie(t),null;case 17:return he(t.type)&&Wr(),ie(t),null;case 19:if(V(H),i=t.memoizedState,i===null)return ie(t),null;if(r=(t.flags&128)!==0,u=i.rendering,u===null)if(r)wn(i,!1);else{if(Z!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(u=qr(e),u!==null){for(t.flags|=128,wn(i,!1),r=u.updateQueue,r!==null&&(t.updateQueue=r,t.flags|=4),t.subtreeFlags=0,r=n,n=t.child;n!==null;)i=n,e=r,i.flags&=14680066,u=i.alternate,u===null?(i.childLanes=0,i.lanes=e,i.child=null,i.subtreeFlags=0,i.memoizedProps=null,i.memoizedState=null,i.updateQueue=null,i.dependencies=null,i.stateNode=null):(i.childLanes=u.childLanes,i.lanes=u.lanes,i.child=u.child,i.subtreeFlags=0,i.deletions=null,i.memoizedProps=u.memoizedProps,i.memoizedState=u.memoizedState,i.updateQueue=u.updateQueue,i.type=u.type,e=u.dependencies,i.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext}),n=n.sibling;return $(H,H.current&1|2),t.child}e=e.sibling}i.tail!==null&&Y()>cn&&(t.flags|=128,r=!0,wn(i,!1),t.lanes=4194304)}else{if(!r)if(e=qr(u),e!==null){if(t.flags|=128,r=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),wn(i,!0),i.tail===null&&i.tailMode==="hidden"&&!u.alternate&&!B)return ie(t),null}else 2*Y()-i.renderingStartTime>cn&&n!==1073741824&&(t.flags|=128,r=!0,wn(i,!1),t.lanes=4194304);i.isBackwards?(u.sibling=t.child,t.child=u):(n=i.last,n!==null?n.sibling=u:t.child=u,i.last=u)}return i.tail!==null?(t=i.tail,i.rendering=t,i.tail=t.sibling,i.renderingStartTime=Y(),t.sibling=null,n=H.current,$(H,r?n&1|2:n&1),t):(ie(t),null);case 22:case 23:return Tu(),r=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==r&&(t.flags|=8192),r&&t.mode&1?ge&1073741824&&(ie(t),t.subtreeFlags&6&&(t.flags|=8192)):ie(t),null;case 24:return null;case 25:return null}throw Error(x(156,t.tag))}function dd(e,t){switch(au(t),t.tag){case 1:return he(t.type)&&Wr(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return sn(),V(me),V(oe),yu(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return gu(t),null;case 13:if(V(H),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(x(340));un()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return V(H),null;case 4:return sn(),null;case 10:return pu(t.type._context),null;case 22:case 23:return Tu(),null;case 24:return null;default:return null}}var wr=!1,ue=!1,pd=typeof WeakSet=="function"?WeakSet:Set,j=null;function Gt(e,t){var n=e.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(r){K(e,t,r)}else n.current=null}function Oi(e,t,n){try{n()}catch(r){K(e,t,r)}}var Do=!1;function md(e,t){if(vi=Vr,e=Ks(),ou(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var l=r.anchorOffset,i=r.focusNode;r=r.focusOffset;try{n.nodeType,i.nodeType}catch{n=null;break e}var u=0,o=-1,s=-1,f=0,v=0,h=e,m=null;t:for(;;){for(var S;h!==n||l!==0&&h.nodeType!==3||(o=u+l),h!==i||r!==0&&h.nodeType!==3||(s=u+r),h.nodeType===3&&(u+=h.nodeValue.length),(S=h.firstChild)!==null;)m=h,h=S;for(;;){if(h===e)break t;if(m===n&&++f===l&&(o=u),m===i&&++v===r&&(s=u),(S=h.nextSibling)!==null)break;h=m,m=h.parentNode}h=S}n=o===-1||s===-1?null:{start:o,end:s}}else n=null}n=n||{start:0,end:0}}else n=null;for(gi={focusedElem:e,selectionRange:n},Vr=!1,j=t;j!==null;)if(t=j,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,j=e;else for(;j!==null;){t=j;try{var w=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(w!==null){var k=w.memoizedProps,O=w.memoizedState,a=t.stateNode,c=a.getSnapshotBeforeUpdate(t.elementType===t.type?k:ze(t.type,k),O);a.__reactInternalSnapshotBeforeUpdate=c}break;case 3:var p=t.stateNode.containerInfo;p.nodeType===1?p.textContent="":p.nodeType===9&&p.documentElement&&p.removeChild(p.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(x(163))}}catch(g){K(t,t.return,g)}if(e=t.sibling,e!==null){e.return=t.return,j=e;break}j=t.return}return w=Do,Do=!1,w}function Rn(e,t,n){var r=t.updateQueue;if(r=r!==null?r.lastEffect:null,r!==null){var l=r=r.next;do{if((l.tag&e)===e){var i=l.destroy;l.destroy=void 0,i!==void 0&&Oi(t,n,i)}l=l.next}while(l!==r)}}function hl(e,t){if(t=t.updateQueue,t=t!==null?t.lastEffect:null,t!==null){var n=t=t.next;do{if((n.tag&e)===e){var r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function Mi(e){var t=e.ref;if(t!==null){var n=e.stateNode;switch(e.tag){case 5:e=n;break;default:e=n}typeof t=="function"?t(e):t.current=e}}function Ba(e){var t=e.alternate;t!==null&&(e.alternate=null,Ba(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[$e],delete t[Wn],delete t[wi],delete t[Zf],delete t[Jf])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function Ha(e){return e.tag===5||e.tag===3||e.tag===4}function Io(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||Ha(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function Di(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.nodeType===8?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(n.nodeType===8?(t=n.parentNode,t.insertBefore(e,n)):(t=n,t.appendChild(e)),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Qr));else if(r!==4&&(e=e.child,e!==null))for(Di(e,t,n),e=e.sibling;e!==null;)Di(e,t,n),e=e.sibling}function Ii(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(e=e.child,e!==null))for(Ii(e,t,n),e=e.sibling;e!==null;)Ii(e,t,n),e=e.sibling}var ee=null,Le=!1;function Je(e,t,n){for(n=n.child;n!==null;)Qa(e,t,n),n=n.sibling}function Qa(e,t,n){if(Ue&&typeof Ue.onCommitFiberUnmount=="function")try{Ue.onCommitFiberUnmount(ol,n)}catch{}switch(n.tag){case 5:ue||Gt(n,t);case 6:var r=ee,l=Le;ee=null,Je(e,t,n),ee=r,Le=l,ee!==null&&(Le?(e=ee,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):ee.removeChild(n.stateNode));break;case 18:ee!==null&&(Le?(e=ee,n=n.stateNode,e.nodeType===8?Ul(e.parentNode,n):e.nodeType===1&&Ul(e,n),An(e)):Ul(ee,n.stateNode));break;case 4:r=ee,l=Le,ee=n.stateNode.containerInfo,Le=!0,Je(e,t,n),ee=r,Le=l;break;case 0:case 11:case 14:case 15:if(!ue&&(r=n.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){l=r=r.next;do{var i=l,u=i.destroy;i=i.tag,u!==void 0&&(i&2||i&4)&&Oi(n,t,u),l=l.next}while(l!==r)}Je(e,t,n);break;case 1:if(!ue&&(Gt(n,t),r=n.stateNode,typeof r.componentWillUnmount=="function"))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(o){K(n,t,o)}Je(e,t,n);break;case 21:Je(e,t,n);break;case 22:n.mode&1?(ue=(r=ue)||n.memoizedState!==null,Je(e,t,n),ue=r):Je(e,t,n);break;default:Je(e,t,n)}}function Fo(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new pd),t.forEach(function(r){var l=Nd.bind(null,e,r);n.has(r)||(n.add(r),r.then(l,l))})}}function Te(e,t){var n=t.deletions;if(n!==null)for(var r=0;r<n.length;r++){var l=n[r];try{var i=e,u=t,o=u;e:for(;o!==null;){switch(o.tag){case 5:ee=o.stateNode,Le=!1;break e;case 3:ee=o.stateNode.containerInfo,Le=!0;break e;case 4:ee=o.stateNode.containerInfo,Le=!0;break e}o=o.return}if(ee===null)throw Error(x(160));Qa(i,u,l),ee=null,Le=!1;var s=l.alternate;s!==null&&(s.return=null),l.return=null}catch(f){K(l,t,f)}}if(t.subtreeFlags&12854)for(t=t.child;t!==null;)Wa(t,e),t=t.sibling}function Wa(e,t){var n=e.alternate,r=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:if(Te(t,e),Ie(e),r&4){try{Rn(3,e,e.return),hl(3,e)}catch(k){K(e,e.return,k)}try{Rn(5,e,e.return)}catch(k){K(e,e.return,k)}}break;case 1:Te(t,e),Ie(e),r&512&&n!==null&&Gt(n,n.return);break;case 5:if(Te(t,e),Ie(e),r&512&&n!==null&&Gt(n,n.return),e.flags&32){var l=e.stateNode;try{In(l,"")}catch(k){K(e,e.return,k)}}if(r&4&&(l=e.stateNode,l!=null)){var i=e.memoizedProps,u=n!==null?n.memoizedProps:i,o=e.type,s=e.updateQueue;if(e.updateQueue=null,s!==null)try{o==="input"&&i.type==="radio"&&i.name!=null&&ps(l,i),ui(o,u);var f=ui(o,i);for(u=0;u<s.length;u+=2){var v=s[u],h=s[u+1];v==="style"?ys(l,h):v==="dangerouslySetInnerHTML"?vs(l,h):v==="children"?In(l,h):Xi(l,v,h,f)}switch(o){case"input":ti(l,i);break;case"textarea":ms(l,i);break;case"select":var m=l._wrapperState.wasMultiple;l._wrapperState.wasMultiple=!!i.multiple;var S=i.value;S!=null?Jt(l,!!i.multiple,S,!1):m!==!!i.multiple&&(i.defaultValue!=null?Jt(l,!!i.multiple,i.defaultValue,!0):Jt(l,!!i.multiple,i.multiple?[]:"",!1))}l[Wn]=i}catch(k){K(e,e.return,k)}}break;case 6:if(Te(t,e),Ie(e),r&4){if(e.stateNode===null)throw Error(x(162));l=e.stateNode,i=e.memoizedProps;try{l.nodeValue=i}catch(k){K(e,e.return,k)}}break;case 3:if(Te(t,e),Ie(e),r&4&&n!==null&&n.memoizedState.isDehydrated)try{An(t.containerInfo)}catch(k){K(e,e.return,k)}break;case 4:Te(t,e),Ie(e);break;case 13:Te(t,e),Ie(e),l=e.child,l.flags&8192&&(i=l.memoizedState!==null,l.stateNode.isHidden=i,!i||l.alternate!==null&&l.alternate.memoizedState!==null||(_u=Y())),r&4&&Fo(e);break;case 22:if(v=n!==null&&n.memoizedState!==null,e.mode&1?(ue=(f=ue)||v,Te(t,e),ue=f):Te(t,e),Ie(e),r&8192){if(f=e.memoizedState!==null,(e.stateNode.isHidden=f)&&!v&&e.mode&1)for(j=e,v=e.child;v!==null;){for(h=j=v;j!==null;){switch(m=j,S=m.child,m.tag){case 0:case 11:case 14:case 15:Rn(4,m,m.return);break;case 1:Gt(m,m.return);var w=m.stateNode;if(typeof w.componentWillUnmount=="function"){r=m,n=m.return;try{t=r,w.props=t.memoizedProps,w.state=t.memoizedState,w.componentWillUnmount()}catch(k){K(r,n,k)}}break;case 5:Gt(m,m.return);break;case 22:if(m.memoizedState!==null){Uo(h);continue}}S!==null?(S.return=m,j=S):Uo(h)}v=v.sibling}e:for(v=null,h=e;;){if(h.tag===5){if(v===null){v=h;try{l=h.stateNode,f?(i=l.style,typeof i.setProperty=="function"?i.setProperty("display","none","important"):i.display="none"):(o=h.stateNode,s=h.memoizedProps.style,u=s!=null&&s.hasOwnProperty("display")?s.display:null,o.style.display=gs("display",u))}catch(k){K(e,e.return,k)}}}else if(h.tag===6){if(v===null)try{h.stateNode.nodeValue=f?"":h.memoizedProps}catch(k){K(e,e.return,k)}}else if((h.tag!==22&&h.tag!==23||h.memoizedState===null||h===e)&&h.child!==null){h.child.return=h,h=h.child;continue}if(h===e)break e;for(;h.sibling===null;){if(h.return===null||h.return===e)break e;v===h&&(v=null),h=h.return}v===h&&(v=null),h.sibling.return=h.return,h=h.sibling}}break;case 19:Te(t,e),Ie(e),r&4&&Fo(e);break;case 21:break;default:Te(t,e),Ie(e)}}function Ie(e){var t=e.flags;if(t&2){try{e:{for(var n=e.return;n!==null;){if(Ha(n)){var r=n;break e}n=n.return}throw Error(x(160))}switch(r.tag){case 5:var l=r.stateNode;r.flags&32&&(In(l,""),r.flags&=-33);var i=Io(e);Ii(e,i,l);break;case 3:case 4:var u=r.stateNode.containerInfo,o=Io(e);Di(e,o,u);break;default:throw Error(x(161))}}catch(s){K(e,e.return,s)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function hd(e,t,n){j=e,Ka(e)}function Ka(e,t,n){for(var r=(e.mode&1)!==0;j!==null;){var l=j,i=l.child;if(l.tag===22&&r){var u=l.memoizedState!==null||wr;if(!u){var o=l.alternate,s=o!==null&&o.memoizedState!==null||ue;o=wr;var f=ue;if(wr=u,(ue=s)&&!f)for(j=l;j!==null;)u=j,s=u.child,u.tag===22&&u.memoizedState!==null?Ao(l):s!==null?(s.return=u,j=s):Ao(l);for(;i!==null;)j=i,Ka(i),i=i.sibling;j=l,wr=o,ue=f}$o(e)}else l.subtreeFlags&8772&&i!==null?(i.return=l,j=i):$o(e)}}function $o(e){for(;j!==null;){var t=j;if(t.flags&8772){var n=t.alternate;try{if(t.flags&8772)switch(t.tag){case 0:case 11:case 15:ue||hl(5,t);break;case 1:var r=t.stateNode;if(t.flags&4&&!ue)if(n===null)r.componentDidMount();else{var l=t.elementType===t.type?n.memoizedProps:ze(t.type,n.memoizedProps);r.componentDidUpdate(l,n.memoizedState,r.__reactInternalSnapshotBeforeUpdate)}var i=t.updateQueue;i!==null&&xo(t,i,r);break;case 3:var u=t.updateQueue;if(u!==null){if(n=null,t.child!==null)switch(t.child.tag){case 5:n=t.child.stateNode;break;case 1:n=t.child.stateNode}xo(t,u,n)}break;case 5:var o=t.stateNode;if(n===null&&t.flags&4){n=o;var s=t.memoizedProps;switch(t.type){case"button":case"input":case"select":case"textarea":s.autoFocus&&n.focus();break;case"img":s.src&&(n.src=s.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(t.memoizedState===null){var f=t.alternate;if(f!==null){var v=f.memoizedState;if(v!==null){var h=v.dehydrated;h!==null&&An(h)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(x(163))}ue||t.flags&512&&Mi(t)}catch(m){K(t,t.return,m)}}if(t===e){j=null;break}if(n=t.sibling,n!==null){n.return=t.return,j=n;break}j=t.return}}function Uo(e){for(;j!==null;){var t=j;if(t===e){j=null;break}var n=t.sibling;if(n!==null){n.return=t.return,j=n;break}j=t.return}}function Ao(e){for(;j!==null;){var t=j;try{switch(t.tag){case 0:case 11:case 15:var n=t.return;try{hl(4,t)}catch(s){K(t,n,s)}break;case 1:var r=t.stateNode;if(typeof r.componentDidMount=="function"){var l=t.return;try{r.componentDidMount()}catch(s){K(t,l,s)}}var i=t.return;try{Mi(t)}catch(s){K(t,i,s)}break;case 5:var u=t.return;try{Mi(t)}catch(s){K(t,u,s)}}}catch(s){K(t,t.return,s)}if(t===e){j=null;break}var o=t.sibling;if(o!==null){o.return=t.return,j=o;break}j=t.return}}var vd=Math.ceil,tl=Ze.ReactCurrentDispatcher,Cu=Ze.ReactCurrentOwner,je=Ze.ReactCurrentBatchConfig,D=0,b=null,X=null,ne=0,ge=0,Zt=ht(0),Z=0,Jn=null,Ot=0,vl=0,ju=0,On=null,de=null,_u=0,cn=1/0,Ve=null,nl=!1,Fi=null,at=null,Sr=!1,rt=null,rl=0,Mn=0,$i=null,Or=-1,Mr=0;function ae(){return D&6?Y():Or!==-1?Or:Or=Y()}function ct(e){return e.mode&1?D&2&&ne!==0?ne&-ne:bf.transition!==null?(Mr===0&&(Mr=zs()),Mr):(e=F,e!==0||(e=window.event,e=e===void 0?16:Fs(e.type)),e):1}function Me(e,t,n,r){if(50<Mn)throw Mn=0,$i=null,Error(x(185));bn(e,n,r),(!(D&2)||e!==b)&&(e===b&&(!(D&2)&&(vl|=n),Z===4&&tt(e,ne)),ve(e,r),n===1&&D===0&&!(t.mode&1)&&(cn=Y()+500,dl&&vt()))}function ve(e,t){var n=e.callbackNode;qc(e,t);var r=Ar(e,e===b?ne:0);if(r===0)n!==null&&Xu(n),e.callbackNode=null,e.callbackPriority=0;else if(t=r&-r,e.callbackPriority!==t){if(n!=null&&Xu(n),t===1)e.tag===0?qf(Vo.bind(null,e)):na(Vo.bind(null,e)),Xf(function(){!(D&6)&&vt()}),n=null;else{switch(Ls(r)){case 1:n=bi;break;case 4:n=Ps;break;case 16:n=Ur;break;case 536870912:n=Ts;break;default:n=Ur}n=ec(n,Ya.bind(null,e))}e.callbackPriority=t,e.callbackNode=n}}function Ya(e,t){if(Or=-1,Mr=0,D&6)throw Error(x(327));var n=e.callbackNode;if(nn()&&e.callbackNode!==n)return null;var r=Ar(e,e===b?ne:0);if(r===0)return null;if(r&30||r&e.expiredLanes||t)t=ll(e,r);else{t=r;var l=D;D|=2;var i=Ga();(b!==e||ne!==t)&&(Ve=null,cn=Y()+500,Pt(e,t));do try{kd();break}catch(o){Xa(e,o)}while(!0);du(),tl.current=i,D=l,X!==null?t=0:(b=null,ne=0,t=Z)}if(t!==0){if(t===2&&(l=fi(e),l!==0&&(r=l,t=Ui(e,l))),t===1)throw n=Jn,Pt(e,0),tt(e,r),ve(e,Y()),n;if(t===6)tt(e,r);else{if(l=e.current.alternate,!(r&30)&&!gd(l)&&(t=ll(e,r),t===2&&(i=fi(e),i!==0&&(r=i,t=Ui(e,i))),t===1))throw n=Jn,Pt(e,0),tt(e,r),ve(e,Y()),n;switch(e.finishedWork=l,e.finishedLanes=r,t){case 0:case 1:throw Error(x(345));case 2:Et(e,de,Ve);break;case 3:if(tt(e,r),(r&130023424)===r&&(t=_u+500-Y(),10<t)){if(Ar(e,0)!==0)break;if(l=e.suspendedLanes,(l&r)!==r){ae(),e.pingedLanes|=e.suspendedLanes&l;break}e.timeoutHandle=ki(Et.bind(null,e,de,Ve),t);break}Et(e,de,Ve);break;case 4:if(tt(e,r),(r&4194240)===r)break;for(t=e.eventTimes,l=-1;0<r;){var u=31-Oe(r);i=1<<u,u=t[u],u>l&&(l=u),r&=~i}if(r=l,r=Y()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*vd(r/1960))-r,10<r){e.timeoutHandle=ki(Et.bind(null,e,de,Ve),r);break}Et(e,de,Ve);break;case 5:Et(e,de,Ve);break;default:throw Error(x(329))}}}return ve(e,Y()),e.callbackNode===n?Ya.bind(null,e):null}function Ui(e,t){var n=On;return e.current.memoizedState.isDehydrated&&(Pt(e,t).flags|=256),e=ll(e,t),e!==2&&(t=de,de=n,t!==null&&Ai(t)),e}function Ai(e){de===null?de=e:de.push.apply(de,e)}function gd(e){for(var t=e;;){if(t.flags&16384){var n=t.updateQueue;if(n!==null&&(n=n.stores,n!==null))for(var r=0;r<n.length;r++){var l=n[r],i=l.getSnapshot;l=l.value;try{if(!De(i(),l))return!1}catch{return!1}}}if(n=t.child,t.subtreeFlags&16384&&n!==null)n.return=t,t=n;else{if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}function tt(e,t){for(t&=~ju,t&=~vl,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var n=31-Oe(t),r=1<<n;e[n]=-1,t&=~r}}function Vo(e){if(D&6)throw Error(x(327));nn();var t=Ar(e,0);if(!(t&1))return ve(e,Y()),null;var n=ll(e,t);if(e.tag!==0&&n===2){var r=fi(e);r!==0&&(t=r,n=Ui(e,r))}if(n===1)throw n=Jn,Pt(e,0),tt(e,t),ve(e,Y()),n;if(n===6)throw Error(x(345));return e.finishedWork=e.current.alternate,e.finishedLanes=t,Et(e,de,Ve),ve(e,Y()),null}function Pu(e,t){var n=D;D|=1;try{return e(t)}finally{D=n,D===0&&(cn=Y()+500,dl&&vt())}}function Mt(e){rt!==null&&rt.tag===0&&!(D&6)&&nn();var t=D;D|=1;var n=je.transition,r=F;try{if(je.transition=null,F=1,e)return e()}finally{F=r,je.transition=n,D=t,!(D&6)&&vt()}}function Tu(){ge=Zt.current,V(Zt)}function Pt(e,t){e.finishedWork=null,e.finishedLanes=0;var n=e.timeoutHandle;if(n!==-1&&(e.timeoutHandle=-1,Yf(n)),X!==null)for(n=X.return;n!==null;){var r=n;switch(au(r),r.tag){case 1:r=r.type.childContextTypes,r!=null&&Wr();break;case 3:sn(),V(me),V(oe),yu();break;case 5:gu(r);break;case 4:sn();break;case 13:V(H);break;case 19:V(H);break;case 10:pu(r.type._context);break;case 22:case 23:Tu()}n=n.return}if(b=e,X=e=ft(e.current,null),ne=ge=t,Z=0,Jn=null,ju=vl=Ot=0,de=On=null,jt!==null){for(t=0;t<jt.length;t++)if(n=jt[t],r=n.interleaved,r!==null){n.interleaved=null;var l=r.next,i=n.pending;if(i!==null){var u=i.next;i.next=l,r.next=u}n.pending=r}jt=null}return e}function Xa(e,t){do{var n=X;try{if(du(),zr.current=el,br){for(var r=Q.memoizedState;r!==null;){var l=r.queue;l!==null&&(l.pending=null),r=r.next}br=!1}if(Rt=0,q=G=Q=null,Ln=!1,Xn=0,Cu.current=null,n===null||n.return===null){Z=1,Jn=t,X=null;break}e:{var i=e,u=n.return,o=n,s=t;if(t=ne,o.flags|=32768,s!==null&&typeof s=="object"&&typeof s.then=="function"){var f=s,v=o,h=v.tag;if(!(v.mode&1)&&(h===0||h===11||h===15)){var m=v.alternate;m?(v.updateQueue=m.updateQueue,v.memoizedState=m.memoizedState,v.lanes=m.lanes):(v.updateQueue=null,v.memoizedState=null)}var S=Po(u);if(S!==null){S.flags&=-257,To(S,u,o,i,t),S.mode&1&&_o(i,f,t),t=S,s=f;var w=t.updateQueue;if(w===null){var k=new Set;k.add(s),t.updateQueue=k}else w.add(s);break e}else{if(!(t&1)){_o(i,f,t),zu();break e}s=Error(x(426))}}else if(B&&o.mode&1){var O=Po(u);if(O!==null){!(O.flags&65536)&&(O.flags|=256),To(O,u,o,i,t),cu(an(s,o));break e}}i=s=an(s,o),Z!==4&&(Z=2),On===null?On=[i]:On.push(i),i=u;do{switch(i.tag){case 3:i.flags|=65536,t&=-t,i.lanes|=t;var a=La(i,s,t);So(i,a);break e;case 1:o=s;var c=i.type,p=i.stateNode;if(!(i.flags&128)&&(typeof c.getDerivedStateFromError=="function"||p!==null&&typeof p.componentDidCatch=="function"&&(at===null||!at.has(p)))){i.flags|=65536,t&=-t,i.lanes|=t;var g=Ra(i,o,t);So(i,g);break e}}i=i.return}while(i!==null)}Ja(n)}catch(N){t=N,X===n&&n!==null&&(X=n=n.return);continue}break}while(!0)}function Ga(){var e=tl.current;return tl.current=el,e===null?el:e}function zu(){(Z===0||Z===3||Z===2)&&(Z=4),b===null||!(Ot&268435455)&&!(vl&268435455)||tt(b,ne)}function ll(e,t){var n=D;D|=2;var r=Ga();(b!==e||ne!==t)&&(Ve=null,Pt(e,t));do try{yd();break}catch(l){Xa(e,l)}while(!0);if(du(),D=n,tl.current=r,X!==null)throw Error(x(261));return b=null,ne=0,Z}function yd(){for(;X!==null;)Za(X)}function kd(){for(;X!==null&&!Hc();)Za(X)}function Za(e){var t=ba(e.alternate,e,ge);e.memoizedProps=e.pendingProps,t===null?Ja(e):X=t,Cu.current=null}function Ja(e){var t=e;do{var n=t.alternate;if(e=t.return,t.flags&32768){if(n=dd(n,t),n!==null){n.flags&=32767,X=n;return}if(e!==null)e.flags|=32768,e.subtreeFlags=0,e.deletions=null;else{Z=6,X=null;return}}else if(n=fd(n,t,ge),n!==null){X=n;return}if(t=t.sibling,t!==null){X=t;return}X=t=e}while(t!==null);Z===0&&(Z=5)}function Et(e,t,n){var r=F,l=je.transition;try{je.transition=null,F=1,wd(e,t,n,r)}finally{je.transition=l,F=r}return null}function wd(e,t,n,r){do nn();while(rt!==null);if(D&6)throw Error(x(327));n=e.finishedWork;var l=e.finishedLanes;if(n===null)return null;if(e.finishedWork=null,e.finishedLanes=0,n===e.current)throw Error(x(177));e.callbackNode=null,e.callbackPriority=0;var i=n.lanes|n.childLanes;if(bc(e,i),e===b&&(X=b=null,ne=0),!(n.subtreeFlags&2064)&&!(n.flags&2064)||Sr||(Sr=!0,ec(Ur,function(){return nn(),null})),i=(n.flags&15990)!==0,n.subtreeFlags&15990||i){i=je.transition,je.transition=null;var u=F;F=1;var o=D;D|=4,Cu.current=null,md(e,n),Wa(n,e),Af(gi),Vr=!!vi,gi=vi=null,e.current=n,hd(n),Qc(),D=o,F=u,je.transition=i}else e.current=n;if(Sr&&(Sr=!1,rt=e,rl=l),i=e.pendingLanes,i===0&&(at=null),Yc(n.stateNode),ve(e,Y()),t!==null)for(r=e.onRecoverableError,n=0;n<t.length;n++)l=t[n],r(l.value,{componentStack:l.stack,digest:l.digest});if(nl)throw nl=!1,e=Fi,Fi=null,e;return rl&1&&e.tag!==0&&nn(),i=e.pendingLanes,i&1?e===$i?Mn++:(Mn=0,$i=e):Mn=0,vt(),null}function nn(){if(rt!==null){var e=Ls(rl),t=je.transition,n=F;try{if(je.transition=null,F=16>e?16:e,rt===null)var r=!1;else{if(e=rt,rt=null,rl=0,D&6)throw Error(x(331));var l=D;for(D|=4,j=e.current;j!==null;){var i=j,u=i.child;if(j.flags&16){var o=i.deletions;if(o!==null){for(var s=0;s<o.length;s++){var f=o[s];for(j=f;j!==null;){var v=j;switch(v.tag){case 0:case 11:case 15:Rn(8,v,i)}var h=v.child;if(h!==null)h.return=v,j=h;else for(;j!==null;){v=j;var m=v.sibling,S=v.return;if(Ba(v),v===f){j=null;break}if(m!==null){m.return=S,j=m;break}j=S}}}var w=i.alternate;if(w!==null){var k=w.child;if(k!==null){w.child=null;do{var O=k.sibling;k.sibling=null,k=O}while(k!==null)}}j=i}}if(i.subtreeFlags&2064&&u!==null)u.return=i,j=u;else e:for(;j!==null;){if(i=j,i.flags&2048)switch(i.tag){case 0:case 11:case 15:Rn(9,i,i.return)}var a=i.sibling;if(a!==null){a.return=i.return,j=a;break e}j=i.return}}var c=e.current;for(j=c;j!==null;){u=j;var p=u.child;if(u.subtreeFlags&2064&&p!==null)p.return=u,j=p;else e:for(u=c;j!==null;){if(o=j,o.flags&2048)try{switch(o.tag){case 0:case 11:case 15:hl(9,o)}}catch(N){K(o,o.return,N)}if(o===u){j=null;break e}var g=o.sibling;if(g!==null){g.return=o.return,j=g;break e}j=o.return}}if(D=l,vt(),Ue&&typeof Ue.onPostCommitFiberRoot=="function")try{Ue.onPostCommitFiberRoot(ol,e)}catch{}r=!0}return r}finally{F=n,je.transition=t}}return!1}function Bo(e,t,n){t=an(n,t),t=La(e,t,1),e=st(e,t,1),t=ae(),e!==null&&(bn(e,1,t),ve(e,t))}function K(e,t,n){if(e.tag===3)Bo(e,e,n);else for(;t!==null;){if(t.tag===3){Bo(t,e,n);break}else if(t.tag===1){var r=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof r.componentDidCatch=="function"&&(at===null||!at.has(r))){e=an(n,e),e=Ra(t,e,1),t=st(t,e,1),e=ae(),t!==null&&(bn(t,1,e),ve(t,e));break}}t=t.return}}function Sd(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),t=ae(),e.pingedLanes|=e.suspendedLanes&n,b===e&&(ne&n)===n&&(Z===4||Z===3&&(ne&130023424)===ne&&500>Y()-_u?Pt(e,0):ju|=n),ve(e,t)}function qa(e,t){t===0&&(e.mode&1?(t=fr,fr<<=1,!(fr&130023424)&&(fr=4194304)):t=1);var n=ae();e=Xe(e,t),e!==null&&(bn(e,t,n),ve(e,n))}function xd(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),qa(e,n)}function Nd(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,l=e.memoizedState;l!==null&&(n=l.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(x(314))}r!==null&&r.delete(t),qa(e,n)}var ba;ba=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||me.current)pe=!0;else{if(!(e.lanes&n)&&!(t.flags&128))return pe=!1,cd(e,t,n);pe=!!(e.flags&131072)}else pe=!1,B&&t.flags&1048576&&ra(t,Xr,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;Rr(e,t),e=t.pendingProps;var l=ln(t,oe.current);tn(t,n),l=wu(null,t,r,e,l,n);var i=Su();return t.flags|=1,typeof l=="object"&&l!==null&&typeof l.render=="function"&&l.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,he(r)?(i=!0,Kr(t)):i=!1,t.memoizedState=l.state!==null&&l.state!==void 0?l.state:null,hu(t),l.updater=ml,t.stateNode=l,l._reactInternals=t,ji(t,r,e,n),t=Ti(null,t,r,!0,i,n)):(t.tag=0,B&&i&&su(t),se(null,t,l,n),t=t.child),t;case 16:r=t.elementType;e:{switch(Rr(e,t),e=t.pendingProps,l=r._init,r=l(r._payload),t.type=r,l=t.tag=Cd(r),e=ze(r,e),l){case 0:t=Pi(null,t,r,e,n);break e;case 1:t=Ro(null,t,r,e,n);break e;case 11:t=zo(null,t,r,e,n);break e;case 14:t=Lo(null,t,r,ze(r.type,e),n);break e}throw Error(x(306,r,""))}return t;case 0:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:ze(r,l),Pi(e,t,r,l,n);case 1:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:ze(r,l),Ro(e,t,r,l,n);case 3:e:{if(Ia(t),e===null)throw Error(x(387));r=t.pendingProps,i=t.memoizedState,l=i.element,aa(e,t),Jr(t,r,null,n);var u=t.memoizedState;if(r=u.element,i.isDehydrated)if(i={element:r,isDehydrated:!1,cache:u.cache,pendingSuspenseBoundaries:u.pendingSuspenseBoundaries,transitions:u.transitions},t.updateQueue.baseState=i,t.memoizedState=i,t.flags&256){l=an(Error(x(423)),t),t=Oo(e,t,r,n,l);break e}else if(r!==l){l=an(Error(x(424)),t),t=Oo(e,t,r,n,l);break e}else for(ye=ot(t.stateNode.containerInfo.firstChild),ke=t,B=!0,Re=null,n=oa(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(un(),r===l){t=Ge(e,t,n);break e}se(e,t,r,n)}t=t.child}return t;case 5:return ca(t),e===null&&Ni(t),r=t.type,l=t.pendingProps,i=e!==null?e.memoizedProps:null,u=l.children,yi(r,l)?u=null:i!==null&&yi(r,i)&&(t.flags|=32),Da(e,t),se(e,t,u,n),t.child;case 6:return e===null&&Ni(t),null;case 13:return Fa(e,t,n);case 4:return vu(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=on(t,null,r,n):se(e,t,r,n),t.child;case 11:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:ze(r,l),zo(e,t,r,l,n);case 7:return se(e,t,t.pendingProps,n),t.child;case 8:return se(e,t,t.pendingProps.children,n),t.child;case 12:return se(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,l=t.pendingProps,i=t.memoizedProps,u=l.value,$(Gr,r._currentValue),r._currentValue=u,i!==null)if(De(i.value,u)){if(i.children===l.children&&!me.current){t=Ge(e,t,n);break e}}else for(i=t.child,i!==null&&(i.return=t);i!==null;){var o=i.dependencies;if(o!==null){u=i.child;for(var s=o.firstContext;s!==null;){if(s.context===r){if(i.tag===1){s=We(-1,n&-n),s.tag=2;var f=i.updateQueue;if(f!==null){f=f.shared;var v=f.pending;v===null?s.next=s:(s.next=v.next,v.next=s),f.pending=s}}i.lanes|=n,s=i.alternate,s!==null&&(s.lanes|=n),Ei(i.return,n,t),o.lanes|=n;break}s=s.next}}else if(i.tag===10)u=i.type===t.type?null:i.child;else if(i.tag===18){if(u=i.return,u===null)throw Error(x(341));u.lanes|=n,o=u.alternate,o!==null&&(o.lanes|=n),Ei(u,n,t),u=i.sibling}else u=i.child;if(u!==null)u.return=i;else for(u=i;u!==null;){if(u===t){u=null;break}if(i=u.sibling,i!==null){i.return=u.return,u=i;break}u=u.return}i=u}se(e,t,l.children,n),t=t.child}return t;case 9:return l=t.type,r=t.pendingProps.children,tn(t,n),l=_e(l),r=r(l),t.flags|=1,se(e,t,r,n),t.child;case 14:return r=t.type,l=ze(r,t.pendingProps),l=ze(r.type,l),Lo(e,t,r,l,n);case 15:return Oa(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:ze(r,l),Rr(e,t),t.tag=1,he(r)?(e=!0,Kr(t)):e=!1,tn(t,n),za(t,r,l),ji(t,r,l,n),Ti(null,t,r,!0,e,n);case 19:return $a(e,t,n);case 22:return Ma(e,t,n)}throw Error(x(156,t.tag))};function ec(e,t){return _s(e,t)}function Ed(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Ce(e,t,n,r){return new Ed(e,t,n,r)}function Lu(e){return e=e.prototype,!(!e||!e.isReactComponent)}function Cd(e){if(typeof e=="function")return Lu(e)?1:0;if(e!=null){if(e=e.$$typeof,e===Zi)return 11;if(e===Ji)return 14}return 2}function ft(e,t){var n=e.alternate;return n===null?(n=Ce(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&14680064,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function Dr(e,t,n,r,l,i){var u=2;if(r=e,typeof e=="function")Lu(e)&&(u=1);else if(typeof e=="string")u=5;else e:switch(e){case At:return Tt(n.children,l,i,t);case Gi:u=8,l|=8;break;case Zl:return e=Ce(12,n,t,l|2),e.elementType=Zl,e.lanes=i,e;case Jl:return e=Ce(13,n,t,l),e.elementType=Jl,e.lanes=i,e;case ql:return e=Ce(19,n,t,l),e.elementType=ql,e.lanes=i,e;case cs:return gl(n,l,i,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case ss:u=10;break e;case as:u=9;break e;case Zi:u=11;break e;case Ji:u=14;break e;case qe:u=16,r=null;break e}throw Error(x(130,e==null?e:typeof e,""))}return t=Ce(u,n,t,l),t.elementType=e,t.type=r,t.lanes=i,t}function Tt(e,t,n,r){return e=Ce(7,e,r,t),e.lanes=n,e}function gl(e,t,n,r){return e=Ce(22,e,r,t),e.elementType=cs,e.lanes=n,e.stateNode={isHidden:!1},e}function Yl(e,t,n){return e=Ce(6,e,null,t),e.lanes=n,e}function Xl(e,t,n){return t=Ce(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function jd(e,t,n,r,l){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=Pl(0),this.expirationTimes=Pl(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Pl(0),this.identifierPrefix=r,this.onRecoverableError=l,this.mutableSourceEagerHydrationData=null}function Ru(e,t,n,r,l,i,u,o,s){return e=new jd(e,t,n,o,s),t===1?(t=1,i===!0&&(t|=8)):t=0,i=Ce(3,null,null,t),e.current=i,i.stateNode=e,i.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},hu(i),e}function _d(e,t,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:Ut,key:r==null?null:""+r,children:e,containerInfo:t,implementation:n}}function tc(e){if(!e)return pt;e=e._reactInternals;e:{if(It(e)!==e||e.tag!==1)throw Error(x(170));var t=e;do{switch(t.tag){case 3:t=t.stateNode.context;break e;case 1:if(he(t.type)){t=t.stateNode.__reactInternalMemoizedMergedChildContext;break e}}t=t.return}while(t!==null);throw Error(x(171))}if(e.tag===1){var n=e.type;if(he(n))return ta(e,n,t)}return t}function nc(e,t,n,r,l,i,u,o,s){return e=Ru(n,r,!0,e,l,i,u,o,s),e.context=tc(null),n=e.current,r=ae(),l=ct(n),i=We(r,l),i.callback=t??null,st(n,i,l),e.current.lanes=l,bn(e,l,r),ve(e,r),e}function yl(e,t,n,r){var l=t.current,i=ae(),u=ct(l);return n=tc(n),t.context===null?t.context=n:t.pendingContext=n,t=We(i,u),t.payload={element:e},r=r===void 0?null:r,r!==null&&(t.callback=r),e=st(l,t,u),e!==null&&(Me(e,l,u,i),Tr(e,l,u)),u}function il(e){if(e=e.current,!e.child)return null;switch(e.child.tag){case 5:return e.child.stateNode;default:return e.child.stateNode}}function Ho(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var n=e.retryLane;e.retryLane=n!==0&&n<t?n:t}}function Ou(e,t){Ho(e,t),(e=e.alternate)&&Ho(e,t)}function Pd(){return null}var rc=typeof reportError=="function"?reportError:function(e){console.error(e)};function Mu(e){this._internalRoot=e}kl.prototype.render=Mu.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(x(409));yl(e,t,null,null)};kl.prototype.unmount=Mu.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;Mt(function(){yl(null,e,null,null)}),t[Ye]=null}};function kl(e){this._internalRoot=e}kl.prototype.unstable_scheduleHydration=function(e){if(e){var t=Ms();e={blockedOn:null,target:e,priority:t};for(var n=0;n<et.length&&t!==0&&t<et[n].priority;n++);et.splice(n,0,e),n===0&&Is(e)}};function Du(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function wl(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11&&(e.nodeType!==8||e.nodeValue!==" react-mount-point-unstable "))}function Qo(){}function Td(e,t,n,r,l){if(l){if(typeof r=="function"){var i=r;r=function(){var f=il(u);i.call(f)}}var u=nc(t,r,e,0,null,!1,!1,"",Qo);return e._reactRootContainer=u,e[Ye]=u.current,Hn(e.nodeType===8?e.parentNode:e),Mt(),u}for(;l=e.lastChild;)e.removeChild(l);if(typeof r=="function"){var o=r;r=function(){var f=il(s);o.call(f)}}var s=Ru(e,0,!1,null,null,!1,!1,"",Qo);return e._reactRootContainer=s,e[Ye]=s.current,Hn(e.nodeType===8?e.parentNode:e),Mt(function(){yl(t,s,n,r)}),s}function Sl(e,t,n,r,l){var i=n._reactRootContainer;if(i){var u=i;if(typeof l=="function"){var o=l;l=function(){var s=il(u);o.call(s)}}yl(t,u,e,l)}else u=Td(n,t,e,l,r);return il(u)}Rs=function(e){switch(e.tag){case 3:var t=e.stateNode;if(t.current.memoizedState.isDehydrated){var n=En(t.pendingLanes);n!==0&&(eu(t,n|1),ve(t,Y()),!(D&6)&&(cn=Y()+500,vt()))}break;case 13:Mt(function(){var r=Xe(e,1);if(r!==null){var l=ae();Me(r,e,1,l)}}),Ou(e,1)}};tu=function(e){if(e.tag===13){var t=Xe(e,134217728);if(t!==null){var n=ae();Me(t,e,134217728,n)}Ou(e,134217728)}};Os=function(e){if(e.tag===13){var t=ct(e),n=Xe(e,t);if(n!==null){var r=ae();Me(n,e,t,r)}Ou(e,t)}};Ms=function(){return F};Ds=function(e,t){var n=F;try{return F=e,t()}finally{F=n}};si=function(e,t,n){switch(t){case"input":if(ti(e,n),t=n.name,n.type==="radio"&&t!=null){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll("input[name="+JSON.stringify(""+t)+'][type="radio"]'),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var l=fl(r);if(!l)throw Error(x(90));ds(r),ti(r,l)}}}break;case"textarea":ms(e,n);break;case"select":t=n.value,t!=null&&Jt(e,!!n.multiple,t,!1)}};Ss=Pu;xs=Mt;var zd={usingClientEntryPoint:!1,Events:[tr,Qt,fl,ks,ws,Pu]},Sn={findFiberByHostInstance:Ct,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},Ld={bundleType:Sn.bundleType,version:Sn.version,rendererPackageName:Sn.rendererPackageName,rendererConfig:Sn.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:Ze.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return e=Cs(e),e===null?null:e.stateNode},findFiberByHostInstance:Sn.findFiberByHostInstance||Pd,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.3.1-next-f1338f8080-20240426"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var xr=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!xr.isDisabled&&xr.supportsFiber)try{ol=xr.inject(Ld),Ue=xr}catch{}}Se.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=zd;Se.createPortal=function(e,t){var n=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!Du(t))throw Error(x(200));return _d(e,t,null,n)};Se.createRoot=function(e,t){if(!Du(e))throw Error(x(299));var n=!1,r="",l=rc;return t!=null&&(t.unstable_strictMode===!0&&(n=!0),t.identifierPrefix!==void 0&&(r=t.identifierPrefix),t.onRecoverableError!==void 0&&(l=t.onRecoverableError)),t=Ru(e,1,!1,null,null,n,!1,r,l),e[Ye]=t.current,Hn(e.nodeType===8?e.parentNode:e),new Mu(t)};Se.findDOMNode=function(e){if(e==null)return null;if(e.nodeType===1)return e;var t=e._reactInternals;if(t===void 0)throw typeof e.render=="function"?Error(x(188)):(e=Object.keys(e).join(","),Error(x(268,e)));return e=Cs(t),e=e===null?null:e.stateNode,e};Se.flushSync=function(e){return Mt(e)};Se.hydrate=function(e,t,n){if(!wl(t))throw Error(x(200));return Sl(null,e,t,!0,n)};Se.hydrateRoot=function(e,t,n){if(!Du(e))throw Error(x(405));var r=n!=null&&n.hydratedSources||null,l=!1,i="",u=rc;if(n!=null&&(n.unstable_strictMode===!0&&(l=!0),n.identifierPrefix!==void 0&&(i=n.identifierPrefix),n.onRecoverableError!==void 0&&(u=n.onRecoverableError)),t=nc(t,null,e,1,n??null,l,!1,i,u),e[Ye]=t.current,Hn(e),r)for(e=0;e<r.length;e++)n=r[e],l=n._getVersion,l=l(n._source),t.mutableSourceEagerHydrationData==null?t.mutableSourceEagerHydrationData=[n,l]:t.mutableSourceEagerHydrationData.push(n,l);return new kl(t)};Se.render=function(e,t,n){if(!wl(t))throw Error(x(200));return Sl(null,e,t,!1,n)};Se.unmountComponentAtNode=function(e){if(!wl(e))throw Error(x(40));return e._reactRootContainer?(Mt(function(){Sl(null,null,e,!1,function(){e._reactRootContainer=null,e[Ye]=null})}),!0):!1};Se.unstable_batchedUpdates=Pu;Se.unstable_renderSubtreeIntoContainer=function(e,t,n,r){if(!wl(n))throw Error(x(200));if(e==null||e._reactInternals===void 0)throw Error(x(38));return Sl(e,t,n,!1,r)};Se.version="18.3.1-next-f1338f8080-20240426";function lc(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(lc)}catch(e){console.error(e)}}lc(),ls.exports=Se;var Rd=ls.exports,ic,Wo=Rd;ic=Wo.createRoot,Wo.hydrateRoot;const Od=new URLSearchParams(location.search),Ko=Od.get("token");Ko&&(sessionStorage.setItem("skillpot-token",Ko),history.replaceState(null,"",location.pathname));function Vi(){return sessionStorage.getItem("skillpot-token")??""}async function te(e,t={}){const n=await fetch(e,{method:t.method??"GET",headers:{"content-type":"application/json",...Vi()?{"x-skillpot-token":Vi()}:{}},body:t.body===void 0?void 0:JSON.stringify(t.body)}),r=await n.json().catch(()=>({}));if(!n.ok)throw new Error((r==null?void 0:r.error)??`HTTP ${n.status}`);return r}const Md=[{id:"all",label:"全部"},{id:"enabled",label:"已开放"},{id:"issue",label:"异常/漂移"}];function Dd(e){return e.enabled&&e.managed?"cell ok":e.enabled&&!e.actual?"cell warn":e.enabled&&e.actual&&!e.managed?"cell conflict":!e.enabled&&e.managed?"cell warn":!e.enabled&&e.actual?"cell conflict":"cell muted"}function Id(e){return e.enabled&&e.managed?"✓":e.enabled&&!e.actual?"⚠":e.enabled&&e.actual&&!e.managed||!e.enabled&&e.managed?"!":!e.enabled&&e.actual?"×":"·"}function Fd(e){return e.enabled&&e.managed?"已开放(symlink 受管)":e.enabled&&!e.actual?"漂移:声明开放但链接缺失,点击重建":e.enabled&&e.actual&&!e.managed?"冲突:被外部同名条目占用,点击也不生效":!e.enabled&&e.managed?"异常:已关闭但受管链接仍在,点击撤下":!e.enabled&&e.actual?"外部同名占用:非本工具创建,点击无效":"未开放,点击开放"}function $d({state:e,reload:t,toast:n,onOpenDetail:r}){const[l,i]=z.useState(null),[u,o]=z.useState(""),[s,f]=z.useState("all"),[v,h]=z.useState(20),{matrix:m}=e,S=z.useMemo(()=>{const a=u.trim().toLowerCase();return m.skills.filter(c=>{if(a&&!c.toLowerCase().includes(a))return!1;if(s==="all")return!0;const p=m.agents.map(g=>{var N;return(N=m.cells[c])==null?void 0:N[g.id]});return s==="enabled"?p.some(g=>g==null?void 0:g.enabled):p.some(g=>g&&(g.enabled&&!g.actual||g.enabled&&g.actual&&!g.managed||!g.enabled&&g.managed))})},[m,u,s]),w=z.useMemo(()=>S.slice(0,v),[S,v]),k=async(a,c)=>{if(l)return;const p=c?"开放":"关闭";if(window.confirm(`确认对该 Agent ${p}全部 skill?`)){i(`bulk:${a}`);try{const g=await te("/api/bulk",{method:"POST",body:{agent:a,enable:c}});n(`已${p} ${g.changed.length} 个 skill${g.skipped.length?`,跳过 ${g.skipped.length} 个`:""}`,g.changed.length===0),await t()}catch(g){n(g.message,!0)}finally{i(null)}}},O=async(a,c)=>{const p=`${a}@${c}`;if(!l){i(p);try{const g=await te("/api/toggle",{method:"POST",body:{skill:a,agent:c}});n(g.message,!g.ok),await t()}catch(g){n(g.message,!0)}finally{i(null)}}};return m.skills.length?d.jsxs("div",{className:"matrix-wrap",children:[d.jsxs("div",{className:"toolbar",children:[d.jsx("input",{className:"input grow",placeholder:"搜索 skill 名…",value:u,onChange:a=>{o(a.target.value),h(20)}}),d.jsx("div",{className:"segment",children:Md.map(a=>d.jsx("button",{className:s===a.id?"seg-btn active":"seg-btn",onClick:()=>{f(a.id),h(20)},children:a.label},a.id))}),d.jsxs("span",{className:"dim small",children:[S.length,"/",m.skills.length]})]}),d.jsxs("table",{className:"matrix",children:[d.jsx("thead",{children:d.jsxs("tr",{children:[d.jsx("th",{className:"skill-col",children:"Skill"}),m.agents.map(a=>d.jsxs("th",{className:a.installed?"":"agent-off",title:a.skillsDir,children:[d.jsx("div",{children:a.name}),!a.installed&&d.jsx("span",{className:"dim",children:"(未检测到)"}),d.jsxs("span",{className:"col-bulk",children:[d.jsx("button",{className:"bulk-btn",title:`对 ${a.name} 开放全部 skill`,disabled:l!==null,onClick:()=>k(a.id,!0),children:"全开"}),d.jsx("button",{className:"bulk-btn",title:`对 ${a.name} 关闭全部 skill`,disabled:l!==null,onClick:()=>k(a.id,!1),children:"全停"})]})]},a.id))]})}),d.jsx("tbody",{children:w.map(a=>{var c;return d.jsxs("tr",{children:[d.jsx("td",{className:"skill-name link",title:((c=e.skills[a])==null?void 0:c.source)??"",onClick:()=>r(a),children:a}),m.agents.map(p=>{var N;const g=(N=m.cells[a])==null?void 0:N[p.id];return g?d.jsx("td",{className:Dd(g)+(l===`${a}@${p.id}`?" busy":""),title:Fd(g),onClick:()=>O(a,p.id),children:Id(g)},p.id):d.jsx("td",{className:"cell muted",children:"·"},p.id)})]},a)})})]}),S.length>v&&d.jsx("div",{className:"load-more",children:d.jsxs("button",{className:"btn",onClick:()=>h(a=>a+20),children:["加载更多(已显示 ",v,"/",S.length,")"]})}),S.length===0&&d.jsx("p",{className:"dim",style:{textAlign:"center",marginTop:16},children:"没有匹配的 skill(换个关键词或切回「全部」)。"}),d.jsxs("p",{className:"legend",children:["✓ 已开放 ⚠ 漂移(声明开放但链接缺失) ! 链接状态异常 × 外部同名占用 · 未开放",d.jsx("span",{className:"dim",children:" · 点击单元格切换(重启示例会话后生效)"})]})]}):d.jsxs("div",{className:"empty",children:[d.jsx("p",{children:"中央仓库为空。"}),d.jsxs("p",{className:"dim",children:["运行 ",d.jsx("code",{children:"skillpot adopt"})," 收编各 Agent 已有 skill(",d.jsx("code",{children:"--move"})," 为移动模式), 或 ",d.jsx("code",{children:"skillpot add"})," 安装。安装后即可在此切换开关。"]})]})}const Ud={error:"错误",warn:"警告",info:"提示"},Ad={resync:"自动修复:重新同步 symlink","drop-ledger":"自动修复:清理失效台账",adopt:"需人工确认:运行 skillpot adopt 收编"};function Vd({rev:e,toast:t}){const[n,r]=z.useState(null),[l,i]=z.useState(!1),u=z.useCallback(()=>{te("/api/doctor").then(f=>r(f.issues)).catch(f=>t(f.message,!0))},[t]);z.useEffect(()=>{u()},[u,e]);const o=async()=>{if(!l){i(!0);try{const f=await te("/api/doctor/fix",{method:"POST"});r(f.remaining),f.fixed.length?t(`已修复 ${f.fixed.length} 项`):t("没有可自动修复的项")}catch(f){t(f.message,!0)}finally{i(!1)}}};if(!n)return d.jsx("div",{className:"loading",children:"体检中…"});const s=n.filter(f=>f.fix&&f.fix!=="adopt").length;return d.jsxs("div",{className:"doctor",children:[d.jsxs("div",{className:"doctor-head",children:[d.jsx("h2",{children:n.length===0?"✓ 未发现问题":`发现 ${n.length} 个问题(错误 ${n.filter(f=>f.level==="error").length} / 警告 ${n.filter(f=>f.level==="warn").length})`}),n.length>0&&d.jsx("button",{className:"btn",onClick:o,disabled:l||s===0,children:l?"修复中…":s>0?`全部修复(${s} 项可自动修复)`:"无可自动修复项"})]}),n.length===0?d.jsx("p",{className:"dim",children:"config、中央仓库与各 Agent 目录三方一致。enable/disable 后记得重启示例会话。"}):d.jsx("ul",{className:"issue-list",children:n.map((f,v)=>d.jsxs("li",{className:`issue level-${f.level}`,children:[d.jsx("span",{className:`badge badge-${f.level}`,children:Ud[f.level]}),d.jsx("span",{className:"issue-msg",children:f.message}),f.fix&&d.jsxs("span",{className:"fix-hint",children:["(",Ad[f.fix],")"]})]},v))})]})}const Bd={imported:"已导入",linked:"已链接(move)",exists:"同名跳过","skipped-managed":"已受管","skipped-invalid":"跳过","dry-run":"待收编"},Hd={"up-to-date":"= 已是最新",outdated:"↑ 有更新",updated:"✔ 已更新",local:"· 本地来源",error:"✗ 失败"},Qd=[{key:"imported",label:"导入"},{key:"linked",label:"链接"},{key:"exists",label:"同名跳过"},{key:"skipped",label:"其他跳过"}];function Wd({rev:e,reload:t,toast:n}){const[r,l]=z.useState(null),[i,u]=z.useState(new Set),[o,s]=z.useState(!0),[f,v]=z.useState(!1),[h,m]=z.useState(!1),[S,w]=z.useState(null),[k,O]=z.useState(""),a=(E,C)=>`${E}\0${C}`,c=z.useCallback(()=>{te("/api/adopt").then(E=>{l(E.agents),u(new Set(E.agents.flatMap(C=>C.skills.filter(I=>I.valid).map(I=>a(C.id,I.name)))))}).catch(E=>n(E.message,!0))},[n]);z.useEffect(()=>{c()},[c,e]);const p=k.trim().toLowerCase(),g=r===null?null:r.map(E=>({...E,skills:E.skills.filter(C=>!p||C.name.toLowerCase().includes(p)||C.path.toLowerCase().includes(p))})),N=(g??[]).reduce((E,C)=>E+C.skills.length,0),T=E=>{u(C=>{const I=new Set(C);return I.has(E)?I.delete(E):I.add(E),I})},_=async()=>{if(h||!r)return;const E=r.flatMap(C=>C.skills.filter(I=>i.has(a(C.id,I.name))).map(I=>({agent:C.id,name:I.name})));if(!E.length){n("没有勾选任何可收编项",!0);return}m(!0);try{const C=await te("/api/adopt",{method:"POST",body:{picks:E,move:o,enableFor:f?[...new Set(E.map(I=>I.agent))]:[]}});w(C),n(`收编完成:导入 ${C.imported}、链接 ${C.linked}`),await t(),c()}catch(C){n(C.message,!0)}finally{m(!1)}};if(!r)return d.jsx("div",{className:"loading",children:"扫描各 Agent 目录中…"});const P=r.reduce((E,C)=>E+C.skills.length,0);return d.jsxs("div",{className:"panel",children:[d.jsxs("div",{className:"doctor-head",children:[d.jsxs("h2",{children:["收编已有 skill",P>0?`(发现 ${P} 个)`:""]}),d.jsx("button",{className:"btn",onClick:_,disabled:h||P===0||i.size===0,children:h?"收编中…":`收编勾选项(${i.size})`})]}),P>0&&d.jsxs("div",{className:"toolbar",children:[d.jsx("input",{className:"input grow",placeholder:"搜索名称 / 路径…",value:k,onChange:E=>O(E.target.value)}),d.jsxs("span",{className:"dim small",children:[N,"/",P]})]}),d.jsxs("div",{className:"form-row options",children:[d.jsxs("label",{className:"pick",children:[d.jsx("input",{type:"checkbox",checked:o,onChange:E=>s(E.target.checked)}),"移动模式(内容拷入后,原目录替换为 symlink,来源 Agent 继续可用)"]}),d.jsxs("label",{className:"pick",children:[d.jsx("input",{type:"checkbox",checked:f,onChange:E=>v(E.target.checked)}),"收编后开放给其来源 Agent"]})]}),P===0?d.jsx("p",{className:"dim",children:"各已安装 Agent 的 skills 目录下没有可收编的真实目录(受管 symlink 与外部链接会自动跳过)。"}):g.filter(E=>E.skills.length>0).map(E=>d.jsxs("div",{className:"adopt-group",children:[d.jsx("div",{className:"adopt-agent",children:E.name}),E.skills.map(C=>{const I=a(E.id,C.name);return d.jsxs("label",{className:C.valid?"adopt-item":"adopt-item off",children:[d.jsx("input",{type:"checkbox",disabled:!C.valid,checked:i.has(I),onChange:()=>T(I)}),d.jsx("span",{className:"mono",children:C.name}),d.jsx("span",{className:"dim small path",children:C.path}),C.inStore&&d.jsx("span",{className:"badge badge-warn",children:"仓库已有同名,move 时替换为 symlink"}),!C.valid&&d.jsx("span",{className:"badge badge-error",children:"目录名不合法"})]},I)})]},E.id)),S&&d.jsxs("div",{className:"result-box",children:[d.jsxs("div",{className:"result-title",children:["收编完成:",Qd.map(E=>`${E.label} ${S[E.key]}`).join(" · ")]}),S.items.filter(E=>E.detail&&E.status!=="imported"&&E.status!=="linked").map((E,C)=>d.jsxs("div",{className:"dim small",children:[E.agent,"/",E.name,":",Bd[E.status],E.detail?` — ${E.detail}`:""]},C))]})]})}function Kd({agents:e,reload:t,toast:n}){const[r,l]=z.useState(""),[i,u]=z.useState(""),[o,s]=z.useState(new Set),[f,v]=z.useState(!1),[h,m]=z.useState(null),S=k=>{s(O=>{const a=new Set(O);return a.has(k)?a.delete(k):a.add(k),a})},w=async()=>{if(!f){v(!0),m(null);try{const k=await te("/api/add",{method:"POST",body:{source:r.trim(),name:i.trim()||void 0,for:[...o]}});m(k),n(`已安装 ${k.name}`),l(""),u(""),await t()}catch(k){n(k.message,!0)}finally{v(!1)}}};return d.jsxs("div",{className:"panel",children:[d.jsx("h2",{children:"安装 skill"}),d.jsxs("p",{className:"dim",children:["本地目录或 git URL(支持 ",d.jsx("code",{children:"repo#subdir"})," 定位子目录)。安装后内容拷入中央仓库, 默认不对任何 Agent 开放。"]}),d.jsx("div",{className:"form-row",children:d.jsx("input",{className:"input grow",placeholder:"~/path/to/my-skill 或 https://github.com/owner/skills.git#subdir",value:r,onChange:k=>l(k.target.value)})}),d.jsxs("div",{className:"form-row",children:[d.jsx("input",{className:"input",style:{width:220},placeholder:"skill 名(可选)",value:i,onChange:k=>u(k.target.value)}),d.jsx("div",{className:"agent-picker",children:e.map(k=>d.jsxs("label",{className:k.installed?"pick":"pick off",children:[d.jsx("input",{type:"checkbox",disabled:!k.installed,checked:o.has(k.id),onChange:()=>S(k.id)}),k.name]},k.id))})]}),d.jsx("button",{className:"btn",onClick:w,disabled:f||!r.trim(),children:f?"安装中…(git 来源需克隆,可能稍慢)":"安装"}),h&&d.jsxs("div",{className:"result-box",children:[d.jsxs("div",{className:"result-title",children:["✔ ",h.name]}),h.description&&d.jsx("div",{className:"dim",children:h.description.slice(0,160)}),d.jsxs("div",{className:"dim mono small",children:["source: ",h.source," · checksum: ",h.checksum.slice(0,18),"…"]}),h.enabled.length>0&&d.jsxs("div",{children:["已开放给:",h.enabled.join("、")]}),h.skipped.map((k,O)=>d.jsxs("div",{className:"warn-text",children:["⚠ ",k.agent,": ",k.reason]},O)),h.lint.length>0&&d.jsxs("div",{className:"lint-box",children:[d.jsxs("div",{className:"dim",children:["安装即体检,发现 ",h.lint.length," 个问题:"]}),h.lint.map((k,O)=>d.jsxs("div",{className:k.level==="error"?"warn-text":"dim",children:[k.level==="error"?"✗":"⚠"," ",k.message]},O))]})]})]})}const Yd=e=>e.startsWith("git:");function Xd({skills:e,reload:t,toast:n,onOpenDetail:r}){const[l,i]=z.useState(null),[u,o]=z.useState(!1),[s,f]=z.useState(null),[v,h]=z.useState(""),m=v.trim().toLowerCase(),S=e.filter(a=>!m||a.name.toLowerCase().includes(m)||a.source.toLowerCase().includes(m)),w=async()=>{if(!u){o(!0);try{const a=await te("/api/update",{method:"POST",body:{check:!0}});i(a.results),await t()}catch(a){n(a.message,!0)}finally{o(!1)}}},k=async a=>{if(!s){f(a);try{const c=await te("/api/update",{method:"POST",body:{skill:a,check:!1}});i(p=>p?p.map(g=>c.results.find(N=>N.skill===a)??g):c.results),n(`${a} 更新操作完成`),await t()}catch(c){n(c.message,!0)}finally{f(null)}}},O=a=>l==null?void 0:l.find(c=>c.skill===a);return e.length?d.jsxs("div",{className:"panel",children:[d.jsxs("div",{className:"doctor-head",children:[d.jsx("h2",{children:"维护"}),d.jsx("button",{className:"btn",onClick:w,disabled:u,children:u?"检查中…(需克隆远端,可能稍慢)":"检查更新(git 来源)"})]}),d.jsx("p",{className:"dim",children:"git 来源的 skill 可原位更新(symlink 指向不变,无需重连);本地来源跳过。点击 skill 名查看详情与卸载。"}),e.length>0&&d.jsxs("div",{className:"toolbar",children:[d.jsx("input",{className:"input grow",placeholder:"搜索名称 / 来源…",value:v,onChange:a=>h(a.target.value)}),d.jsxs("span",{className:"dim small",children:[S.length,"/",e.length]})]}),d.jsxs("table",{className:"matrix update-table",children:[d.jsx("thead",{children:d.jsxs("tr",{children:[d.jsx("th",{className:"skill-col",children:"Skill"}),d.jsx("th",{children:"来源"}),d.jsx("th",{children:"状态"}),d.jsx("th",{children:"操作"})]})}),d.jsx("tbody",{children:S.map(a=>{const c=O(a.name),p=Yd(a.source);return d.jsxs("tr",{children:[d.jsx("td",{className:"skill-name link",onClick:()=>r(a.name),children:a.name}),d.jsx("td",{className:"dim small mono src",title:a.source,children:a.source}),d.jsxs("td",{className:(c==null?void 0:c.status)==="outdated"?"warn-text":"",children:[c?Hd[c.status]:"—",(c==null?void 0:c.detail)&&d.jsxs("span",{className:"dim small",children:[" ",c.detail]})]}),d.jsx("td",{children:p?d.jsx("button",{className:"btn small-btn",disabled:s!==null||(c==null?void 0:c.status)!=="outdated",onClick:()=>k(a.name),title:(c==null?void 0:c.status)==="outdated"?"应用更新":"先检查更新",children:s===a.name?"更新中…":"更新"}):d.jsx("span",{className:"dim small",children:"—"})})]},a.name)})})]})]}):d.jsxs("div",{className:"panel",children:[d.jsx("h2",{children:"维护"}),d.jsx("p",{className:"dim",children:"中央仓库为空。先安装或收编 skill。"})]})}const Nr=20;function Gd({rev:e,reload:t,toast:n}){const[r,l]=z.useState(null),[i,u]=z.useState(""),[o,s]=z.useState(null),[f,v]=z.useState(!1),[h,m]=z.useState(""),[S,w]=z.useState(null),[k,O]=z.useState(!1),[a,c]=z.useState(""),[p,g]=z.useState(""),[N,T]=z.useState(""),[_,P]=z.useState(Nr),E=z.useCallback(async()=>{const y=await te("/api/market/sources");return l(y.sources),y.sources},[]),C=z.useCallback(async(y,L=!1)=>{v(!0),s(null),P(Nr);try{const R=await te(`/api/market/scan?url=${encodeURIComponent(y)}${L?"&refresh=1":""}`);s(R.skills),m(R.cloned?"已重新克隆":"来自本地缓存")}catch(R){n(R.message,!0),s([])}finally{v(!1)}},[n]);z.useEffect(()=>{E().then(y=>{y.length&&u(y[0].url)}).catch(y=>n(y.message,!0))},[]),z.useEffect(()=>{i&&C(i)},[i,C,e]);const I=y=>{y!==i&&u(y)},gt=async()=>{if(a.trim())try{const y=await te("/api/market/sources/add",{method:"POST",body:{url:a.trim(),name:p.trim()||void 0}});n(`已添加源 ${y.source.name}`),c(""),g(""),O(!1);const L=await E();u(y.source.url)}catch(y){n(y.message,!0)}},yt=async y=>{if(window.confirm("确认移除该自定义源?(不会卸载已安装的 skill)"))try{await te("/api/market/sources/remove",{method:"POST",body:{url:y}});const L=await E();i===y&&u(L.length?L[0].url:""),n("已移除源")}catch(L){n(L.message,!0)}},rr=async y=>{if(!S){w(y.subdir);try{const L=await te("/api/market/install",{method:"POST",body:{url:i,subdir:y.subdir}});n(`已安装 ${L.name}`),s(R=>R&&R.map(U=>U.subdir===y.subdir?{...U,installed:!0}:U)),await t()}catch(L){n(L.message,!0)}finally{w(null)}}},kt=z.useMemo(()=>{const y=N.trim().toLowerCase();return y?(o??[]).filter(L=>L.name.toLowerCase().includes(y)||L.description.toLowerCase().includes(y)||L.subdir.toLowerCase().includes(y)):o??[]},[o,N]),Ft=z.useMemo(()=>kt.slice(0,_),[kt,_]);if(!r)return d.jsx("div",{className:"loading",children:"加载源…"});const wt=r.find(y=>y.url===i);return d.jsxs("div",{className:"panel",children:[d.jsxs("div",{className:"doctor-head",children:[d.jsx("h2",{children:"市场"}),d.jsx("button",{className:"btn",onClick:()=>O(y=>!y),children:k?"取消":"添加源"})]}),k&&d.jsxs("div",{className:"form-row",children:[d.jsx("input",{className:"input grow",placeholder:"git 仓库地址,如 https://github.com/owner/skills.git",value:a,onChange:y=>c(y.target.value)}),d.jsx("input",{className:"input",style:{width:160},placeholder:"名称(可选)",value:p,onChange:y=>g(y.target.value)}),d.jsx("button",{className:"btn",onClick:gt,disabled:!a.trim(),children:"确定"})]}),d.jsxs("div",{className:"form-row",children:[r.map(y=>d.jsxs("button",{className:y.url===i?"seg-btn active":"seg-btn",onClick:()=>I(y.url),title:y.url,children:[y.name,y.builtin&&d.jsx("span",{className:"dim",children:"(内置)"})]},y.url)),wt&&!wt.builtin&&d.jsx("button",{className:"seg-btn danger-btn",onClick:()=>yt(wt.url),children:"移除此源"})]}),d.jsxs("div",{className:"form-row",style:{justifyContent:"space-between"},children:[d.jsx("span",{className:"dim small mono",children:i}),d.jsx("button",{className:"btn small-btn",onClick:()=>C(i,!0),disabled:f,children:f?"克隆/扫描中…(首次较慢)":"刷新"})]}),d.jsxs("div",{className:"toolbar",children:[d.jsx("input",{className:"input grow",placeholder:"搜索名称 / 说明 / 子目录…",value:N,onChange:y=>{T(y.target.value),P(Nr)}}),d.jsx("span",{className:"dim small",children:f?"扫描中…":`${kt.length}/${(o??[]).length} · ${h}`})]}),o?o.length===0?d.jsx("p",{className:"dim",children:"该仓库中没有找到 SKILL.md 目录。"}):d.jsxs(d.Fragment,{children:[Ft.length===0?d.jsx("p",{className:"dim",children:"没有匹配的 skill(换个关键词试试)。"}):d.jsxs("table",{className:"matrix update-table",children:[d.jsx("thead",{children:d.jsxs("tr",{children:[d.jsx("th",{className:"skill-col",children:"Skill"}),d.jsx("th",{children:"说明"}),d.jsx("th",{children:"子目录"}),d.jsx("th",{children:"操作"})]})}),d.jsx("tbody",{children:Ft.map(y=>d.jsxs("tr",{children:[d.jsx("td",{className:"skill-name",children:y.name}),d.jsx("td",{className:"dim small",children:y.description.slice(0,90)}),d.jsx("td",{className:"dim small mono",children:y.subdir}),d.jsx("td",{children:y.installed?d.jsx("span",{className:"dim small",children:"已安装"}):d.jsx("button",{className:"btn small-btn",disabled:S!==null,onClick:()=>rr(y),children:S===y.subdir?"安装中…":"安装"})})]},y.subdir))})]}),kt.length>_&&d.jsx("div",{className:"load-more",children:d.jsxs("button",{className:"btn",onClick:()=>P(y=>y+Nr),children:["加载更多(已显示 ",_,"/",kt.length,")"]})}),d.jsx("p",{className:"legend",children:"安装 = 拷贝进中央仓库,默认不对任何 Agent 开放(去「开关矩阵」打勾或安装时先收着)。 官方源中 docx/pdf/pptx/xlsx 为 source-available 许可,使用前请阅原仓库说明。"})]}):null]})}function Zd({skill:e,onClose:t,reload:n,toast:r}){var f;const[l,i]=z.useState(null),[u,o]=z.useState(!1);z.useEffect(()=>{te(`/api/skill/${encodeURIComponent(e)}`).then(i).catch(v=>{r(v.message,!0),t()})},[e]);const s=async()=>{if(!u&&window.confirm(`确认卸载 ${e}?将撤下所有 Agent 的链接并删除中央仓库内容,不可恢复。`)){o(!0);try{await te("/api/remove",{method:"POST",body:{skill:e}}),r(`已卸载 ${e}`),await n(),t()}catch(v){r(v.message,!0),o(!1)}}};return d.jsx("div",{className:"modal-mask",onClick:t,children:d.jsxs("div",{className:"modal",onClick:v=>v.stopPropagation(),children:[d.jsxs("div",{className:"modal-head",children:[d.jsx("h2",{children:e}),d.jsxs("div",{className:"modal-actions",children:[d.jsx("button",{className:"btn danger",onClick:s,disabled:u,children:u?"卸载中…":"卸载"}),d.jsx("button",{className:"tab",onClick:t,children:"关闭"})]})]}),l?d.jsxs(d.Fragment,{children:[((f=l.meta)==null?void 0:f.description)&&d.jsx("p",{children:l.meta.description}),l.lint.length>0&&d.jsxs("div",{className:"lint-box",children:[d.jsxs("div",{className:"dim",children:["lint:",l.lint.length," 个问题"]}),l.lint.map((v,h)=>d.jsxs("div",{className:v.level==="error"?"warn-text":"dim",children:[v.level==="error"?"✗":"⚠"," ",v.message]},h))]}),d.jsxs("div",{className:"detail-files",children:[d.jsxs("div",{className:"dim",children:["文件(",l.files.length,")"]}),d.jsx("div",{className:"file-list mono small",children:l.files.map(v=>d.jsx("div",{children:v},v))})]}),d.jsx("pre",{className:"skill-md",children:l.skillMd})]}):d.jsx("div",{className:"loading",children:"加载详情…"})]})})}const Jd=[{id:"matrix",label:"开关矩阵"},{id:"doctor",label:"体检"},{id:"adopt",label:"收编"},{id:"add",label:"安装"},{id:"market",label:"市场"},{id:"update",label:"维护"}];function qd(){const[e,t]=z.useState("matrix"),[n,r]=z.useState(null),[l,i]=z.useState([]),[u,o]=z.useState(null),[s,f]=z.useState(0),v=z.useRef(void 0),h=z.useCallback((w,k=!1)=>{const O=Date.now()+Math.random();i(a=>[...a,{id:O,text:w,bad:k}]),setTimeout(()=>i(a=>a.filter(c=>c.id!==O)),4e3)},[]),m=z.useCallback(()=>te("/api/state").then(r).catch(w=>h(w.message,!0)),[h]);z.useEffect(()=>{m()},[m]),z.useEffect(()=>{const w=Vi(),k=new EventSource("/api/events"+(w?`?token=${encodeURIComponent(w)}`:""));return k.onmessage=()=>{window.clearTimeout(v.current),v.current=window.setTimeout(()=>{f(O=>O+1),m()},150)},()=>k.close()},[m]);const S=n?Object.keys(n.skills).length:0;return d.jsxs("div",{className:"app",children:[d.jsxs("header",{className:"topbar",children:[d.jsxs("div",{className:"brand",children:["🍲 SkillPot ",d.jsxs("span",{className:"ver",children:["v",(n==null?void 0:n.version)??"…"]})]}),d.jsx("nav",{className:"tabs",children:Jd.map(w=>d.jsx("button",{className:e===w.id?"tab active":"tab",onClick:()=>t(w.id),children:w.label},w.id))}),d.jsxs("div",{className:"meta",children:[S," 个 skill · 中央仓库 ~/.skillpot"]})]}),d.jsx("main",{className:"content",children:n?e==="matrix"?d.jsx($d,{state:n,reload:m,toast:h,onOpenDetail:o}):e==="doctor"?d.jsx(Vd,{rev:s,toast:h}):e==="adopt"?d.jsx(Wd,{rev:s,reload:m,toast:h}):e==="add"?d.jsx(Kd,{agents:n.matrix.agents,reload:m,toast:h}):e==="market"?d.jsx(Gd,{rev:s,reload:m,toast:h}):d.jsx(Xd,{skills:Object.entries(n.skills).map(([w,k])=>({name:w,source:k.source})).sort((w,k)=>w.name.localeCompare(k.name)),reload:m,toast:h,onOpenDetail:o}):d.jsx("div",{className:"loading",children:"加载中…(首次会探测本机 Agent,可能需要数秒)"})}),u&&d.jsx(Zd,{skill:u,onClose:()=>o(null),reload:m,toast:h}),d.jsx("div",{className:"toasts",children:l.map(w=>d.jsx("div",{className:w.bad?"toast bad":"toast",children:w.text},w.id))})]})}ic(document.getElementById("root")).render(d.jsx(qd,{}));
|
|
40
|
+
`+i.stack}return{value:e,source:t,stack:l,digest:null}}function Wl(e,t,n){return{value:e,source:null,stack:n??null,digest:t??null}}function _i(e,t){try{console.error(t.value)}catch(n){setTimeout(function(){throw n})}}var od=typeof WeakMap=="function"?WeakMap:Map;function La(e,t,n){n=We(-1,n),n.tag=3,n.payload={element:null};var r=t.value;return n.callback=function(){nl||(nl=!0,Fi=r),_i(e,t)},n}function Ra(e,t,n){n=We(-1,n),n.tag=3;var r=e.type.getDerivedStateFromError;if(typeof r=="function"){var l=t.value;n.payload=function(){return r(l)},n.callback=function(){_i(e,t)}}var i=e.stateNode;return i!==null&&typeof i.componentDidCatch=="function"&&(n.callback=function(){_i(e,t),typeof r!="function"&&(at===null?at=new Set([this]):at.add(this));var u=t.stack;this.componentDidCatch(t.value,{componentStack:u!==null?u:""})}),n}function _o(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new od;var l=new Set;r.set(t,l)}else l=r.get(t),l===void 0&&(l=new Set,r.set(t,l));l.has(n)||(l.add(n),e=Sd.bind(null,e,t,n),t.then(e,e))}function Po(e){do{var t;if((t=e.tag===13)&&(t=e.memoizedState,t=t!==null?t.dehydrated!==null:!0),t)return e;e=e.return}while(e!==null);return null}function To(e,t,n,r,l){return e.mode&1?(e.flags|=65536,e.lanes=l,e):(e===t?e.flags|=65536:(e.flags|=128,n.flags|=131072,n.flags&=-52805,n.tag===1&&(n.alternate===null?n.tag=17:(t=We(-1,1),t.tag=2,st(n,t,1))),n.lanes|=1),e)}var sd=Ze.ReactCurrentOwner,pe=!1;function se(e,t,n,r){t.child=e===null?oa(t,null,n,r):on(t,e.child,n,r)}function zo(e,t,n,r,l){n=n.render;var i=t.ref;return tn(t,l),r=wu(e,t,n,r,i,l),n=Su(),e!==null&&!pe?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~l,Ge(e,t,l)):(B&&n&&su(t),t.flags|=1,se(e,t,r,l),t.child)}function Lo(e,t,n,r,l){if(e===null){var i=n.type;return typeof i=="function"&&!Lu(i)&&i.defaultProps===void 0&&n.compare===null&&n.defaultProps===void 0?(t.tag=15,t.type=i,Oa(e,t,i,r,l)):(e=Dr(n.type,null,r,t,t.mode,l),e.ref=t.ref,e.return=t,t.child=e)}if(i=e.child,!(e.lanes&l)){var u=i.memoizedProps;if(n=n.compare,n=n!==null?n:Bn,n(u,r)&&e.ref===t.ref)return Ge(e,t,l)}return t.flags|=1,e=ft(i,r),e.ref=t.ref,e.return=t,t.child=e}function Oa(e,t,n,r,l){if(e!==null){var i=e.memoizedProps;if(Bn(i,r)&&e.ref===t.ref)if(pe=!1,t.pendingProps=r=i,(e.lanes&l)!==0)e.flags&131072&&(pe=!0);else return t.lanes=e.lanes,Ge(e,t,l)}return Pi(e,t,n,r,l)}function Ma(e,t,n){var r=t.pendingProps,l=r.children,i=e!==null?e.memoizedState:null;if(r.mode==="hidden")if(!(t.mode&1))t.memoizedState={baseLanes:0,cachePool:null,transitions:null},$(Zt,ge),ge|=n;else{if(!(n&1073741824))return e=i!==null?i.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,$(Zt,ge),ge|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},r=i!==null?i.baseLanes:n,$(Zt,ge),ge|=r}else i!==null?(r=i.baseLanes|n,t.memoizedState=null):r=n,$(Zt,ge),ge|=r;return se(e,t,l,n),t.child}function Da(e,t){var n=t.ref;(e===null&&n!==null||e!==null&&e.ref!==n)&&(t.flags|=512,t.flags|=2097152)}function Pi(e,t,n,r,l){var i=he(n)?zt:oe.current;return i=ln(t,i),tn(t,l),n=wu(e,t,n,r,i,l),r=Su(),e!==null&&!pe?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~l,Ge(e,t,l)):(B&&r&&su(t),t.flags|=1,se(e,t,n,l),t.child)}function Ro(e,t,n,r,l){if(he(n)){var i=!0;Kr(t)}else i=!1;if(tn(t,l),t.stateNode===null)Rr(e,t),za(t,n,r),ji(t,n,r,l),r=!0;else if(e===null){var u=t.stateNode,o=t.memoizedProps;u.props=o;var s=u.context,f=n.contextType;typeof f=="object"&&f!==null?f=_e(f):(f=he(n)?zt:oe.current,f=ln(t,f));var v=n.getDerivedStateFromProps,h=typeof v=="function"||typeof u.getSnapshotBeforeUpdate=="function";h||typeof u.UNSAFE_componentWillReceiveProps!="function"&&typeof u.componentWillReceiveProps!="function"||(o!==r||s!==f)&&jo(t,u,r,f),be=!1;var m=t.memoizedState;u.state=m,Jr(t,r,u,l),s=t.memoizedState,o!==r||m!==s||me.current||be?(typeof v=="function"&&(Ci(t,n,v,r),s=t.memoizedState),(o=be||Co(t,n,o,r,m,s,f))?(h||typeof u.UNSAFE_componentWillMount!="function"&&typeof u.componentWillMount!="function"||(typeof u.componentWillMount=="function"&&u.componentWillMount(),typeof u.UNSAFE_componentWillMount=="function"&&u.UNSAFE_componentWillMount()),typeof u.componentDidMount=="function"&&(t.flags|=4194308)):(typeof u.componentDidMount=="function"&&(t.flags|=4194308),t.memoizedProps=r,t.memoizedState=s),u.props=r,u.state=s,u.context=f,r=o):(typeof u.componentDidMount=="function"&&(t.flags|=4194308),r=!1)}else{u=t.stateNode,aa(e,t),o=t.memoizedProps,f=t.type===t.elementType?o:ze(t.type,o),u.props=f,h=t.pendingProps,m=u.context,s=n.contextType,typeof s=="object"&&s!==null?s=_e(s):(s=he(n)?zt:oe.current,s=ln(t,s));var S=n.getDerivedStateFromProps;(v=typeof S=="function"||typeof u.getSnapshotBeforeUpdate=="function")||typeof u.UNSAFE_componentWillReceiveProps!="function"&&typeof u.componentWillReceiveProps!="function"||(o!==h||m!==s)&&jo(t,u,r,s),be=!1,m=t.memoizedState,u.state=m,Jr(t,r,u,l);var w=t.memoizedState;o!==h||m!==w||me.current||be?(typeof S=="function"&&(Ci(t,n,S,r),w=t.memoizedState),(f=be||Co(t,n,f,r,m,w,s)||!1)?(v||typeof u.UNSAFE_componentWillUpdate!="function"&&typeof u.componentWillUpdate!="function"||(typeof u.componentWillUpdate=="function"&&u.componentWillUpdate(r,w,s),typeof u.UNSAFE_componentWillUpdate=="function"&&u.UNSAFE_componentWillUpdate(r,w,s)),typeof u.componentDidUpdate=="function"&&(t.flags|=4),typeof u.getSnapshotBeforeUpdate=="function"&&(t.flags|=1024)):(typeof u.componentDidUpdate!="function"||o===e.memoizedProps&&m===e.memoizedState||(t.flags|=4),typeof u.getSnapshotBeforeUpdate!="function"||o===e.memoizedProps&&m===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=w),u.props=r,u.state=w,u.context=s,r=f):(typeof u.componentDidUpdate!="function"||o===e.memoizedProps&&m===e.memoizedState||(t.flags|=4),typeof u.getSnapshotBeforeUpdate!="function"||o===e.memoizedProps&&m===e.memoizedState||(t.flags|=1024),r=!1)}return Ti(e,t,n,r,i,l)}function Ti(e,t,n,r,l,i){Da(e,t);var u=(t.flags&128)!==0;if(!r&&!u)return l&&go(t,n,!1),Ge(e,t,i);r=t.stateNode,sd.current=t;var o=u&&typeof n.getDerivedStateFromError!="function"?null:r.render();return t.flags|=1,e!==null&&u?(t.child=on(t,e.child,null,i),t.child=on(t,null,o,i)):se(e,t,o,i),t.memoizedState=r.state,l&&go(t,n,!0),t.child}function Ia(e){var t=e.stateNode;t.pendingContext?vo(e,t.pendingContext,t.pendingContext!==t.context):t.context&&vo(e,t.context,!1),vu(e,t.containerInfo)}function Oo(e,t,n,r,l){return un(),cu(l),t.flags|=256,se(e,t,n,r),t.child}var zi={dehydrated:null,treeContext:null,retryLane:0};function Li(e){return{baseLanes:e,cachePool:null,transitions:null}}function Fa(e,t,n){var r=t.pendingProps,l=H.current,i=!1,u=(t.flags&128)!==0,o;if((o=u)||(o=e!==null&&e.memoizedState===null?!1:(l&2)!==0),o?(i=!0,t.flags&=-129):(e===null||e.memoizedState!==null)&&(l|=1),$(H,l&1),e===null)return Ni(t),e=t.memoizedState,e!==null&&(e=e.dehydrated,e!==null)?(t.mode&1?e.data==="$!"?t.lanes=8:t.lanes=1073741824:t.lanes=1,null):(u=r.children,e=r.fallback,i?(r=t.mode,i=t.child,u={mode:"hidden",children:u},!(r&1)&&i!==null?(i.childLanes=0,i.pendingProps=u):i=gl(u,r,0,null),e=Tt(e,r,n,null),i.return=t,e.return=t,i.sibling=e,t.child=i,t.child.memoizedState=Li(n),t.memoizedState=zi,e):Eu(t,u));if(l=e.memoizedState,l!==null&&(o=l.dehydrated,o!==null))return ad(e,t,u,r,o,l,n);if(i){i=r.fallback,u=t.mode,l=e.child,o=l.sibling;var s={mode:"hidden",children:r.children};return!(u&1)&&t.child!==l?(r=t.child,r.childLanes=0,r.pendingProps=s,t.deletions=null):(r=ft(l,s),r.subtreeFlags=l.subtreeFlags&14680064),o!==null?i=ft(o,i):(i=Tt(i,u,n,null),i.flags|=2),i.return=t,r.return=t,r.sibling=i,t.child=r,r=i,i=t.child,u=e.child.memoizedState,u=u===null?Li(n):{baseLanes:u.baseLanes|n,cachePool:null,transitions:u.transitions},i.memoizedState=u,i.childLanes=e.childLanes&~n,t.memoizedState=zi,r}return i=e.child,e=i.sibling,r=ft(i,{mode:"visible",children:r.children}),!(t.mode&1)&&(r.lanes=n),r.return=t,r.sibling=null,e!==null&&(n=t.deletions,n===null?(t.deletions=[e],t.flags|=16):n.push(e)),t.child=r,t.memoizedState=null,r}function Eu(e,t){return t=gl({mode:"visible",children:t},e.mode,0,null),t.return=e,e.child=t}function kr(e,t,n,r){return r!==null&&cu(r),on(t,e.child,null,n),e=Eu(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function ad(e,t,n,r,l,i,u){if(n)return t.flags&256?(t.flags&=-257,r=Wl(Error(x(422))),kr(e,t,u,r)):t.memoizedState!==null?(t.child=e.child,t.flags|=128,null):(i=r.fallback,l=t.mode,r=gl({mode:"visible",children:r.children},l,0,null),i=Tt(i,l,u,null),i.flags|=2,r.return=t,i.return=t,r.sibling=i,t.child=r,t.mode&1&&on(t,e.child,null,u),t.child.memoizedState=Li(u),t.memoizedState=zi,i);if(!(t.mode&1))return kr(e,t,u,null);if(l.data==="$!"){if(r=l.nextSibling&&l.nextSibling.dataset,r)var o=r.dgst;return r=o,i=Error(x(419)),r=Wl(i,r,void 0),kr(e,t,u,r)}if(o=(u&e.childLanes)!==0,pe||o){if(r=b,r!==null){switch(u&-u){case 4:l=2;break;case 16:l=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:l=32;break;case 536870912:l=268435456;break;default:l=0}l=l&(r.suspendedLanes|u)?0:l,l!==0&&l!==i.retryLane&&(i.retryLane=l,Xe(e,l),Me(r,e,l,-1))}return zu(),r=Wl(Error(x(421))),kr(e,t,u,r)}return l.data==="$?"?(t.flags|=128,t.child=e.child,t=xd.bind(null,e),l._reactRetry=t,null):(e=i.treeContext,ye=ot(l.nextSibling),ke=t,B=!0,Re=null,e!==null&&(Ne[Ee++]=He,Ne[Ee++]=Qe,Ne[Ee++]=Lt,He=e.id,Qe=e.overflow,Lt=t),t=Eu(t,r.children),t.flags|=4096,t)}function Mo(e,t,n){e.lanes|=t;var r=e.alternate;r!==null&&(r.lanes|=t),Ei(e.return,t,n)}function Kl(e,t,n,r,l){var i=e.memoizedState;i===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:l}:(i.isBackwards=t,i.rendering=null,i.renderingStartTime=0,i.last=r,i.tail=n,i.tailMode=l)}function $a(e,t,n){var r=t.pendingProps,l=r.revealOrder,i=r.tail;if(se(e,t,r.children,n),r=H.current,r&2)r=r&1|2,t.flags|=128;else{if(e!==null&&e.flags&128)e:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&Mo(e,n,t);else if(e.tag===19)Mo(e,n,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;e.sibling===null;){if(e.return===null||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}r&=1}if($(H,r),!(t.mode&1))t.memoizedState=null;else switch(l){case"forwards":for(n=t.child,l=null;n!==null;)e=n.alternate,e!==null&&qr(e)===null&&(l=n),n=n.sibling;n=l,n===null?(l=t.child,t.child=null):(l=n.sibling,n.sibling=null),Kl(t,!1,l,n,i);break;case"backwards":for(n=null,l=t.child,t.child=null;l!==null;){if(e=l.alternate,e!==null&&qr(e)===null){t.child=l;break}e=l.sibling,l.sibling=n,n=l,l=e}Kl(t,!0,n,null,i);break;case"together":Kl(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function Rr(e,t){!(t.mode&1)&&e!==null&&(e.alternate=null,t.alternate=null,t.flags|=2)}function Ge(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),Ot|=t.lanes,!(n&t.childLanes))return null;if(e!==null&&t.child!==e.child)throw Error(x(153));if(t.child!==null){for(e=t.child,n=ft(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=ft(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function cd(e,t,n){switch(t.tag){case 3:Ia(t),un();break;case 5:ca(t);break;case 1:he(t.type)&&Kr(t);break;case 4:vu(t,t.stateNode.containerInfo);break;case 10:var r=t.type._context,l=t.memoizedProps.value;$(Gr,r._currentValue),r._currentValue=l;break;case 13:if(r=t.memoizedState,r!==null)return r.dehydrated!==null?($(H,H.current&1),t.flags|=128,null):n&t.child.childLanes?Fa(e,t,n):($(H,H.current&1),e=Ge(e,t,n),e!==null?e.sibling:null);$(H,H.current&1);break;case 19:if(r=(n&t.childLanes)!==0,e.flags&128){if(r)return $a(e,t,n);t.flags|=128}if(l=t.memoizedState,l!==null&&(l.rendering=null,l.tail=null,l.lastEffect=null),$(H,H.current),r)break;return null;case 22:case 23:return t.lanes=0,Ma(e,t,n)}return Ge(e,t,n)}var Ua,Ri,Aa,Va;Ua=function(e,t){for(var n=t.child;n!==null;){if(n.tag===5||n.tag===6)e.appendChild(n.stateNode);else if(n.tag!==4&&n.child!==null){n.child.return=n,n=n.child;continue}if(n===t)break;for(;n.sibling===null;){if(n.return===null||n.return===t)return;n=n.return}n.sibling.return=n.return,n=n.sibling}};Ri=function(){};Aa=function(e,t,n,r){var l=e.memoizedProps;if(l!==r){e=t.stateNode,_t(Ae.current);var i=null;switch(n){case"input":l=ei(e,l),r=ei(e,r),i=[];break;case"select":l=W({},l,{value:void 0}),r=W({},r,{value:void 0}),i=[];break;case"textarea":l=ri(e,l),r=ri(e,r),i=[];break;default:typeof l.onClick!="function"&&typeof r.onClick=="function"&&(e.onclick=Qr)}ii(n,r);var u;n=null;for(f in l)if(!r.hasOwnProperty(f)&&l.hasOwnProperty(f)&&l[f]!=null)if(f==="style"){var o=l[f];for(u in o)o.hasOwnProperty(u)&&(n||(n={}),n[u]="")}else f!=="dangerouslySetInnerHTML"&&f!=="children"&&f!=="suppressContentEditableWarning"&&f!=="suppressHydrationWarning"&&f!=="autoFocus"&&(Dn.hasOwnProperty(f)?i||(i=[]):(i=i||[]).push(f,null));for(f in r){var s=r[f];if(o=l!=null?l[f]:void 0,r.hasOwnProperty(f)&&s!==o&&(s!=null||o!=null))if(f==="style")if(o){for(u in o)!o.hasOwnProperty(u)||s&&s.hasOwnProperty(u)||(n||(n={}),n[u]="");for(u in s)s.hasOwnProperty(u)&&o[u]!==s[u]&&(n||(n={}),n[u]=s[u])}else n||(i||(i=[]),i.push(f,n)),n=s;else f==="dangerouslySetInnerHTML"?(s=s?s.__html:void 0,o=o?o.__html:void 0,s!=null&&o!==s&&(i=i||[]).push(f,s)):f==="children"?typeof s!="string"&&typeof s!="number"||(i=i||[]).push(f,""+s):f!=="suppressContentEditableWarning"&&f!=="suppressHydrationWarning"&&(Dn.hasOwnProperty(f)?(s!=null&&f==="onScroll"&&A("scroll",e),i||o===s||(i=[])):(i=i||[]).push(f,s))}n&&(i=i||[]).push("style",n);var f=i;(t.updateQueue=f)&&(t.flags|=4)}};Va=function(e,t,n,r){n!==r&&(t.flags|=4)};function wn(e,t){if(!B)switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;t!==null;)t.alternate!==null&&(n=t),t=t.sibling;n===null?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var r=null;n!==null;)n.alternate!==null&&(r=n),n=n.sibling;r===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:r.sibling=null}}function ie(e){var t=e.alternate!==null&&e.alternate.child===e.child,n=0,r=0;if(t)for(var l=e.child;l!==null;)n|=l.lanes|l.childLanes,r|=l.subtreeFlags&14680064,r|=l.flags&14680064,l.return=e,l=l.sibling;else for(l=e.child;l!==null;)n|=l.lanes|l.childLanes,r|=l.subtreeFlags,r|=l.flags,l.return=e,l=l.sibling;return e.subtreeFlags|=r,e.childLanes=n,t}function fd(e,t,n){var r=t.pendingProps;switch(au(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return ie(t),null;case 1:return he(t.type)&&Wr(),ie(t),null;case 3:return r=t.stateNode,sn(),V(me),V(oe),yu(),r.pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),(e===null||e.child===null)&&(gr(t)?t.flags|=4:e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,Re!==null&&(Ai(Re),Re=null))),Ri(e,t),ie(t),null;case 5:gu(t);var l=_t(Yn.current);if(n=t.type,e!==null&&t.stateNode!=null)Aa(e,t,n,r,l),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!r){if(t.stateNode===null)throw Error(x(166));return ie(t),null}if(e=_t(Ae.current),gr(t)){r=t.stateNode,n=t.type;var i=t.memoizedProps;switch(r[$e]=t,r[Wn]=i,e=(t.mode&1)!==0,n){case"dialog":A("cancel",r),A("close",r);break;case"iframe":case"object":case"embed":A("load",r);break;case"video":case"audio":for(l=0;l<Cn.length;l++)A(Cn[l],r);break;case"source":A("error",r);break;case"img":case"image":case"link":A("error",r),A("load",r);break;case"details":A("toggle",r);break;case"input":Bu(r,i),A("invalid",r);break;case"select":r._wrapperState={wasMultiple:!!i.multiple},A("invalid",r);break;case"textarea":Qu(r,i),A("invalid",r)}ii(n,i),l=null;for(var u in i)if(i.hasOwnProperty(u)){var o=i[u];u==="children"?typeof o=="string"?r.textContent!==o&&(i.suppressHydrationWarning!==!0&&vr(r.textContent,o,e),l=["children",o]):typeof o=="number"&&r.textContent!==""+o&&(i.suppressHydrationWarning!==!0&&vr(r.textContent,o,e),l=["children",""+o]):Dn.hasOwnProperty(u)&&o!=null&&u==="onScroll"&&A("scroll",r)}switch(n){case"input":sr(r),Hu(r,i,!0);break;case"textarea":sr(r),Wu(r);break;case"select":case"option":break;default:typeof i.onClick=="function"&&(r.onclick=Qr)}r=l,t.updateQueue=r,r!==null&&(t.flags|=4)}else{u=l.nodeType===9?l:l.ownerDocument,e==="http://www.w3.org/1999/xhtml"&&(e=hs(n)),e==="http://www.w3.org/1999/xhtml"?n==="script"?(e=u.createElement("div"),e.innerHTML="<script><\/script>",e=e.removeChild(e.firstChild)):typeof r.is=="string"?e=u.createElement(n,{is:r.is}):(e=u.createElement(n),n==="select"&&(u=e,r.multiple?u.multiple=!0:r.size&&(u.size=r.size))):e=u.createElementNS(e,n),e[$e]=t,e[Wn]=r,Ua(e,t,!1,!1),t.stateNode=e;e:{switch(u=ui(n,r),n){case"dialog":A("cancel",e),A("close",e),l=r;break;case"iframe":case"object":case"embed":A("load",e),l=r;break;case"video":case"audio":for(l=0;l<Cn.length;l++)A(Cn[l],e);l=r;break;case"source":A("error",e),l=r;break;case"img":case"image":case"link":A("error",e),A("load",e),l=r;break;case"details":A("toggle",e),l=r;break;case"input":Bu(e,r),l=ei(e,r),A("invalid",e);break;case"option":l=r;break;case"select":e._wrapperState={wasMultiple:!!r.multiple},l=W({},r,{value:void 0}),A("invalid",e);break;case"textarea":Qu(e,r),l=ri(e,r),A("invalid",e);break;default:l=r}ii(n,l),o=l;for(i in o)if(o.hasOwnProperty(i)){var s=o[i];i==="style"?ys(e,s):i==="dangerouslySetInnerHTML"?(s=s?s.__html:void 0,s!=null&&vs(e,s)):i==="children"?typeof s=="string"?(n!=="textarea"||s!=="")&&In(e,s):typeof s=="number"&&In(e,""+s):i!=="suppressContentEditableWarning"&&i!=="suppressHydrationWarning"&&i!=="autoFocus"&&(Dn.hasOwnProperty(i)?s!=null&&i==="onScroll"&&A("scroll",e):s!=null&&Xi(e,i,s,u))}switch(n){case"input":sr(e),Hu(e,r,!1);break;case"textarea":sr(e),Wu(e);break;case"option":r.value!=null&&e.setAttribute("value",""+dt(r.value));break;case"select":e.multiple=!!r.multiple,i=r.value,i!=null?Jt(e,!!r.multiple,i,!1):r.defaultValue!=null&&Jt(e,!!r.multiple,r.defaultValue,!0);break;default:typeof l.onClick=="function"&&(e.onclick=Qr)}switch(n){case"button":case"input":case"select":case"textarea":r=!!r.autoFocus;break e;case"img":r=!0;break e;default:r=!1}}r&&(t.flags|=4)}t.ref!==null&&(t.flags|=512,t.flags|=2097152)}return ie(t),null;case 6:if(e&&t.stateNode!=null)Va(e,t,e.memoizedProps,r);else{if(typeof r!="string"&&t.stateNode===null)throw Error(x(166));if(n=_t(Yn.current),_t(Ae.current),gr(t)){if(r=t.stateNode,n=t.memoizedProps,r[$e]=t,(i=r.nodeValue!==n)&&(e=ke,e!==null))switch(e.tag){case 3:vr(r.nodeValue,n,(e.mode&1)!==0);break;case 5:e.memoizedProps.suppressHydrationWarning!==!0&&vr(r.nodeValue,n,(e.mode&1)!==0)}i&&(t.flags|=4)}else r=(n.nodeType===9?n:n.ownerDocument).createTextNode(r),r[$e]=t,t.stateNode=r}return ie(t),null;case 13:if(V(H),r=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(B&&ye!==null&&t.mode&1&&!(t.flags&128))ia(),un(),t.flags|=98560,i=!1;else if(i=gr(t),r!==null&&r.dehydrated!==null){if(e===null){if(!i)throw Error(x(318));if(i=t.memoizedState,i=i!==null?i.dehydrated:null,!i)throw Error(x(317));i[$e]=t}else un(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;ie(t),i=!1}else Re!==null&&(Ai(Re),Re=null),i=!0;if(!i)return t.flags&65536?t:null}return t.flags&128?(t.lanes=n,t):(r=r!==null,r!==(e!==null&&e.memoizedState!==null)&&r&&(t.child.flags|=8192,t.mode&1&&(e===null||H.current&1?Z===0&&(Z=3):zu())),t.updateQueue!==null&&(t.flags|=4),ie(t),null);case 4:return sn(),Ri(e,t),e===null&&Hn(t.stateNode.containerInfo),ie(t),null;case 10:return pu(t.type._context),ie(t),null;case 17:return he(t.type)&&Wr(),ie(t),null;case 19:if(V(H),i=t.memoizedState,i===null)return ie(t),null;if(r=(t.flags&128)!==0,u=i.rendering,u===null)if(r)wn(i,!1);else{if(Z!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(u=qr(e),u!==null){for(t.flags|=128,wn(i,!1),r=u.updateQueue,r!==null&&(t.updateQueue=r,t.flags|=4),t.subtreeFlags=0,r=n,n=t.child;n!==null;)i=n,e=r,i.flags&=14680066,u=i.alternate,u===null?(i.childLanes=0,i.lanes=e,i.child=null,i.subtreeFlags=0,i.memoizedProps=null,i.memoizedState=null,i.updateQueue=null,i.dependencies=null,i.stateNode=null):(i.childLanes=u.childLanes,i.lanes=u.lanes,i.child=u.child,i.subtreeFlags=0,i.deletions=null,i.memoizedProps=u.memoizedProps,i.memoizedState=u.memoizedState,i.updateQueue=u.updateQueue,i.type=u.type,e=u.dependencies,i.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext}),n=n.sibling;return $(H,H.current&1|2),t.child}e=e.sibling}i.tail!==null&&Y()>cn&&(t.flags|=128,r=!0,wn(i,!1),t.lanes=4194304)}else{if(!r)if(e=qr(u),e!==null){if(t.flags|=128,r=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),wn(i,!0),i.tail===null&&i.tailMode==="hidden"&&!u.alternate&&!B)return ie(t),null}else 2*Y()-i.renderingStartTime>cn&&n!==1073741824&&(t.flags|=128,r=!0,wn(i,!1),t.lanes=4194304);i.isBackwards?(u.sibling=t.child,t.child=u):(n=i.last,n!==null?n.sibling=u:t.child=u,i.last=u)}return i.tail!==null?(t=i.tail,i.rendering=t,i.tail=t.sibling,i.renderingStartTime=Y(),t.sibling=null,n=H.current,$(H,r?n&1|2:n&1),t):(ie(t),null);case 22:case 23:return Tu(),r=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==r&&(t.flags|=8192),r&&t.mode&1?ge&1073741824&&(ie(t),t.subtreeFlags&6&&(t.flags|=8192)):ie(t),null;case 24:return null;case 25:return null}throw Error(x(156,t.tag))}function dd(e,t){switch(au(t),t.tag){case 1:return he(t.type)&&Wr(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return sn(),V(me),V(oe),yu(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return gu(t),null;case 13:if(V(H),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(x(340));un()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return V(H),null;case 4:return sn(),null;case 10:return pu(t.type._context),null;case 22:case 23:return Tu(),null;case 24:return null;default:return null}}var wr=!1,ue=!1,pd=typeof WeakSet=="function"?WeakSet:Set,j=null;function Gt(e,t){var n=e.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(r){K(e,t,r)}else n.current=null}function Oi(e,t,n){try{n()}catch(r){K(e,t,r)}}var Do=!1;function md(e,t){if(vi=Vr,e=Ks(),ou(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var l=r.anchorOffset,i=r.focusNode;r=r.focusOffset;try{n.nodeType,i.nodeType}catch{n=null;break e}var u=0,o=-1,s=-1,f=0,v=0,h=e,m=null;t:for(;;){for(var S;h!==n||l!==0&&h.nodeType!==3||(o=u+l),h!==i||r!==0&&h.nodeType!==3||(s=u+r),h.nodeType===3&&(u+=h.nodeValue.length),(S=h.firstChild)!==null;)m=h,h=S;for(;;){if(h===e)break t;if(m===n&&++f===l&&(o=u),m===i&&++v===r&&(s=u),(S=h.nextSibling)!==null)break;h=m,m=h.parentNode}h=S}n=o===-1||s===-1?null:{start:o,end:s}}else n=null}n=n||{start:0,end:0}}else n=null;for(gi={focusedElem:e,selectionRange:n},Vr=!1,j=t;j!==null;)if(t=j,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,j=e;else for(;j!==null;){t=j;try{var w=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(w!==null){var k=w.memoizedProps,O=w.memoizedState,a=t.stateNode,c=a.getSnapshotBeforeUpdate(t.elementType===t.type?k:ze(t.type,k),O);a.__reactInternalSnapshotBeforeUpdate=c}break;case 3:var p=t.stateNode.containerInfo;p.nodeType===1?p.textContent="":p.nodeType===9&&p.documentElement&&p.removeChild(p.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(x(163))}}catch(g){K(t,t.return,g)}if(e=t.sibling,e!==null){e.return=t.return,j=e;break}j=t.return}return w=Do,Do=!1,w}function Rn(e,t,n){var r=t.updateQueue;if(r=r!==null?r.lastEffect:null,r!==null){var l=r=r.next;do{if((l.tag&e)===e){var i=l.destroy;l.destroy=void 0,i!==void 0&&Oi(t,n,i)}l=l.next}while(l!==r)}}function hl(e,t){if(t=t.updateQueue,t=t!==null?t.lastEffect:null,t!==null){var n=t=t.next;do{if((n.tag&e)===e){var r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function Mi(e){var t=e.ref;if(t!==null){var n=e.stateNode;switch(e.tag){case 5:e=n;break;default:e=n}typeof t=="function"?t(e):t.current=e}}function Ba(e){var t=e.alternate;t!==null&&(e.alternate=null,Ba(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[$e],delete t[Wn],delete t[wi],delete t[Zf],delete t[Jf])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function Ha(e){return e.tag===5||e.tag===3||e.tag===4}function Io(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||Ha(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function Di(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.nodeType===8?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(n.nodeType===8?(t=n.parentNode,t.insertBefore(e,n)):(t=n,t.appendChild(e)),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Qr));else if(r!==4&&(e=e.child,e!==null))for(Di(e,t,n),e=e.sibling;e!==null;)Di(e,t,n),e=e.sibling}function Ii(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(e=e.child,e!==null))for(Ii(e,t,n),e=e.sibling;e!==null;)Ii(e,t,n),e=e.sibling}var ee=null,Le=!1;function Je(e,t,n){for(n=n.child;n!==null;)Qa(e,t,n),n=n.sibling}function Qa(e,t,n){if(Ue&&typeof Ue.onCommitFiberUnmount=="function")try{Ue.onCommitFiberUnmount(ol,n)}catch{}switch(n.tag){case 5:ue||Gt(n,t);case 6:var r=ee,l=Le;ee=null,Je(e,t,n),ee=r,Le=l,ee!==null&&(Le?(e=ee,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):ee.removeChild(n.stateNode));break;case 18:ee!==null&&(Le?(e=ee,n=n.stateNode,e.nodeType===8?Ul(e.parentNode,n):e.nodeType===1&&Ul(e,n),An(e)):Ul(ee,n.stateNode));break;case 4:r=ee,l=Le,ee=n.stateNode.containerInfo,Le=!0,Je(e,t,n),ee=r,Le=l;break;case 0:case 11:case 14:case 15:if(!ue&&(r=n.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){l=r=r.next;do{var i=l,u=i.destroy;i=i.tag,u!==void 0&&(i&2||i&4)&&Oi(n,t,u),l=l.next}while(l!==r)}Je(e,t,n);break;case 1:if(!ue&&(Gt(n,t),r=n.stateNode,typeof r.componentWillUnmount=="function"))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(o){K(n,t,o)}Je(e,t,n);break;case 21:Je(e,t,n);break;case 22:n.mode&1?(ue=(r=ue)||n.memoizedState!==null,Je(e,t,n),ue=r):Je(e,t,n);break;default:Je(e,t,n)}}function Fo(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new pd),t.forEach(function(r){var l=Nd.bind(null,e,r);n.has(r)||(n.add(r),r.then(l,l))})}}function Te(e,t){var n=t.deletions;if(n!==null)for(var r=0;r<n.length;r++){var l=n[r];try{var i=e,u=t,o=u;e:for(;o!==null;){switch(o.tag){case 5:ee=o.stateNode,Le=!1;break e;case 3:ee=o.stateNode.containerInfo,Le=!0;break e;case 4:ee=o.stateNode.containerInfo,Le=!0;break e}o=o.return}if(ee===null)throw Error(x(160));Qa(i,u,l),ee=null,Le=!1;var s=l.alternate;s!==null&&(s.return=null),l.return=null}catch(f){K(l,t,f)}}if(t.subtreeFlags&12854)for(t=t.child;t!==null;)Wa(t,e),t=t.sibling}function Wa(e,t){var n=e.alternate,r=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:if(Te(t,e),Ie(e),r&4){try{Rn(3,e,e.return),hl(3,e)}catch(k){K(e,e.return,k)}try{Rn(5,e,e.return)}catch(k){K(e,e.return,k)}}break;case 1:Te(t,e),Ie(e),r&512&&n!==null&&Gt(n,n.return);break;case 5:if(Te(t,e),Ie(e),r&512&&n!==null&&Gt(n,n.return),e.flags&32){var l=e.stateNode;try{In(l,"")}catch(k){K(e,e.return,k)}}if(r&4&&(l=e.stateNode,l!=null)){var i=e.memoizedProps,u=n!==null?n.memoizedProps:i,o=e.type,s=e.updateQueue;if(e.updateQueue=null,s!==null)try{o==="input"&&i.type==="radio"&&i.name!=null&&ps(l,i),ui(o,u);var f=ui(o,i);for(u=0;u<s.length;u+=2){var v=s[u],h=s[u+1];v==="style"?ys(l,h):v==="dangerouslySetInnerHTML"?vs(l,h):v==="children"?In(l,h):Xi(l,v,h,f)}switch(o){case"input":ti(l,i);break;case"textarea":ms(l,i);break;case"select":var m=l._wrapperState.wasMultiple;l._wrapperState.wasMultiple=!!i.multiple;var S=i.value;S!=null?Jt(l,!!i.multiple,S,!1):m!==!!i.multiple&&(i.defaultValue!=null?Jt(l,!!i.multiple,i.defaultValue,!0):Jt(l,!!i.multiple,i.multiple?[]:"",!1))}l[Wn]=i}catch(k){K(e,e.return,k)}}break;case 6:if(Te(t,e),Ie(e),r&4){if(e.stateNode===null)throw Error(x(162));l=e.stateNode,i=e.memoizedProps;try{l.nodeValue=i}catch(k){K(e,e.return,k)}}break;case 3:if(Te(t,e),Ie(e),r&4&&n!==null&&n.memoizedState.isDehydrated)try{An(t.containerInfo)}catch(k){K(e,e.return,k)}break;case 4:Te(t,e),Ie(e);break;case 13:Te(t,e),Ie(e),l=e.child,l.flags&8192&&(i=l.memoizedState!==null,l.stateNode.isHidden=i,!i||l.alternate!==null&&l.alternate.memoizedState!==null||(_u=Y())),r&4&&Fo(e);break;case 22:if(v=n!==null&&n.memoizedState!==null,e.mode&1?(ue=(f=ue)||v,Te(t,e),ue=f):Te(t,e),Ie(e),r&8192){if(f=e.memoizedState!==null,(e.stateNode.isHidden=f)&&!v&&e.mode&1)for(j=e,v=e.child;v!==null;){for(h=j=v;j!==null;){switch(m=j,S=m.child,m.tag){case 0:case 11:case 14:case 15:Rn(4,m,m.return);break;case 1:Gt(m,m.return);var w=m.stateNode;if(typeof w.componentWillUnmount=="function"){r=m,n=m.return;try{t=r,w.props=t.memoizedProps,w.state=t.memoizedState,w.componentWillUnmount()}catch(k){K(r,n,k)}}break;case 5:Gt(m,m.return);break;case 22:if(m.memoizedState!==null){Uo(h);continue}}S!==null?(S.return=m,j=S):Uo(h)}v=v.sibling}e:for(v=null,h=e;;){if(h.tag===5){if(v===null){v=h;try{l=h.stateNode,f?(i=l.style,typeof i.setProperty=="function"?i.setProperty("display","none","important"):i.display="none"):(o=h.stateNode,s=h.memoizedProps.style,u=s!=null&&s.hasOwnProperty("display")?s.display:null,o.style.display=gs("display",u))}catch(k){K(e,e.return,k)}}}else if(h.tag===6){if(v===null)try{h.stateNode.nodeValue=f?"":h.memoizedProps}catch(k){K(e,e.return,k)}}else if((h.tag!==22&&h.tag!==23||h.memoizedState===null||h===e)&&h.child!==null){h.child.return=h,h=h.child;continue}if(h===e)break e;for(;h.sibling===null;){if(h.return===null||h.return===e)break e;v===h&&(v=null),h=h.return}v===h&&(v=null),h.sibling.return=h.return,h=h.sibling}}break;case 19:Te(t,e),Ie(e),r&4&&Fo(e);break;case 21:break;default:Te(t,e),Ie(e)}}function Ie(e){var t=e.flags;if(t&2){try{e:{for(var n=e.return;n!==null;){if(Ha(n)){var r=n;break e}n=n.return}throw Error(x(160))}switch(r.tag){case 5:var l=r.stateNode;r.flags&32&&(In(l,""),r.flags&=-33);var i=Io(e);Ii(e,i,l);break;case 3:case 4:var u=r.stateNode.containerInfo,o=Io(e);Di(e,o,u);break;default:throw Error(x(161))}}catch(s){K(e,e.return,s)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function hd(e,t,n){j=e,Ka(e)}function Ka(e,t,n){for(var r=(e.mode&1)!==0;j!==null;){var l=j,i=l.child;if(l.tag===22&&r){var u=l.memoizedState!==null||wr;if(!u){var o=l.alternate,s=o!==null&&o.memoizedState!==null||ue;o=wr;var f=ue;if(wr=u,(ue=s)&&!f)for(j=l;j!==null;)u=j,s=u.child,u.tag===22&&u.memoizedState!==null?Ao(l):s!==null?(s.return=u,j=s):Ao(l);for(;i!==null;)j=i,Ka(i),i=i.sibling;j=l,wr=o,ue=f}$o(e)}else l.subtreeFlags&8772&&i!==null?(i.return=l,j=i):$o(e)}}function $o(e){for(;j!==null;){var t=j;if(t.flags&8772){var n=t.alternate;try{if(t.flags&8772)switch(t.tag){case 0:case 11:case 15:ue||hl(5,t);break;case 1:var r=t.stateNode;if(t.flags&4&&!ue)if(n===null)r.componentDidMount();else{var l=t.elementType===t.type?n.memoizedProps:ze(t.type,n.memoizedProps);r.componentDidUpdate(l,n.memoizedState,r.__reactInternalSnapshotBeforeUpdate)}var i=t.updateQueue;i!==null&&xo(t,i,r);break;case 3:var u=t.updateQueue;if(u!==null){if(n=null,t.child!==null)switch(t.child.tag){case 5:n=t.child.stateNode;break;case 1:n=t.child.stateNode}xo(t,u,n)}break;case 5:var o=t.stateNode;if(n===null&&t.flags&4){n=o;var s=t.memoizedProps;switch(t.type){case"button":case"input":case"select":case"textarea":s.autoFocus&&n.focus();break;case"img":s.src&&(n.src=s.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(t.memoizedState===null){var f=t.alternate;if(f!==null){var v=f.memoizedState;if(v!==null){var h=v.dehydrated;h!==null&&An(h)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(x(163))}ue||t.flags&512&&Mi(t)}catch(m){K(t,t.return,m)}}if(t===e){j=null;break}if(n=t.sibling,n!==null){n.return=t.return,j=n;break}j=t.return}}function Uo(e){for(;j!==null;){var t=j;if(t===e){j=null;break}var n=t.sibling;if(n!==null){n.return=t.return,j=n;break}j=t.return}}function Ao(e){for(;j!==null;){var t=j;try{switch(t.tag){case 0:case 11:case 15:var n=t.return;try{hl(4,t)}catch(s){K(t,n,s)}break;case 1:var r=t.stateNode;if(typeof r.componentDidMount=="function"){var l=t.return;try{r.componentDidMount()}catch(s){K(t,l,s)}}var i=t.return;try{Mi(t)}catch(s){K(t,i,s)}break;case 5:var u=t.return;try{Mi(t)}catch(s){K(t,u,s)}}}catch(s){K(t,t.return,s)}if(t===e){j=null;break}var o=t.sibling;if(o!==null){o.return=t.return,j=o;break}j=t.return}}var vd=Math.ceil,tl=Ze.ReactCurrentDispatcher,Cu=Ze.ReactCurrentOwner,je=Ze.ReactCurrentBatchConfig,D=0,b=null,X=null,ne=0,ge=0,Zt=ht(0),Z=0,Jn=null,Ot=0,vl=0,ju=0,On=null,de=null,_u=0,cn=1/0,Ve=null,nl=!1,Fi=null,at=null,Sr=!1,rt=null,rl=0,Mn=0,$i=null,Or=-1,Mr=0;function ae(){return D&6?Y():Or!==-1?Or:Or=Y()}function ct(e){return e.mode&1?D&2&&ne!==0?ne&-ne:bf.transition!==null?(Mr===0&&(Mr=zs()),Mr):(e=F,e!==0||(e=window.event,e=e===void 0?16:Fs(e.type)),e):1}function Me(e,t,n,r){if(50<Mn)throw Mn=0,$i=null,Error(x(185));bn(e,n,r),(!(D&2)||e!==b)&&(e===b&&(!(D&2)&&(vl|=n),Z===4&&tt(e,ne)),ve(e,r),n===1&&D===0&&!(t.mode&1)&&(cn=Y()+500,dl&&vt()))}function ve(e,t){var n=e.callbackNode;qc(e,t);var r=Ar(e,e===b?ne:0);if(r===0)n!==null&&Xu(n),e.callbackNode=null,e.callbackPriority=0;else if(t=r&-r,e.callbackPriority!==t){if(n!=null&&Xu(n),t===1)e.tag===0?qf(Vo.bind(null,e)):na(Vo.bind(null,e)),Xf(function(){!(D&6)&&vt()}),n=null;else{switch(Ls(r)){case 1:n=bi;break;case 4:n=Ps;break;case 16:n=Ur;break;case 536870912:n=Ts;break;default:n=Ur}n=ec(n,Ya.bind(null,e))}e.callbackPriority=t,e.callbackNode=n}}function Ya(e,t){if(Or=-1,Mr=0,D&6)throw Error(x(327));var n=e.callbackNode;if(nn()&&e.callbackNode!==n)return null;var r=Ar(e,e===b?ne:0);if(r===0)return null;if(r&30||r&e.expiredLanes||t)t=ll(e,r);else{t=r;var l=D;D|=2;var i=Ga();(b!==e||ne!==t)&&(Ve=null,cn=Y()+500,Pt(e,t));do try{kd();break}catch(o){Xa(e,o)}while(!0);du(),tl.current=i,D=l,X!==null?t=0:(b=null,ne=0,t=Z)}if(t!==0){if(t===2&&(l=fi(e),l!==0&&(r=l,t=Ui(e,l))),t===1)throw n=Jn,Pt(e,0),tt(e,r),ve(e,Y()),n;if(t===6)tt(e,r);else{if(l=e.current.alternate,!(r&30)&&!gd(l)&&(t=ll(e,r),t===2&&(i=fi(e),i!==0&&(r=i,t=Ui(e,i))),t===1))throw n=Jn,Pt(e,0),tt(e,r),ve(e,Y()),n;switch(e.finishedWork=l,e.finishedLanes=r,t){case 0:case 1:throw Error(x(345));case 2:Et(e,de,Ve);break;case 3:if(tt(e,r),(r&130023424)===r&&(t=_u+500-Y(),10<t)){if(Ar(e,0)!==0)break;if(l=e.suspendedLanes,(l&r)!==r){ae(),e.pingedLanes|=e.suspendedLanes&l;break}e.timeoutHandle=ki(Et.bind(null,e,de,Ve),t);break}Et(e,de,Ve);break;case 4:if(tt(e,r),(r&4194240)===r)break;for(t=e.eventTimes,l=-1;0<r;){var u=31-Oe(r);i=1<<u,u=t[u],u>l&&(l=u),r&=~i}if(r=l,r=Y()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*vd(r/1960))-r,10<r){e.timeoutHandle=ki(Et.bind(null,e,de,Ve),r);break}Et(e,de,Ve);break;case 5:Et(e,de,Ve);break;default:throw Error(x(329))}}}return ve(e,Y()),e.callbackNode===n?Ya.bind(null,e):null}function Ui(e,t){var n=On;return e.current.memoizedState.isDehydrated&&(Pt(e,t).flags|=256),e=ll(e,t),e!==2&&(t=de,de=n,t!==null&&Ai(t)),e}function Ai(e){de===null?de=e:de.push.apply(de,e)}function gd(e){for(var t=e;;){if(t.flags&16384){var n=t.updateQueue;if(n!==null&&(n=n.stores,n!==null))for(var r=0;r<n.length;r++){var l=n[r],i=l.getSnapshot;l=l.value;try{if(!De(i(),l))return!1}catch{return!1}}}if(n=t.child,t.subtreeFlags&16384&&n!==null)n.return=t,t=n;else{if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}function tt(e,t){for(t&=~ju,t&=~vl,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var n=31-Oe(t),r=1<<n;e[n]=-1,t&=~r}}function Vo(e){if(D&6)throw Error(x(327));nn();var t=Ar(e,0);if(!(t&1))return ve(e,Y()),null;var n=ll(e,t);if(e.tag!==0&&n===2){var r=fi(e);r!==0&&(t=r,n=Ui(e,r))}if(n===1)throw n=Jn,Pt(e,0),tt(e,t),ve(e,Y()),n;if(n===6)throw Error(x(345));return e.finishedWork=e.current.alternate,e.finishedLanes=t,Et(e,de,Ve),ve(e,Y()),null}function Pu(e,t){var n=D;D|=1;try{return e(t)}finally{D=n,D===0&&(cn=Y()+500,dl&&vt())}}function Mt(e){rt!==null&&rt.tag===0&&!(D&6)&&nn();var t=D;D|=1;var n=je.transition,r=F;try{if(je.transition=null,F=1,e)return e()}finally{F=r,je.transition=n,D=t,!(D&6)&&vt()}}function Tu(){ge=Zt.current,V(Zt)}function Pt(e,t){e.finishedWork=null,e.finishedLanes=0;var n=e.timeoutHandle;if(n!==-1&&(e.timeoutHandle=-1,Yf(n)),X!==null)for(n=X.return;n!==null;){var r=n;switch(au(r),r.tag){case 1:r=r.type.childContextTypes,r!=null&&Wr();break;case 3:sn(),V(me),V(oe),yu();break;case 5:gu(r);break;case 4:sn();break;case 13:V(H);break;case 19:V(H);break;case 10:pu(r.type._context);break;case 22:case 23:Tu()}n=n.return}if(b=e,X=e=ft(e.current,null),ne=ge=t,Z=0,Jn=null,ju=vl=Ot=0,de=On=null,jt!==null){for(t=0;t<jt.length;t++)if(n=jt[t],r=n.interleaved,r!==null){n.interleaved=null;var l=r.next,i=n.pending;if(i!==null){var u=i.next;i.next=l,r.next=u}n.pending=r}jt=null}return e}function Xa(e,t){do{var n=X;try{if(du(),zr.current=el,br){for(var r=Q.memoizedState;r!==null;){var l=r.queue;l!==null&&(l.pending=null),r=r.next}br=!1}if(Rt=0,q=G=Q=null,Ln=!1,Xn=0,Cu.current=null,n===null||n.return===null){Z=1,Jn=t,X=null;break}e:{var i=e,u=n.return,o=n,s=t;if(t=ne,o.flags|=32768,s!==null&&typeof s=="object"&&typeof s.then=="function"){var f=s,v=o,h=v.tag;if(!(v.mode&1)&&(h===0||h===11||h===15)){var m=v.alternate;m?(v.updateQueue=m.updateQueue,v.memoizedState=m.memoizedState,v.lanes=m.lanes):(v.updateQueue=null,v.memoizedState=null)}var S=Po(u);if(S!==null){S.flags&=-257,To(S,u,o,i,t),S.mode&1&&_o(i,f,t),t=S,s=f;var w=t.updateQueue;if(w===null){var k=new Set;k.add(s),t.updateQueue=k}else w.add(s);break e}else{if(!(t&1)){_o(i,f,t),zu();break e}s=Error(x(426))}}else if(B&&o.mode&1){var O=Po(u);if(O!==null){!(O.flags&65536)&&(O.flags|=256),To(O,u,o,i,t),cu(an(s,o));break e}}i=s=an(s,o),Z!==4&&(Z=2),On===null?On=[i]:On.push(i),i=u;do{switch(i.tag){case 3:i.flags|=65536,t&=-t,i.lanes|=t;var a=La(i,s,t);So(i,a);break e;case 1:o=s;var c=i.type,p=i.stateNode;if(!(i.flags&128)&&(typeof c.getDerivedStateFromError=="function"||p!==null&&typeof p.componentDidCatch=="function"&&(at===null||!at.has(p)))){i.flags|=65536,t&=-t,i.lanes|=t;var g=Ra(i,o,t);So(i,g);break e}}i=i.return}while(i!==null)}Ja(n)}catch(N){t=N,X===n&&n!==null&&(X=n=n.return);continue}break}while(!0)}function Ga(){var e=tl.current;return tl.current=el,e===null?el:e}function zu(){(Z===0||Z===3||Z===2)&&(Z=4),b===null||!(Ot&268435455)&&!(vl&268435455)||tt(b,ne)}function ll(e,t){var n=D;D|=2;var r=Ga();(b!==e||ne!==t)&&(Ve=null,Pt(e,t));do try{yd();break}catch(l){Xa(e,l)}while(!0);if(du(),D=n,tl.current=r,X!==null)throw Error(x(261));return b=null,ne=0,Z}function yd(){for(;X!==null;)Za(X)}function kd(){for(;X!==null&&!Hc();)Za(X)}function Za(e){var t=ba(e.alternate,e,ge);e.memoizedProps=e.pendingProps,t===null?Ja(e):X=t,Cu.current=null}function Ja(e){var t=e;do{var n=t.alternate;if(e=t.return,t.flags&32768){if(n=dd(n,t),n!==null){n.flags&=32767,X=n;return}if(e!==null)e.flags|=32768,e.subtreeFlags=0,e.deletions=null;else{Z=6,X=null;return}}else if(n=fd(n,t,ge),n!==null){X=n;return}if(t=t.sibling,t!==null){X=t;return}X=t=e}while(t!==null);Z===0&&(Z=5)}function Et(e,t,n){var r=F,l=je.transition;try{je.transition=null,F=1,wd(e,t,n,r)}finally{je.transition=l,F=r}return null}function wd(e,t,n,r){do nn();while(rt!==null);if(D&6)throw Error(x(327));n=e.finishedWork;var l=e.finishedLanes;if(n===null)return null;if(e.finishedWork=null,e.finishedLanes=0,n===e.current)throw Error(x(177));e.callbackNode=null,e.callbackPriority=0;var i=n.lanes|n.childLanes;if(bc(e,i),e===b&&(X=b=null,ne=0),!(n.subtreeFlags&2064)&&!(n.flags&2064)||Sr||(Sr=!0,ec(Ur,function(){return nn(),null})),i=(n.flags&15990)!==0,n.subtreeFlags&15990||i){i=je.transition,je.transition=null;var u=F;F=1;var o=D;D|=4,Cu.current=null,md(e,n),Wa(n,e),Af(gi),Vr=!!vi,gi=vi=null,e.current=n,hd(n),Qc(),D=o,F=u,je.transition=i}else e.current=n;if(Sr&&(Sr=!1,rt=e,rl=l),i=e.pendingLanes,i===0&&(at=null),Yc(n.stateNode),ve(e,Y()),t!==null)for(r=e.onRecoverableError,n=0;n<t.length;n++)l=t[n],r(l.value,{componentStack:l.stack,digest:l.digest});if(nl)throw nl=!1,e=Fi,Fi=null,e;return rl&1&&e.tag!==0&&nn(),i=e.pendingLanes,i&1?e===$i?Mn++:(Mn=0,$i=e):Mn=0,vt(),null}function nn(){if(rt!==null){var e=Ls(rl),t=je.transition,n=F;try{if(je.transition=null,F=16>e?16:e,rt===null)var r=!1;else{if(e=rt,rt=null,rl=0,D&6)throw Error(x(331));var l=D;for(D|=4,j=e.current;j!==null;){var i=j,u=i.child;if(j.flags&16){var o=i.deletions;if(o!==null){for(var s=0;s<o.length;s++){var f=o[s];for(j=f;j!==null;){var v=j;switch(v.tag){case 0:case 11:case 15:Rn(8,v,i)}var h=v.child;if(h!==null)h.return=v,j=h;else for(;j!==null;){v=j;var m=v.sibling,S=v.return;if(Ba(v),v===f){j=null;break}if(m!==null){m.return=S,j=m;break}j=S}}}var w=i.alternate;if(w!==null){var k=w.child;if(k!==null){w.child=null;do{var O=k.sibling;k.sibling=null,k=O}while(k!==null)}}j=i}}if(i.subtreeFlags&2064&&u!==null)u.return=i,j=u;else e:for(;j!==null;){if(i=j,i.flags&2048)switch(i.tag){case 0:case 11:case 15:Rn(9,i,i.return)}var a=i.sibling;if(a!==null){a.return=i.return,j=a;break e}j=i.return}}var c=e.current;for(j=c;j!==null;){u=j;var p=u.child;if(u.subtreeFlags&2064&&p!==null)p.return=u,j=p;else e:for(u=c;j!==null;){if(o=j,o.flags&2048)try{switch(o.tag){case 0:case 11:case 15:hl(9,o)}}catch(N){K(o,o.return,N)}if(o===u){j=null;break e}var g=o.sibling;if(g!==null){g.return=o.return,j=g;break e}j=o.return}}if(D=l,vt(),Ue&&typeof Ue.onPostCommitFiberRoot=="function")try{Ue.onPostCommitFiberRoot(ol,e)}catch{}r=!0}return r}finally{F=n,je.transition=t}}return!1}function Bo(e,t,n){t=an(n,t),t=La(e,t,1),e=st(e,t,1),t=ae(),e!==null&&(bn(e,1,t),ve(e,t))}function K(e,t,n){if(e.tag===3)Bo(e,e,n);else for(;t!==null;){if(t.tag===3){Bo(t,e,n);break}else if(t.tag===1){var r=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof r.componentDidCatch=="function"&&(at===null||!at.has(r))){e=an(n,e),e=Ra(t,e,1),t=st(t,e,1),e=ae(),t!==null&&(bn(t,1,e),ve(t,e));break}}t=t.return}}function Sd(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),t=ae(),e.pingedLanes|=e.suspendedLanes&n,b===e&&(ne&n)===n&&(Z===4||Z===3&&(ne&130023424)===ne&&500>Y()-_u?Pt(e,0):ju|=n),ve(e,t)}function qa(e,t){t===0&&(e.mode&1?(t=fr,fr<<=1,!(fr&130023424)&&(fr=4194304)):t=1);var n=ae();e=Xe(e,t),e!==null&&(bn(e,t,n),ve(e,n))}function xd(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),qa(e,n)}function Nd(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,l=e.memoizedState;l!==null&&(n=l.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(x(314))}r!==null&&r.delete(t),qa(e,n)}var ba;ba=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||me.current)pe=!0;else{if(!(e.lanes&n)&&!(t.flags&128))return pe=!1,cd(e,t,n);pe=!!(e.flags&131072)}else pe=!1,B&&t.flags&1048576&&ra(t,Xr,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;Rr(e,t),e=t.pendingProps;var l=ln(t,oe.current);tn(t,n),l=wu(null,t,r,e,l,n);var i=Su();return t.flags|=1,typeof l=="object"&&l!==null&&typeof l.render=="function"&&l.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,he(r)?(i=!0,Kr(t)):i=!1,t.memoizedState=l.state!==null&&l.state!==void 0?l.state:null,hu(t),l.updater=ml,t.stateNode=l,l._reactInternals=t,ji(t,r,e,n),t=Ti(null,t,r,!0,i,n)):(t.tag=0,B&&i&&su(t),se(null,t,l,n),t=t.child),t;case 16:r=t.elementType;e:{switch(Rr(e,t),e=t.pendingProps,l=r._init,r=l(r._payload),t.type=r,l=t.tag=Cd(r),e=ze(r,e),l){case 0:t=Pi(null,t,r,e,n);break e;case 1:t=Ro(null,t,r,e,n);break e;case 11:t=zo(null,t,r,e,n);break e;case 14:t=Lo(null,t,r,ze(r.type,e),n);break e}throw Error(x(306,r,""))}return t;case 0:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:ze(r,l),Pi(e,t,r,l,n);case 1:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:ze(r,l),Ro(e,t,r,l,n);case 3:e:{if(Ia(t),e===null)throw Error(x(387));r=t.pendingProps,i=t.memoizedState,l=i.element,aa(e,t),Jr(t,r,null,n);var u=t.memoizedState;if(r=u.element,i.isDehydrated)if(i={element:r,isDehydrated:!1,cache:u.cache,pendingSuspenseBoundaries:u.pendingSuspenseBoundaries,transitions:u.transitions},t.updateQueue.baseState=i,t.memoizedState=i,t.flags&256){l=an(Error(x(423)),t),t=Oo(e,t,r,n,l);break e}else if(r!==l){l=an(Error(x(424)),t),t=Oo(e,t,r,n,l);break e}else for(ye=ot(t.stateNode.containerInfo.firstChild),ke=t,B=!0,Re=null,n=oa(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(un(),r===l){t=Ge(e,t,n);break e}se(e,t,r,n)}t=t.child}return t;case 5:return ca(t),e===null&&Ni(t),r=t.type,l=t.pendingProps,i=e!==null?e.memoizedProps:null,u=l.children,yi(r,l)?u=null:i!==null&&yi(r,i)&&(t.flags|=32),Da(e,t),se(e,t,u,n),t.child;case 6:return e===null&&Ni(t),null;case 13:return Fa(e,t,n);case 4:return vu(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=on(t,null,r,n):se(e,t,r,n),t.child;case 11:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:ze(r,l),zo(e,t,r,l,n);case 7:return se(e,t,t.pendingProps,n),t.child;case 8:return se(e,t,t.pendingProps.children,n),t.child;case 12:return se(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,l=t.pendingProps,i=t.memoizedProps,u=l.value,$(Gr,r._currentValue),r._currentValue=u,i!==null)if(De(i.value,u)){if(i.children===l.children&&!me.current){t=Ge(e,t,n);break e}}else for(i=t.child,i!==null&&(i.return=t);i!==null;){var o=i.dependencies;if(o!==null){u=i.child;for(var s=o.firstContext;s!==null;){if(s.context===r){if(i.tag===1){s=We(-1,n&-n),s.tag=2;var f=i.updateQueue;if(f!==null){f=f.shared;var v=f.pending;v===null?s.next=s:(s.next=v.next,v.next=s),f.pending=s}}i.lanes|=n,s=i.alternate,s!==null&&(s.lanes|=n),Ei(i.return,n,t),o.lanes|=n;break}s=s.next}}else if(i.tag===10)u=i.type===t.type?null:i.child;else if(i.tag===18){if(u=i.return,u===null)throw Error(x(341));u.lanes|=n,o=u.alternate,o!==null&&(o.lanes|=n),Ei(u,n,t),u=i.sibling}else u=i.child;if(u!==null)u.return=i;else for(u=i;u!==null;){if(u===t){u=null;break}if(i=u.sibling,i!==null){i.return=u.return,u=i;break}u=u.return}i=u}se(e,t,l.children,n),t=t.child}return t;case 9:return l=t.type,r=t.pendingProps.children,tn(t,n),l=_e(l),r=r(l),t.flags|=1,se(e,t,r,n),t.child;case 14:return r=t.type,l=ze(r,t.pendingProps),l=ze(r.type,l),Lo(e,t,r,l,n);case 15:return Oa(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:ze(r,l),Rr(e,t),t.tag=1,he(r)?(e=!0,Kr(t)):e=!1,tn(t,n),za(t,r,l),ji(t,r,l,n),Ti(null,t,r,!0,e,n);case 19:return $a(e,t,n);case 22:return Ma(e,t,n)}throw Error(x(156,t.tag))};function ec(e,t){return _s(e,t)}function Ed(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Ce(e,t,n,r){return new Ed(e,t,n,r)}function Lu(e){return e=e.prototype,!(!e||!e.isReactComponent)}function Cd(e){if(typeof e=="function")return Lu(e)?1:0;if(e!=null){if(e=e.$$typeof,e===Zi)return 11;if(e===Ji)return 14}return 2}function ft(e,t){var n=e.alternate;return n===null?(n=Ce(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&14680064,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function Dr(e,t,n,r,l,i){var u=2;if(r=e,typeof e=="function")Lu(e)&&(u=1);else if(typeof e=="string")u=5;else e:switch(e){case At:return Tt(n.children,l,i,t);case Gi:u=8,l|=8;break;case Zl:return e=Ce(12,n,t,l|2),e.elementType=Zl,e.lanes=i,e;case Jl:return e=Ce(13,n,t,l),e.elementType=Jl,e.lanes=i,e;case ql:return e=Ce(19,n,t,l),e.elementType=ql,e.lanes=i,e;case cs:return gl(n,l,i,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case ss:u=10;break e;case as:u=9;break e;case Zi:u=11;break e;case Ji:u=14;break e;case qe:u=16,r=null;break e}throw Error(x(130,e==null?e:typeof e,""))}return t=Ce(u,n,t,l),t.elementType=e,t.type=r,t.lanes=i,t}function Tt(e,t,n,r){return e=Ce(7,e,r,t),e.lanes=n,e}function gl(e,t,n,r){return e=Ce(22,e,r,t),e.elementType=cs,e.lanes=n,e.stateNode={isHidden:!1},e}function Yl(e,t,n){return e=Ce(6,e,null,t),e.lanes=n,e}function Xl(e,t,n){return t=Ce(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function jd(e,t,n,r,l){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=Pl(0),this.expirationTimes=Pl(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Pl(0),this.identifierPrefix=r,this.onRecoverableError=l,this.mutableSourceEagerHydrationData=null}function Ru(e,t,n,r,l,i,u,o,s){return e=new jd(e,t,n,o,s),t===1?(t=1,i===!0&&(t|=8)):t=0,i=Ce(3,null,null,t),e.current=i,i.stateNode=e,i.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},hu(i),e}function _d(e,t,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:Ut,key:r==null?null:""+r,children:e,containerInfo:t,implementation:n}}function tc(e){if(!e)return pt;e=e._reactInternals;e:{if(It(e)!==e||e.tag!==1)throw Error(x(170));var t=e;do{switch(t.tag){case 3:t=t.stateNode.context;break e;case 1:if(he(t.type)){t=t.stateNode.__reactInternalMemoizedMergedChildContext;break e}}t=t.return}while(t!==null);throw Error(x(171))}if(e.tag===1){var n=e.type;if(he(n))return ta(e,n,t)}return t}function nc(e,t,n,r,l,i,u,o,s){return e=Ru(n,r,!0,e,l,i,u,o,s),e.context=tc(null),n=e.current,r=ae(),l=ct(n),i=We(r,l),i.callback=t??null,st(n,i,l),e.current.lanes=l,bn(e,l,r),ve(e,r),e}function yl(e,t,n,r){var l=t.current,i=ae(),u=ct(l);return n=tc(n),t.context===null?t.context=n:t.pendingContext=n,t=We(i,u),t.payload={element:e},r=r===void 0?null:r,r!==null&&(t.callback=r),e=st(l,t,u),e!==null&&(Me(e,l,u,i),Tr(e,l,u)),u}function il(e){if(e=e.current,!e.child)return null;switch(e.child.tag){case 5:return e.child.stateNode;default:return e.child.stateNode}}function Ho(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var n=e.retryLane;e.retryLane=n!==0&&n<t?n:t}}function Ou(e,t){Ho(e,t),(e=e.alternate)&&Ho(e,t)}function Pd(){return null}var rc=typeof reportError=="function"?reportError:function(e){console.error(e)};function Mu(e){this._internalRoot=e}kl.prototype.render=Mu.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(x(409));yl(e,t,null,null)};kl.prototype.unmount=Mu.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;Mt(function(){yl(null,e,null,null)}),t[Ye]=null}};function kl(e){this._internalRoot=e}kl.prototype.unstable_scheduleHydration=function(e){if(e){var t=Ms();e={blockedOn:null,target:e,priority:t};for(var n=0;n<et.length&&t!==0&&t<et[n].priority;n++);et.splice(n,0,e),n===0&&Is(e)}};function Du(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function wl(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11&&(e.nodeType!==8||e.nodeValue!==" react-mount-point-unstable "))}function Qo(){}function Td(e,t,n,r,l){if(l){if(typeof r=="function"){var i=r;r=function(){var f=il(u);i.call(f)}}var u=nc(t,r,e,0,null,!1,!1,"",Qo);return e._reactRootContainer=u,e[Ye]=u.current,Hn(e.nodeType===8?e.parentNode:e),Mt(),u}for(;l=e.lastChild;)e.removeChild(l);if(typeof r=="function"){var o=r;r=function(){var f=il(s);o.call(f)}}var s=Ru(e,0,!1,null,null,!1,!1,"",Qo);return e._reactRootContainer=s,e[Ye]=s.current,Hn(e.nodeType===8?e.parentNode:e),Mt(function(){yl(t,s,n,r)}),s}function Sl(e,t,n,r,l){var i=n._reactRootContainer;if(i){var u=i;if(typeof l=="function"){var o=l;l=function(){var s=il(u);o.call(s)}}yl(t,u,e,l)}else u=Td(n,t,e,l,r);return il(u)}Rs=function(e){switch(e.tag){case 3:var t=e.stateNode;if(t.current.memoizedState.isDehydrated){var n=En(t.pendingLanes);n!==0&&(eu(t,n|1),ve(t,Y()),!(D&6)&&(cn=Y()+500,vt()))}break;case 13:Mt(function(){var r=Xe(e,1);if(r!==null){var l=ae();Me(r,e,1,l)}}),Ou(e,1)}};tu=function(e){if(e.tag===13){var t=Xe(e,134217728);if(t!==null){var n=ae();Me(t,e,134217728,n)}Ou(e,134217728)}};Os=function(e){if(e.tag===13){var t=ct(e),n=Xe(e,t);if(n!==null){var r=ae();Me(n,e,t,r)}Ou(e,t)}};Ms=function(){return F};Ds=function(e,t){var n=F;try{return F=e,t()}finally{F=n}};si=function(e,t,n){switch(t){case"input":if(ti(e,n),t=n.name,n.type==="radio"&&t!=null){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll("input[name="+JSON.stringify(""+t)+'][type="radio"]'),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var l=fl(r);if(!l)throw Error(x(90));ds(r),ti(r,l)}}}break;case"textarea":ms(e,n);break;case"select":t=n.value,t!=null&&Jt(e,!!n.multiple,t,!1)}};Ss=Pu;xs=Mt;var zd={usingClientEntryPoint:!1,Events:[tr,Qt,fl,ks,ws,Pu]},Sn={findFiberByHostInstance:Ct,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},Ld={bundleType:Sn.bundleType,version:Sn.version,rendererPackageName:Sn.rendererPackageName,rendererConfig:Sn.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:Ze.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return e=Cs(e),e===null?null:e.stateNode},findFiberByHostInstance:Sn.findFiberByHostInstance||Pd,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.3.1-next-f1338f8080-20240426"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var xr=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!xr.isDisabled&&xr.supportsFiber)try{ol=xr.inject(Ld),Ue=xr}catch{}}Se.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=zd;Se.createPortal=function(e,t){var n=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!Du(t))throw Error(x(200));return _d(e,t,null,n)};Se.createRoot=function(e,t){if(!Du(e))throw Error(x(299));var n=!1,r="",l=rc;return t!=null&&(t.unstable_strictMode===!0&&(n=!0),t.identifierPrefix!==void 0&&(r=t.identifierPrefix),t.onRecoverableError!==void 0&&(l=t.onRecoverableError)),t=Ru(e,1,!1,null,null,n,!1,r,l),e[Ye]=t.current,Hn(e.nodeType===8?e.parentNode:e),new Mu(t)};Se.findDOMNode=function(e){if(e==null)return null;if(e.nodeType===1)return e;var t=e._reactInternals;if(t===void 0)throw typeof e.render=="function"?Error(x(188)):(e=Object.keys(e).join(","),Error(x(268,e)));return e=Cs(t),e=e===null?null:e.stateNode,e};Se.flushSync=function(e){return Mt(e)};Se.hydrate=function(e,t,n){if(!wl(t))throw Error(x(200));return Sl(null,e,t,!0,n)};Se.hydrateRoot=function(e,t,n){if(!Du(e))throw Error(x(405));var r=n!=null&&n.hydratedSources||null,l=!1,i="",u=rc;if(n!=null&&(n.unstable_strictMode===!0&&(l=!0),n.identifierPrefix!==void 0&&(i=n.identifierPrefix),n.onRecoverableError!==void 0&&(u=n.onRecoverableError)),t=nc(t,null,e,1,n??null,l,!1,i,u),e[Ye]=t.current,Hn(e),r)for(e=0;e<r.length;e++)n=r[e],l=n._getVersion,l=l(n._source),t.mutableSourceEagerHydrationData==null?t.mutableSourceEagerHydrationData=[n,l]:t.mutableSourceEagerHydrationData.push(n,l);return new kl(t)};Se.render=function(e,t,n){if(!wl(t))throw Error(x(200));return Sl(null,e,t,!1,n)};Se.unmountComponentAtNode=function(e){if(!wl(e))throw Error(x(40));return e._reactRootContainer?(Mt(function(){Sl(null,null,e,!1,function(){e._reactRootContainer=null,e[Ye]=null})}),!0):!1};Se.unstable_batchedUpdates=Pu;Se.unstable_renderSubtreeIntoContainer=function(e,t,n,r){if(!wl(n))throw Error(x(200));if(e==null||e._reactInternals===void 0)throw Error(x(38));return Sl(e,t,n,!1,r)};Se.version="18.3.1-next-f1338f8080-20240426";function lc(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(lc)}catch(e){console.error(e)}}lc(),ls.exports=Se;var Rd=ls.exports,ic,Wo=Rd;ic=Wo.createRoot,Wo.hydrateRoot;const Od=new URLSearchParams(location.search),Ko=Od.get("token");Ko&&(sessionStorage.setItem("skillpot-token",Ko),history.replaceState(null,"",location.pathname));function Vi(){return sessionStorage.getItem("skillpot-token")??""}async function te(e,t={}){const n=await fetch(e,{method:t.method??"GET",headers:{"content-type":"application/json",...Vi()?{"x-skillpot-token":Vi()}:{}},body:t.body===void 0?void 0:JSON.stringify(t.body)}),r=await n.json().catch(()=>({}));if(!n.ok)throw new Error((r==null?void 0:r.error)??`HTTP ${n.status}`);return r}const Md=[{id:"all",label:"全部"},{id:"enabled",label:"已开放"},{id:"issue",label:"异常/漂移"}];function Dd(e){return e.enabled&&e.managed?"cell ok":e.enabled&&!e.actual?"cell warn":e.enabled&&e.actual&&!e.managed?"cell conflict":!e.enabled&&e.managed?"cell warn":!e.enabled&&e.actual?"cell conflict":"cell muted"}function Id(e){return e.enabled&&e.managed?"✓":e.enabled&&!e.actual?"⚠":e.enabled&&e.actual&&!e.managed||!e.enabled&&e.managed?"!":!e.enabled&&e.actual?"×":"·"}function Fd(e){return e.enabled&&e.managed?"已开放(symlink 受管)":e.enabled&&!e.actual?"漂移:声明开放但链接缺失,点击重建":e.enabled&&e.actual&&!e.managed?"冲突:被外部同名条目占用,点击也不生效":!e.enabled&&e.managed?"异常:已关闭但受管链接仍在,点击撤下":!e.enabled&&e.actual?"外部同名占用:非本工具创建,点击无效":"未开放,点击开放"}function $d({state:e,reload:t,toast:n,onOpenDetail:r}){const[l,i]=z.useState(null),[u,o]=z.useState(""),[s,f]=z.useState("all"),[v,h]=z.useState(20),{matrix:m}=e,S=z.useMemo(()=>{const a=u.trim().toLowerCase();return m.skills.filter(c=>{if(a&&!c.toLowerCase().includes(a))return!1;if(s==="all")return!0;const p=m.agents.map(g=>{var N;return(N=m.cells[c])==null?void 0:N[g.id]});return s==="enabled"?p.some(g=>g==null?void 0:g.enabled):p.some(g=>g&&(g.enabled&&!g.actual||g.enabled&&g.actual&&!g.managed||!g.enabled&&g.managed))})},[m,u,s]),w=z.useMemo(()=>S.slice(0,v),[S,v]),k=async(a,c)=>{if(l)return;const p=c?"开放":"关闭";if(window.confirm(`确认对该 Agent ${p}全部 skill?`)){i(`bulk:${a}`);try{const g=await te("/api/bulk",{method:"POST",body:{agent:a,enable:c}});n(`已${p} ${g.changed.length} 个 skill${g.skipped.length?`,跳过 ${g.skipped.length} 个`:""}`,g.changed.length===0),await t()}catch(g){n(g.message,!0)}finally{i(null)}}},O=async(a,c)=>{const p=`${a}@${c}`;if(!l){i(p);try{const g=await te("/api/toggle",{method:"POST",body:{skill:a,agent:c}});n(g.message,!g.ok),await t()}catch(g){n(g.message,!0)}finally{i(null)}}};return m.skills.length?d.jsxs("div",{className:"matrix-wrap",children:[d.jsxs("div",{className:"toolbar",children:[d.jsx("input",{className:"input grow",placeholder:"搜索 skill 名…",value:u,onChange:a=>{o(a.target.value),h(20)}}),d.jsx("div",{className:"segment",children:Md.map(a=>d.jsx("button",{className:s===a.id?"seg-btn active":"seg-btn",onClick:()=>{f(a.id),h(20)},children:a.label},a.id))}),d.jsxs("span",{className:"dim small",children:[S.length,"/",m.skills.length]})]}),d.jsxs("table",{className:"matrix",children:[d.jsx("thead",{children:d.jsxs("tr",{children:[d.jsx("th",{className:"skill-col",children:"Skill"}),m.agents.map(a=>d.jsxs("th",{className:a.installed?"":"agent-off",title:a.skillsDir,children:[d.jsx("div",{children:a.name}),!a.installed&&d.jsx("span",{className:"dim",children:"(未检测到)"}),d.jsxs("span",{className:"col-bulk",children:[d.jsx("button",{className:"bulk-btn",title:`对 ${a.name} 开放全部 skill`,disabled:l!==null,onClick:()=>k(a.id,!0),children:"全开"}),d.jsx("button",{className:"bulk-btn",title:`对 ${a.name} 关闭全部 skill`,disabled:l!==null,onClick:()=>k(a.id,!1),children:"全停"})]})]},a.id))]})}),d.jsx("tbody",{children:w.map(a=>{var c;return d.jsxs("tr",{children:[d.jsx("td",{className:"skill-name link",title:((c=e.skills[a])==null?void 0:c.source)??"",onClick:()=>r(a),children:a}),m.agents.map(p=>{var N;const g=(N=m.cells[a])==null?void 0:N[p.id];return g?d.jsx("td",{className:Dd(g)+(l===`${a}@${p.id}`?" busy":""),title:Fd(g),onClick:()=>O(a,p.id),children:Id(g)},p.id):d.jsx("td",{className:"cell muted",children:"·"},p.id)})]},a)})})]}),S.length>v&&d.jsx("div",{className:"load-more",children:d.jsxs("button",{className:"btn",onClick:()=>h(a=>a+20),children:["加载更多(已显示 ",v,"/",S.length,")"]})}),S.length===0&&d.jsx("p",{className:"dim",style:{textAlign:"center",marginTop:16},children:"没有匹配的 skill(换个关键词或切回「全部」)。"}),d.jsxs("p",{className:"legend",children:["✓ 已开放 ⚠ 漂移(声明开放但链接缺失) ! 链接状态异常 × 外部同名占用 · 未开放",d.jsx("span",{className:"dim",children:" · 点击单元格切换(重启示例会话后生效)"})]})]}):d.jsxs("div",{className:"empty",children:[d.jsx("p",{children:"中央仓库为空。"}),d.jsxs("p",{className:"dim",children:["运行 ",d.jsx("code",{children:"skillpot adopt"})," 收编各 Agent 已有 skill(",d.jsx("code",{children:"--move"})," 为移动模式), 或 ",d.jsx("code",{children:"skillpot add"})," 安装。安装后即可在此切换开关。"]})]})}const Ud={error:"错误",warn:"警告",info:"提示"},Ad={resync:"自动修复:重新同步 symlink","drop-ledger":"自动修复:清理失效台账",adopt:"需人工确认:运行 skillpot adopt 收编"};function Vd({rev:e,toast:t}){const[n,r]=z.useState(null),[l,i]=z.useState(!1),u=z.useCallback(()=>{te("/api/doctor").then(f=>r(f.issues)).catch(f=>t(f.message,!0))},[t]);z.useEffect(()=>{u()},[u,e]);const o=async()=>{if(!l){i(!0);try{const f=await te("/api/doctor/fix",{method:"POST"});r(f.remaining),f.fixed.length?t(`已修复 ${f.fixed.length} 项`):t("没有可自动修复的项")}catch(f){t(f.message,!0)}finally{i(!1)}}};if(!n)return d.jsx("div",{className:"loading",children:"体检中…"});const s=n.filter(f=>f.fix&&f.fix!=="adopt").length;return d.jsxs("div",{className:"doctor",children:[d.jsxs("div",{className:"doctor-head",children:[d.jsx("h2",{children:n.length===0?"✓ 未发现问题":`发现 ${n.length} 个问题(错误 ${n.filter(f=>f.level==="error").length} / 警告 ${n.filter(f=>f.level==="warn").length})`}),n.length>0&&d.jsx("button",{className:"btn",onClick:o,disabled:l||s===0,children:l?"修复中…":s>0?`全部修复(${s} 项可自动修复)`:"无可自动修复项"})]}),n.length===0?d.jsx("p",{className:"dim",children:"config、中央仓库与各 Agent 目录三方一致。enable/disable 后记得重启示例会话。"}):d.jsx("ul",{className:"issue-list",children:n.map((f,v)=>d.jsxs("li",{className:`issue level-${f.level}`,children:[d.jsx("span",{className:`badge badge-${f.level}`,children:Ud[f.level]}),d.jsx("span",{className:"issue-msg",children:f.message}),f.fix&&d.jsxs("span",{className:"fix-hint",children:["(",Ad[f.fix],")"]})]},v))})]})}const Bd={imported:"已导入",linked:"已链接(move)",exists:"同名跳过","skipped-managed":"已受管","skipped-invalid":"跳过","dry-run":"待收编"},Hd={"up-to-date":"= 已是最新",outdated:"↑ 有更新",updated:"✔ 已更新",local:"· 本地来源",error:"✗ 失败"},Qd=[{key:"imported",label:"导入"},{key:"linked",label:"链接"},{key:"exists",label:"同名跳过"},{key:"skipped",label:"其他跳过"}];function Wd({rev:e,reload:t,toast:n}){const[r,l]=z.useState(null),[i,u]=z.useState(new Set),[o,s]=z.useState(!0),[f,v]=z.useState(!1),[h,m]=z.useState(!1),[S,w]=z.useState(null),[k,O]=z.useState(""),a=(E,C)=>`${E}\0${C}`,c=z.useCallback(()=>{te("/api/adopt").then(E=>{l(E.agents),u(new Set(E.agents.flatMap(C=>C.skills.filter(I=>I.valid).map(I=>a(C.id,I.name)))))}).catch(E=>n(E.message,!0))},[n]);z.useEffect(()=>{c()},[c,e]);const p=k.trim().toLowerCase(),g=r===null?null:r.map(E=>({...E,skills:E.skills.filter(C=>!p||C.name.toLowerCase().includes(p)||C.path.toLowerCase().includes(p))})),N=(g??[]).reduce((E,C)=>E+C.skills.length,0),T=E=>{u(C=>{const I=new Set(C);return I.has(E)?I.delete(E):I.add(E),I})},_=async()=>{if(h||!r)return;const E=r.flatMap(C=>C.skills.filter(I=>i.has(a(C.id,I.name))).map(I=>({agent:C.id,name:I.name})));if(!E.length){n("没有勾选任何可收编项",!0);return}m(!0);try{const C=await te("/api/adopt",{method:"POST",body:{picks:E,move:o,enableFor:f?[...new Set(E.map(I=>I.agent))]:[]}});w(C),n(`收编完成:导入 ${C.imported}、链接 ${C.linked}`),await t(),c()}catch(C){n(C.message,!0)}finally{m(!1)}};if(!r)return d.jsx("div",{className:"loading",children:"扫描各 Agent 目录中…"});const P=r.reduce((E,C)=>E+C.skills.length,0);return d.jsxs("div",{className:"panel",children:[d.jsxs("div",{className:"doctor-head",children:[d.jsxs("h2",{children:["收编已有 skill",P>0?`(发现 ${P} 个)`:""]}),d.jsx("button",{className:"btn",onClick:_,disabled:h||P===0||i.size===0,children:h?"收编中…":`收编勾选项(${i.size})`})]}),P>0&&d.jsxs("div",{className:"toolbar",children:[d.jsx("input",{className:"input grow",placeholder:"搜索名称 / 路径…",value:k,onChange:E=>O(E.target.value)}),d.jsxs("span",{className:"dim small",children:[N,"/",P]})]}),d.jsxs("div",{className:"form-row options",children:[d.jsxs("label",{className:"pick",children:[d.jsx("input",{type:"checkbox",checked:o,onChange:E=>s(E.target.checked)}),"移动模式(内容拷入后,原目录替换为 symlink,来源 Agent 继续可用)"]}),d.jsxs("label",{className:"pick",children:[d.jsx("input",{type:"checkbox",checked:f,onChange:E=>v(E.target.checked)}),"收编后开放给其来源 Agent"]})]}),P===0?d.jsx("p",{className:"dim",children:"各已安装 Agent 的 skills 目录下没有可收编的真实目录(受管 symlink 与外部链接会自动跳过)。"}):g.filter(E=>E.skills.length>0).map(E=>d.jsxs("div",{className:"adopt-group",children:[d.jsx("div",{className:"adopt-agent",children:E.name}),E.skills.map(C=>{const I=a(E.id,C.name);return d.jsxs("label",{className:C.valid?"adopt-item":"adopt-item off",children:[d.jsx("input",{type:"checkbox",disabled:!C.valid,checked:i.has(I),onChange:()=>T(I)}),d.jsx("span",{className:"mono",children:C.name}),d.jsx("span",{className:"dim small path",children:C.path}),C.inStore&&d.jsx("span",{className:"badge badge-warn",children:"仓库已有同名,move 时替换为 symlink"}),!C.valid&&d.jsx("span",{className:"badge badge-error",children:"目录名不合法"})]},I)})]},E.id)),S&&d.jsxs("div",{className:"result-box",children:[d.jsxs("div",{className:"result-title",children:["收编完成:",Qd.map(E=>`${E.label} ${S[E.key]}`).join(" · ")]}),S.items.filter(E=>E.detail&&E.status!=="imported"&&E.status!=="linked").map((E,C)=>d.jsxs("div",{className:"dim small",children:[E.agent,"/",E.name,":",Bd[E.status],E.detail?` — ${E.detail}`:""]},C))]})]})}function Kd({agents:e,reload:t,toast:n}){const[r,l]=z.useState(""),[i,u]=z.useState(""),[o,s]=z.useState(new Set),[f,v]=z.useState(!1),[h,m]=z.useState(null),S=k=>{s(O=>{const a=new Set(O);return a.has(k)?a.delete(k):a.add(k),a})},w=async()=>{if(!f){v(!0),m(null);try{const k=await te("/api/add",{method:"POST",body:{source:r.trim(),name:i.trim()||void 0,for:[...o]}});m(k),n(`已安装 ${k.name}`),l(""),u(""),await t()}catch(k){n(k.message,!0)}finally{v(!1)}}};return d.jsxs("div",{className:"panel",children:[d.jsx("h2",{children:"安装 skill"}),d.jsxs("p",{className:"dim",children:["本地目录或 git URL(支持 ",d.jsx("code",{children:"repo#subdir"})," 定位子目录)。安装后内容拷入中央仓库, 默认不对任何 Agent 开放。"]}),d.jsx("div",{className:"form-row",children:d.jsx("input",{className:"input grow",placeholder:"~/path/to/my-skill 或 https://github.com/owner/skills.git#subdir",value:r,onChange:k=>l(k.target.value)})}),d.jsxs("div",{className:"form-row",children:[d.jsx("input",{className:"input",style:{width:220},placeholder:"skill 名(可选)",value:i,onChange:k=>u(k.target.value)}),d.jsx("div",{className:"agent-picker",children:e.map(k=>d.jsxs("label",{className:k.installed?"pick":"pick off",children:[d.jsx("input",{type:"checkbox",disabled:!k.installed,checked:o.has(k.id),onChange:()=>S(k.id)}),k.name]},k.id))})]}),d.jsx("button",{className:"btn",onClick:w,disabled:f||!r.trim(),children:f?"安装中…(git 来源需克隆,可能稍慢)":"安装"}),h&&d.jsxs("div",{className:"result-box",children:[d.jsxs("div",{className:"result-title",children:["✔ ",h.name]}),h.description&&d.jsx("div",{className:"dim",children:h.description.slice(0,160)}),d.jsxs("div",{className:"dim mono small",children:["source: ",h.source," · checksum: ",h.checksum.slice(0,18),"…"]}),h.enabled.length>0&&d.jsxs("div",{children:["已开放给:",h.enabled.join("、")]}),h.skipped.map((k,O)=>d.jsxs("div",{className:"warn-text",children:["⚠ ",k.agent,": ",k.reason]},O)),h.lint.length>0&&d.jsxs("div",{className:"lint-box",children:[d.jsxs("div",{className:"dim",children:["安装即体检,发现 ",h.lint.length," 个问题:"]}),h.lint.map((k,O)=>d.jsxs("div",{className:k.level==="error"?"warn-text":"dim",children:[k.level==="error"?"✗":"⚠"," ",k.message]},O))]})]})]})}const Yd=e=>e.startsWith("git:");function Xd({skills:e,reload:t,toast:n,onOpenDetail:r}){const[l,i]=z.useState(null),[u,o]=z.useState(!1),[s,f]=z.useState(null),[v,h]=z.useState(""),m=v.trim().toLowerCase(),S=e.filter(a=>!m||a.name.toLowerCase().includes(m)||a.source.toLowerCase().includes(m)),w=async()=>{if(!u){o(!0);try{const a=await te("/api/update",{method:"POST",body:{check:!0}});i(a.results),await t()}catch(a){n(a.message,!0)}finally{o(!1)}}},k=async a=>{if(!s){f(a);try{const c=await te("/api/update",{method:"POST",body:{skill:a,check:!1}});i(p=>p?p.map(g=>c.results.find(N=>N.skill===a)??g):c.results),n(`${a} 更新操作完成`),await t()}catch(c){n(c.message,!0)}finally{f(null)}}},O=a=>l==null?void 0:l.find(c=>c.skill===a);return e.length?d.jsxs("div",{className:"panel",children:[d.jsxs("div",{className:"doctor-head",children:[d.jsx("h2",{children:"维护"}),d.jsx("button",{className:"btn",onClick:w,disabled:u,children:u?"检查中…(需克隆远端,可能稍慢)":"检查更新(git 来源)"})]}),d.jsx("p",{className:"dim",children:"git 来源的 skill 可原位更新(symlink 指向不变,无需重连);本地来源跳过。点击 skill 名查看详情与卸载。"}),e.length>0&&d.jsxs("div",{className:"toolbar",children:[d.jsx("input",{className:"input grow",placeholder:"搜索名称 / 来源…",value:v,onChange:a=>h(a.target.value)}),d.jsxs("span",{className:"dim small",children:[S.length,"/",e.length]})]}),d.jsxs("table",{className:"matrix update-table",children:[d.jsx("thead",{children:d.jsxs("tr",{children:[d.jsx("th",{className:"skill-col",children:"Skill"}),d.jsx("th",{children:"来源"}),d.jsx("th",{children:"状态"}),d.jsx("th",{children:"操作"})]})}),d.jsx("tbody",{children:S.map(a=>{const c=O(a.name),p=Yd(a.source);return d.jsxs("tr",{children:[d.jsx("td",{className:"skill-name link",onClick:()=>r(a.name),children:a.name}),d.jsx("td",{className:"dim small mono src",title:a.source,children:a.source}),d.jsxs("td",{className:(c==null?void 0:c.status)==="outdated"?"warn-text":"",children:[c?Hd[c.status]:"—",(c==null?void 0:c.diff)&&d.jsxs("span",{className:"dim small",children:[" ","diff +",c.diff.added.length," ~",c.diff.modified.length," -",c.diff.removed.length]}),(c==null?void 0:c.detail)&&d.jsxs("span",{className:"dim small",children:[" ",c.detail]})]}),d.jsx("td",{children:p?d.jsx("button",{className:"btn small-btn",disabled:s!==null||(c==null?void 0:c.status)!=="outdated",onClick:()=>k(a.name),title:(c==null?void 0:c.status)==="outdated"?"应用更新":"先检查更新",children:s===a.name?"更新中…":"更新"}):d.jsx("span",{className:"dim small",children:"—"})})]},a.name)})})]})]}):d.jsxs("div",{className:"panel",children:[d.jsx("h2",{children:"维护"}),d.jsx("p",{className:"dim",children:"中央仓库为空。先安装或收编 skill。"})]})}const Nr=20;function Gd({rev:e,reload:t,toast:n}){const[r,l]=z.useState(null),[i,u]=z.useState(""),[o,s]=z.useState(null),[f,v]=z.useState(!1),[h,m]=z.useState(""),[S,w]=z.useState(null),[k,O]=z.useState(!1),[a,c]=z.useState(""),[p,g]=z.useState(""),[N,T]=z.useState(""),[_,P]=z.useState(Nr),E=z.useCallback(async()=>{const y=await te("/api/market/sources");return l(y.sources),y.sources},[]),C=z.useCallback(async(y,L=!1)=>{v(!0),s(null),P(Nr);try{const R=await te(`/api/market/scan?url=${encodeURIComponent(y)}${L?"&refresh=1":""}`);s(R.skills),m(R.cloned?"已重新克隆":"来自本地缓存")}catch(R){n(R.message,!0),s([])}finally{v(!1)}},[n]);z.useEffect(()=>{E().then(y=>{y.length&&u(y[0].url)}).catch(y=>n(y.message,!0))},[]),z.useEffect(()=>{i&&C(i)},[i,C,e]);const I=y=>{y!==i&&u(y)},gt=async()=>{if(a.trim())try{const y=await te("/api/market/sources/add",{method:"POST",body:{url:a.trim(),name:p.trim()||void 0}});n(`已添加源 ${y.source.name}`),c(""),g(""),O(!1);const L=await E();u(y.source.url)}catch(y){n(y.message,!0)}},yt=async y=>{if(window.confirm("确认移除该自定义源?(不会卸载已安装的 skill)"))try{await te("/api/market/sources/remove",{method:"POST",body:{url:y}});const L=await E();i===y&&u(L.length?L[0].url:""),n("已移除源")}catch(L){n(L.message,!0)}},rr=async y=>{if(!S){w(y.subdir);try{const L=await te("/api/market/install",{method:"POST",body:{url:i,subdir:y.subdir}});n(`已安装 ${L.name}`),s(R=>R&&R.map(U=>U.subdir===y.subdir?{...U,installed:!0}:U)),await t()}catch(L){n(L.message,!0)}finally{w(null)}}},kt=z.useMemo(()=>{const y=N.trim().toLowerCase();return y?(o??[]).filter(L=>L.name.toLowerCase().includes(y)||L.description.toLowerCase().includes(y)||L.subdir.toLowerCase().includes(y)):o??[]},[o,N]),Ft=z.useMemo(()=>kt.slice(0,_),[kt,_]);if(!r)return d.jsx("div",{className:"loading",children:"加载源…"});const wt=r.find(y=>y.url===i);return d.jsxs("div",{className:"panel",children:[d.jsxs("div",{className:"doctor-head",children:[d.jsx("h2",{children:"市场"}),d.jsx("button",{className:"btn",onClick:()=>O(y=>!y),children:k?"取消":"添加源"})]}),k&&d.jsxs("div",{className:"form-row",children:[d.jsx("input",{className:"input grow",placeholder:"git 仓库地址,如 https://github.com/owner/skills.git",value:a,onChange:y=>c(y.target.value)}),d.jsx("input",{className:"input",style:{width:160},placeholder:"名称(可选)",value:p,onChange:y=>g(y.target.value)}),d.jsx("button",{className:"btn",onClick:gt,disabled:!a.trim(),children:"确定"})]}),d.jsxs("div",{className:"form-row",children:[r.map(y=>d.jsxs("button",{className:y.url===i?"seg-btn active":"seg-btn",onClick:()=>I(y.url),title:y.url,children:[y.name,y.builtin&&d.jsx("span",{className:"dim",children:"(内置)"})]},y.url)),wt&&!wt.builtin&&d.jsx("button",{className:"seg-btn danger-btn",onClick:()=>yt(wt.url),children:"移除此源"})]}),d.jsxs("div",{className:"form-row",style:{justifyContent:"space-between"},children:[d.jsx("span",{className:"dim small mono",children:i}),d.jsx("button",{className:"btn small-btn",onClick:()=>C(i,!0),disabled:f,children:f?"克隆/扫描中…(首次较慢)":"刷新"})]}),d.jsxs("div",{className:"toolbar",children:[d.jsx("input",{className:"input grow",placeholder:"搜索名称 / 说明 / 子目录…",value:N,onChange:y=>{T(y.target.value),P(Nr)}}),d.jsx("span",{className:"dim small",children:f?"扫描中…":`${kt.length}/${(o??[]).length} · ${h}`})]}),o?o.length===0?d.jsx("p",{className:"dim",children:"该仓库中没有找到 SKILL.md 目录。"}):d.jsxs(d.Fragment,{children:[Ft.length===0?d.jsx("p",{className:"dim",children:"没有匹配的 skill(换个关键词试试)。"}):d.jsxs("table",{className:"matrix update-table",children:[d.jsx("thead",{children:d.jsxs("tr",{children:[d.jsx("th",{className:"skill-col",children:"Skill"}),d.jsx("th",{children:"说明"}),d.jsx("th",{children:"子目录"}),d.jsx("th",{children:"操作"})]})}),d.jsx("tbody",{children:Ft.map(y=>d.jsxs("tr",{children:[d.jsx("td",{className:"skill-name",children:y.name}),d.jsx("td",{className:"dim small",children:y.description.slice(0,90)}),d.jsx("td",{className:"dim small mono",children:y.subdir}),d.jsx("td",{children:y.installed?d.jsx("span",{className:"dim small",children:"已安装"}):d.jsx("button",{className:"btn small-btn",disabled:S!==null,onClick:()=>rr(y),children:S===y.subdir?"安装中…":"安装"})})]},y.subdir))})]}),kt.length>_&&d.jsx("div",{className:"load-more",children:d.jsxs("button",{className:"btn",onClick:()=>P(y=>y+Nr),children:["加载更多(已显示 ",_,"/",kt.length,")"]})}),d.jsx("p",{className:"legend",children:"安装 = 拷贝进中央仓库,默认不对任何 Agent 开放(去「开关矩阵」打勾或安装时先收着)。 官方源中 docx/pdf/pptx/xlsx 为 source-available 许可,使用前请阅原仓库说明。"})]}):null]})}function Zd({skill:e,onClose:t,reload:n,toast:r}){var f;const[l,i]=z.useState(null),[u,o]=z.useState(!1);z.useEffect(()=>{te(`/api/skill/${encodeURIComponent(e)}`).then(i).catch(v=>{r(v.message,!0),t()})},[e]);const s=async()=>{if(!u&&window.confirm(`确认卸载 ${e}?将撤下所有 Agent 的链接并删除中央仓库内容,不可恢复。`)){o(!0);try{await te("/api/remove",{method:"POST",body:{skill:e}}),r(`已卸载 ${e}`),await n(),t()}catch(v){r(v.message,!0),o(!1)}}};return d.jsx("div",{className:"modal-mask",onClick:t,children:d.jsxs("div",{className:"modal",onClick:v=>v.stopPropagation(),children:[d.jsxs("div",{className:"modal-head",children:[d.jsx("h2",{children:e}),d.jsxs("div",{className:"modal-actions",children:[d.jsx("button",{className:"btn danger",onClick:s,disabled:u,children:u?"卸载中…":"卸载"}),d.jsx("button",{className:"tab",onClick:t,children:"关闭"})]})]}),l?d.jsxs(d.Fragment,{children:[((f=l.meta)==null?void 0:f.description)&&d.jsx("p",{children:l.meta.description}),l.lint.length>0&&d.jsxs("div",{className:"lint-box",children:[d.jsxs("div",{className:"dim",children:["lint:",l.lint.length," 个问题"]}),l.lint.map((v,h)=>d.jsxs("div",{className:v.level==="error"?"warn-text":"dim",children:[v.level==="error"?"✗":"⚠"," ",v.message]},h))]}),d.jsxs("div",{className:"detail-files",children:[d.jsxs("div",{className:"dim",children:["文件(",l.files.length,")"]}),d.jsx("div",{className:"file-list mono small",children:l.files.map(v=>d.jsx("div",{children:v},v))})]}),d.jsx("pre",{className:"skill-md",children:l.skillMd})]}):d.jsx("div",{className:"loading",children:"加载详情…"})]})})}const Jd=[{id:"matrix",label:"开关矩阵"},{id:"doctor",label:"体检"},{id:"adopt",label:"收编"},{id:"add",label:"安装"},{id:"market",label:"市场"},{id:"update",label:"维护"}];function qd(){const[e,t]=z.useState("matrix"),[n,r]=z.useState(null),[l,i]=z.useState([]),[u,o]=z.useState(null),[s,f]=z.useState(0),v=z.useRef(void 0),h=z.useCallback((w,k=!1)=>{const O=Date.now()+Math.random();i(a=>[...a,{id:O,text:w,bad:k}]),setTimeout(()=>i(a=>a.filter(c=>c.id!==O)),4e3)},[]),m=z.useCallback(()=>te("/api/state").then(r).catch(w=>h(w.message,!0)),[h]);z.useEffect(()=>{m()},[m]),z.useEffect(()=>{const w=Vi(),k=new EventSource("/api/events"+(w?`?token=${encodeURIComponent(w)}`:""));return k.onmessage=()=>{window.clearTimeout(v.current),v.current=window.setTimeout(()=>{f(O=>O+1),m()},150)},()=>k.close()},[m]);const S=n?Object.keys(n.skills).length:0;return d.jsxs("div",{className:"app",children:[d.jsxs("header",{className:"topbar",children:[d.jsxs("div",{className:"brand",children:["🍲 SkillPot ",d.jsxs("span",{className:"ver",children:["v",(n==null?void 0:n.version)??"…"]})]}),d.jsx("nav",{className:"tabs",children:Jd.map(w=>d.jsx("button",{className:e===w.id?"tab active":"tab",onClick:()=>t(w.id),children:w.label},w.id))}),d.jsxs("div",{className:"meta",children:[S," 个 skill · 中央仓库 ~/.skillpot"]})]}),d.jsx("main",{className:"content",children:n?e==="matrix"?d.jsx($d,{state:n,reload:m,toast:h,onOpenDetail:o}):e==="doctor"?d.jsx(Vd,{rev:s,toast:h}):e==="adopt"?d.jsx(Wd,{rev:s,reload:m,toast:h}):e==="add"?d.jsx(Kd,{agents:n.matrix.agents,reload:m,toast:h}):e==="market"?d.jsx(Gd,{rev:s,reload:m,toast:h}):d.jsx(Xd,{skills:Object.entries(n.skills).map(([w,k])=>({name:w,source:k.source})).sort((w,k)=>w.name.localeCompare(k.name)),reload:m,toast:h,onOpenDetail:o}):d.jsx("div",{className:"loading",children:"加载中…(首次会探测本机 Agent,可能需要数秒)"})}),u&&d.jsx(Zd,{skill:u,onClose:()=>o(null),reload:m,toast:h}),d.jsx("div",{className:"toasts",children:l.map(w=>d.jsx("div",{className:w.bad?"toast bad":"toast",children:w.text},w.id))})]})}ic(document.getElementById("root")).render(d.jsx(qd,{}));
|
package/dist/gui/index.html
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
<meta charset="UTF-8" />
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
6
|
<title>SkillPot 控制台</title>
|
|
7
|
-
<script type="module" crossorigin src="/assets/index-
|
|
7
|
+
<script type="module" crossorigin src="/assets/index-DN1MQ9V0.js"></script>
|
|
8
8
|
<link rel="stylesheet" crossorigin href="/assets/index-D5a5y70Q.css">
|
|
9
9
|
</head>
|
|
10
10
|
<body>
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tec-explorer/skillpot",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.8.0",
|
|
4
4
|
"description": "Cross-agent skill manager: install once, expose per coding agent (Claude Code / ZCode / Codex / OpenCode / Gemini CLI / DeepSeek CLI / Cursor).",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|